diff --git a/CHANGELOG.md b/CHANGELOG.md index b758317..0da3868 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ OpenSeizureDetector Android App - Change Log ============================================ + V2.0.7 - 18 Aug 2016 + - Added AnalysisPeriod setting to Pebble Datasource to change + the period between data analyses (rather than the default 5 seconds + in previous versions). + V2.0.6 - 25 July 2016 - Added main activity menu option to view log files (via web browser). - Added options to switch off spectrum display on watch to save battery. diff --git a/app/app-release-2.0.7.apk b/app/app-release-2.0.7.apk new file mode 100644 index 0000000..355bd7b Binary files /dev/null and b/app/app-release-2.0.7.apk differ diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index fdcdd7d..95abbc7 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,8 +1,8 @@ + android:versionCode="28" + android:versionName="2.0.7"> diff --git a/app/src/main/assets/pebble_sd.pbw b/app/src/main/assets/pebble_sd.pbw index b508c2f..db097bf 100644 Binary files a/app/src/main/assets/pebble_sd.pbw and b/app/src/main/assets/pebble_sd.pbw differ diff --git a/app/src/main/java/uk/org/openseizuredetector/SdData.java b/app/src/main/java/uk/org/openseizuredetector/SdData.java index 30f3e56..4b3347d 100644 --- a/app/src/main/java/uk/org/openseizuredetector/SdData.java +++ b/app/src/main/java/uk/org/openseizuredetector/SdData.java @@ -52,6 +52,7 @@ public class SdData implements Parcelable { public short mFallWindow; public long mSdMode; public long mSampleFreq; + public long analysisPeriod; public long alarmFreqMin; public long alarmFreqMax; public long nMin; @@ -152,6 +153,7 @@ public class SdData implements Parcelable { jsonObj.put("alarmPhrase", alarmPhrase); jsonObj.put("sdMode",mSdMode); jsonObj.put("sampleFreq",mSampleFreq); + jsonObj.put("analysisPeriod",analysisPeriod); jsonObj.put("alarmFreqMin",alarmFreqMin); jsonObj.put("alarmFreqMax",alarmFreqMax); jsonObj.put("alarmThresh", alarmThresh); diff --git a/app/src/main/java/uk/org/openseizuredetector/SdDataSourcePebble.java b/app/src/main/java/uk/org/openseizuredetector/SdDataSourcePebble.java index e7788fe..8cb3470 100644 --- a/app/src/main/java/uk/org/openseizuredetector/SdDataSourcePebble.java +++ b/app/src/main/java/uk/org/openseizuredetector/SdDataSourcePebble.java @@ -107,6 +107,10 @@ public class SdDataSourcePebble extends SdDataSource { private int KEY_NUM_RAW_DATA = 31; private int KEY_DEBUG = 32; private int KEY_DISPLAY_SPECTRUM = 33; + private int KEY_SAMPLE_PERIOD = 34; + private int KEY_VERSION_MAJOR = 35; + private int KEY_VERSION_MINOR = 36; + private int KEY_FREQ_CUTOFF = 37; // Values of the KEY_DATA_TYPE entry in a message private int DATA_TYPE_RESULTS = 1; // Analysis Results @@ -128,6 +132,7 @@ public class SdDataSourcePebble extends SdDataSource { private short mSampleFreq; private short mAlarmFreqMin; private short mAlarmFreqMax; + private short mSamplePeriod; private short mWarnTime; private short mAlarmTime; private short mAlarmThresh; @@ -298,6 +303,10 @@ public class SdDataSourcePebble extends SdDataSource { mSampleFreq = (short) Integer.parseInt(prefStr); Log.v(TAG, "updatePrefs() SampleFreq = " + mSampleFreq); + prefStr = SP.getString("SamplePeriod", "SET_FROM_XML"); + mSamplePeriod = (short) Integer.parseInt(prefStr); + Log.v(TAG, "updatePrefs() AnalysisPeriod = " + mSamplePeriod); + prefStr = SP.getString("AlarmFreqMin", "SET_FROM_XML"); mAlarmFreqMin = (short) Integer.parseInt(prefStr); Log.v(TAG, "updatePrefs() AlarmFreqMin = " + mAlarmFreqMin); @@ -403,6 +412,7 @@ public class SdDataSourcePebble extends SdDataSource { if (data.getUnsignedIntegerAsLong(KEY_DATA_TYPE) == DATA_TYPE_SETTINGS) { Log.v(TAG, "DATA_TYPE = Settings"); + mSdData.analysisPeriod = data.getUnsignedIntegerAsLong(KEY_SAMPLE_PERIOD); mSdData.alarmFreqMin = data.getUnsignedIntegerAsLong(KEY_ALARM_FREQ_MIN); mSdData.alarmFreqMax = data.getUnsignedIntegerAsLong(KEY_ALARM_FREQ_MAX); mSdData.nMin = data.getUnsignedIntegerAsLong(KEY_NMIN); @@ -538,6 +548,7 @@ public class SdDataSourcePebble extends SdDataSource { setDict.addInt16(KEY_MAN_ALARM_PERIOD, mManAlarmPeriod); setDict.addInt16(KEY_SD_MODE, mPebbleSdMode); setDict.addInt16(KEY_SAMPLE_FREQ, mSampleFreq); + setDict.addInt16(KEY_SAMPLE_PERIOD, mSamplePeriod); setDict.addInt16(KEY_ALARM_FREQ_MIN, mAlarmFreqMin); setDict.addInt16(KEY_ALARM_FREQ_MAX, mAlarmFreqMax); setDict.addUint16(KEY_WARN_TIME, mWarnTime); @@ -578,6 +589,10 @@ public class SdDataSourcePebble extends SdDataSource { Log.v(TAG, "checkWatchSettings - mManAlarmPeriod Wrong"); settingsOk = false; } + if (mSamplePeriod != mSdData.analysisPeriod) { + Log.v(TAG, "checkWatchSettings - mSamplePeriod Wrong"); + settingsOk = false; + } if (mAlarmFreqMin != mSdData.alarmFreqMin) { Log.v(TAG, "checkWatchSettings - mAlarmFreqMin Wrong"); settingsOk = false; @@ -603,7 +618,7 @@ public class SdDataSourcePebble extends SdDataSource { settingsOk = false; } if (mFallActive != mSdData.mFallActive) { - Log.v(TAG, "checkWatchSettings - mAlarmFreqMin Wrong"); + Log.v(TAG, "checkWatchSettings - mFallActive Wrong"); settingsOk = false; } if (mFallThreshMin != mSdData.mFallThreshMin) { diff --git a/app/src/main/res/xml/pebble_datasource_prefs.xml b/app/src/main/res/xml/pebble_datasource_prefs.xml index 50c535d..e9462df 100644 --- a/app/src/main/res/xml/pebble_datasource_prefs.xml +++ b/app/src/main/res/xml/pebble_datasource_prefs.xml @@ -6,8 +6,8 @@ + android:summary="Time period at which data is sent to the phone (does not affect analysis frequency - see Sample Period setting for that)" + android:title="Data Transfer Period (sec)" /> + +