diff --git a/app/src/main/java/uk/org/openseizuredetector/BLEScanActivity.java b/app/src/main/java/uk/org/openseizuredetector/BLEScanActivity.java index 35e440a..c7c4667 100644 --- a/app/src/main/java/uk/org/openseizuredetector/BLEScanActivity.java +++ b/app/src/main/java/uk/org/openseizuredetector/BLEScanActivity.java @@ -80,7 +80,7 @@ public class BLEScanActivity extends ListActivity { // Stops scanning after 10 seconds. private static final long SCAN_PERIOD = 10000; - private int okColour = Color.BLUE; + private int okColour = Color.parseColor("#9B59B6"); private int warnColour = Color.MAGENTA; private int alarmColour = Color.RED; private int okTextColour = Color.WHITE; diff --git a/app/src/main/java/uk/org/openseizuredetector/FragmentOsdBaseClass.java b/app/src/main/java/uk/org/openseizuredetector/FragmentOsdBaseClass.java index 91df850..49df3e8 100644 --- a/app/src/main/java/uk/org/openseizuredetector/FragmentOsdBaseClass.java +++ b/app/src/main/java/uk/org/openseizuredetector/FragmentOsdBaseClass.java @@ -26,7 +26,7 @@ public class FragmentOsdBaseClass extends Fragment { Timer mUiTimer; protected View mRootView; - protected int okColour = Color.BLUE; + protected int okColour = Color.parseColor("#9B59B6"); protected int warnColour = Color.MAGENTA; protected int alarmColour = Color.RED; protected int okTextColour = Color.WHITE; diff --git a/app/src/main/java/uk/org/openseizuredetector/MainActivity.java b/app/src/main/java/uk/org/openseizuredetector/MainActivity.java index 7a09e35..eb366dd 100644 --- a/app/src/main/java/uk/org/openseizuredetector/MainActivity.java +++ b/app/src/main/java/uk/org/openseizuredetector/MainActivity.java @@ -73,7 +73,7 @@ import java.util.TimerTask; public class MainActivity extends AppCompatActivity { static final String TAG = "MainActivity"; - private int okColour = Color.BLUE; + private int okColour = Color.parseColor("#9B59B6"); private int warnColour = Color.MAGENTA; private int alarmColour = Color.RED; private int okTextColour = Color.WHITE; diff --git a/app/src/main/java/uk/org/openseizuredetector/MainActivity2.java b/app/src/main/java/uk/org/openseizuredetector/MainActivity2.java index 511c39a..575dec9 100644 --- a/app/src/main/java/uk/org/openseizuredetector/MainActivity2.java +++ b/app/src/main/java/uk/org/openseizuredetector/MainActivity2.java @@ -37,7 +37,7 @@ import java.util.TimerTask; public class MainActivity2 extends AppCompatActivity { private String TAG = "MainActivity2"; - private int okColour = Color.BLUE; + private int okColour = Color.parseColor("#9B59B6"); private int warnColour = Color.MAGENTA; private int alarmColour = Color.RED; private int okTextColour = Color.WHITE; diff --git a/app/src/main/java/uk/org/openseizuredetector/SdData.java b/app/src/main/java/uk/org/openseizuredetector/SdData.java index e481fa8..44501e0 100644 --- a/app/src/main/java/uk/org/openseizuredetector/SdData.java +++ b/app/src/main/java/uk/org/openseizuredetector/SdData.java @@ -146,6 +146,7 @@ public class SdData implements Parcelable { // 2 = contact detected // 3 = reserved/unknown public int mHrSensorContactStatus = -1; + public long mHRTimestamp = System.currentTimeMillis(); public boolean mO2SatAlarmStanding = false; public boolean mO2SatFaultStanding = false; diff --git a/app/src/main/java/uk/org/openseizuredetector/SdDataSourceBLE2.java b/app/src/main/java/uk/org/openseizuredetector/SdDataSourceBLE2.java index fb41455..150b3a1 100644 --- a/app/src/main/java/uk/org/openseizuredetector/SdDataSourceBLE2.java +++ b/app/src/main/java/uk/org/openseizuredetector/SdDataSourceBLE2.java @@ -363,6 +363,7 @@ public class SdDataSourceBLE2 extends SdDataSource { Log.v(TAG,"onCharacteristicUpdate() - Characteristic "+charUuidStr+" updated"); if (charUuidStr.equals(CHAR_HEART_RATE_MEASUREMENT)) { + Log.v(TAG, "HR Measurement"); int flags = parser.getUInt8(); @@ -395,6 +396,17 @@ public class SdDataSourceBLE2 extends SdDataSource { + ", stored=" + mSdData.mHR + ", contactStatus=" + sensorContactStatus + ", notificationCount=" + mSdData.mHrNotificationCount); + Log.v(TAG, String.format("%s", "HR Measurement")); + // Parse the flags + int flags = parser.getUInt8(); + final int unit = flags & 0x01; + final int sensorContactStatus = (flags & 0x06) >> 1; + final boolean energyExpenditurePresent = (flags & 0x08) > 0; + final boolean rrIntervalPresent = (flags & 0x10) > 0; + // Parse heart rate + mSdData.mHR = (unit == 0) ? parser.getUInt8() : parser.getUInt16(); + mSdData.mHRTimestamp = System.currentTimeMillis(); + Log.d(TAG,"Received HR="+mSdData.mHR); } else if (charUuidStr.equals(CHAR_OSD_ACC_DATA) || charUuidStr.equals(CHAR_INFINITIME_ACC_DATA)) { diff --git a/app/src/main/java/uk/org/openseizuredetector/SensorValidationActivity.java b/app/src/main/java/uk/org/openseizuredetector/SensorValidationActivity.java index 90253f7..59fd09e 100644 --- a/app/src/main/java/uk/org/openseizuredetector/SensorValidationActivity.java +++ b/app/src/main/java/uk/org/openseizuredetector/SensorValidationActivity.java @@ -95,6 +95,8 @@ public class SensorValidationActivity extends AppCompatActivity { private long currentHrLastUpdateMillisInSecond = 0; private int currentHrRawValue = -1; private int currentHrSensorContactStatus = -1; + private long lastHrTimestamp = 0; + private final ArrayList hrPoints = new ArrayList<>(); private long hrStartNotificationCount = 0; private long hrLastSeenNotificationCount = -1; @@ -558,7 +560,18 @@ private final ArrayList hrPoints = new ArrayList<>(); currentHrLastSeenNotificationCount = hrLastSeenNotificationCount; } +<<<<<<< HEAD SdData sdData = mConnection.mSdServer.mSdData; +======= + long hrTs = mConnection.mSdServer.mSdData.mHRTimestamp; + double hr = mConnection.mSdServer.mSdData.mHR; + currentHrReadCount++; + if (hr >= 0.0 && hrTs != lastHrTimestamp) { + lastHrTimestamp = hrTs; + currentHrSum += hr; + currentHrValidCount++; + } +>>>>>>> c175730 (Cosmetic changes) currentHrReadCount++; diff --git a/app/src/main/java/uk/org/openseizuredetector/StartupActivity.java b/app/src/main/java/uk/org/openseizuredetector/StartupActivity.java index e2a45d6..537c8dd 100644 --- a/app/src/main/java/uk/org/openseizuredetector/StartupActivity.java +++ b/app/src/main/java/uk/org/openseizuredetector/StartupActivity.java @@ -66,7 +66,7 @@ import java.util.TimerTask; */ public class StartupActivity extends AppCompatActivity { private static String TAG = "StartupActivity"; - private int okColour = Color.BLUE; + private int okColour = Color.parseColor("#9B59B6"); private int warnColour = Color.MAGENTA; private int alarmColour = Color.RED; private int okTextColour = Color.WHITE; diff --git a/app/src/main/res/drawable/progress_bar_blue.xml b/app/src/main/res/drawable/progress_bar_blue.xml index 3d272e2..a79c148 100644 --- a/app/src/main/res/drawable/progress_bar_blue.xml +++ b/app/src/main/res/drawable/progress_bar_blue.xml @@ -20,10 +20,10 @@ diff --git a/app/src/main/res/drawable/star_of_life_48x48.png b/app/src/main/res/drawable/star_of_life_48x48.png index 9c0ecb7..3d4d1ed 100644 Binary files a/app/src/main/res/drawable/star_of_life_48x48.png and b/app/src/main/res/drawable/star_of_life_48x48.png differ diff --git a/app/src/main/res/layout/activity_authenticate.xml b/app/src/main/res/layout/activity_authenticate.xml index 3f051ab..032def9 100644 --- a/app/src/main/res/layout/activity_authenticate.xml +++ b/app/src/main/res/layout/activity_authenticate.xml @@ -139,7 +139,7 @@ android:orientation="horizontal"> - - #3F51B5 - #303F9F + #9B59B6 + #9B59B6 #FF4081 - #0000ff + #9B59B6 #ffffff diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 999bda9..122a414 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,6 +1,6 @@ - OpenSeizureDetector + FLOGA "\n \nV4.3.1 - Fixed user interface issues on Android-15 and Android-16