diff --git a/CHANGELOG.md b/CHANGELOG.md index 31c08fc..3272da7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,8 @@ OpenSeizureDetector Android App - Change Log ============================================ + V4.2.3c - Uses 3d accelerometer data to calculate magnitude if vector magnitude is not sent from data source. + V4.2.3b - fixed latched alarms (Issue #146) V4.2.2 - Added support for PineTime OSD Status reporting. V4.2.1 - Added support for PineTime wathes using the Bluetooth Data Source V4.1.0 - Added experimental support for neural network based seizure detector. diff --git a/app/release/app-release-4.2.3b.apk b/app/release/app-release-4.2.3b.apk new file mode 100644 index 0000000..ca78d6e Binary files /dev/null and b/app/release/app-release-4.2.3b.apk differ diff --git a/app/src/main/java/uk/org/openseizuredetector/SdServer.java b/app/src/main/java/uk/org/openseizuredetector/SdServer.java index 44bdb49..48845a4 100644 --- a/app/src/main/java/uk/org/openseizuredetector/SdServer.java +++ b/app/src/main/java/uk/org/openseizuredetector/SdServer.java @@ -675,7 +675,7 @@ public class SdServer extends Service implements SdDataReceiver { mUtil.showToast(getString(R.string.SMSAlarmDisabledNotSendingMsg)); Log.v(TAG, "mSMSAlarm is false - not sending"); } - + Log.v(TAG,"calling startLatchTimer()"); startLatchTimer(); } // Handle fall alarm @@ -782,7 +782,6 @@ public class SdServer extends Service implements SdDataReceiver { } } - // Fault if ((sdData.alarmState) == 4 || (sdData.alarmState == 7) || (sdData.mHRFaultStanding) || (sdData.mHrFrozenFaultStanding)) { sdData.alarmPhrase = "FAULT"; @@ -1007,15 +1006,20 @@ public class SdServer extends Service implements SdDataReceiver { private void startLatchTimer() { if (mLatchAlarms) { if (mLatchAlarmTimer != null) { - Log.v(TAG, "startLatchTimer -timer already running - cancelling it"); + Log.i(TAG, "startLatchTimer -timer already running - cancelling it"); mLatchAlarmTimer.cancel(); mLatchAlarmTimer = null; } - Log.v(TAG, "startLatchTimer() - starting alarm latch release timer to time out in " + mLatchAlarmPeriod + " sec"); + Log.i(TAG, "startLatchTimer() - starting alarm latch release timer to time out in " + mLatchAlarmPeriod + " sec"); // set timer to timeout after mLatchAlarmPeriod, and Tick() function to be called every second. - mLatchAlarmTimer = - new LatchAlarmTimer(mLatchAlarmPeriod * 1000, 1000); - mLatchAlarmTimer.start(); + // We need to start the timer on the UI thread to get it to work for some reason - I don't know why! + runOnUiThread(new Runnable() { + public void run() { + mLatchAlarmTimer = + new LatchAlarmTimer(mLatchAlarmPeriod * 1000, 1000); + mLatchAlarmTimer.start(); + } + }); } else { Log.v(TAG, "startLatchTimer() - Latch Alarms disabled - not doing anything"); } @@ -1457,7 +1461,7 @@ public class SdServer extends Service implements SdDataReceiver { // called after startTime ms. @Override public void onFinish() { - Log.v(TAG, "LatchAlarmTimer.onFinish()"); + Log.i(TAG, "LatchAlarmTimer.onFinish()"); // Do the equivalent of accept alarm push button. acceptAlarm(); }