Skip to content

Commit b494316

Browse files
authored
Merge pull request #234 from OpenSeizureDetector/beta
Merge Version 5.0.0 from beta branch into Master
2 parents 1851fa7 + 5f989f8 commit b494316

296 files changed

Lines changed: 31646 additions & 14277 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ build
33
.idea
44
local.properties
55
*.iml
6+
app/release
67
app/release/app-release.apk
78
app/build
89
app/app.iml

APP_STRUCTURE.md

Lines changed: 0 additions & 378 deletions
This file was deleted.

Android_Pebble_SD_AS.iml

Lines changed: 0 additions & 19 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 46 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,51 @@
11
OpenSeizureDetector Android App - Change Log
22
============================================
3+
V5.0.0 - Build for publication on Play Store
4+
- Fixed issue with low battery warning not emitting fault sounds'
5+
- Corrected colour of OK/Cancel buttons in data sharing dialogs.
6+
V5.0.0rc2 - Fixed issue with app sometimes restarting rather than exiting when 'exit' menu item is selected.
7+
- Fixed issue with long delay between selecting 'exit' and the UI doing anything.
8+
- Added a low phone battery fault warning so the system will not fail silently if the phone battery runs out.
9+
- Set notification to re-post silently every 15 seconds in case it is dismissed by the user.
10+
V5.0.0rc1 - Added new logo.
11+
- Fixed phone data source sample frequency.
12+
V5.0.0Z - Made the watch 'Mute' function cancel any pending SMS alerts.
13+
- Fixed mp3 alarms, and added support for user-selectable audio files for the alarms.
14+
V5.0.0Y - Added a fall algorithm tab to MainActivity to visualise the data to help with setting parameters for the algorithm.
15+
V5.0.0X - Improved logging of Fall Algorithm debug data, fixed issue with fall detector not working for PineTime because sampleFrequency was not set correctly,
16+
and made a fall override all algorithm voting to create an alarm because it is a one-shot event.
17+
V5.0.0W - Fixed network datasource crash on Android 16 by adding network permissions to manifest.
18+
V5.0.0V - Fixed start-up crash relating to foreground service starting.
19+
- Fixed issue with data sharing not updating all events in a group.
20+
- Fixed data sharing group event duration calculation.
21+
- Fixed issue with phone datasource stalling if start-up dialog left displayed for too long
22+
- Added 'Developer Mode' which displays more data source options, and enables NDA menu item.
23+
V5.0.0U - Fixed issue with trying to access closed instance of sqlite database.
24+
Added logging for reason for last shutdown given we see occasional silent crashes.
25+
Improved automatic re-starting attempts if the system kills the SdServer service.
26+
V5.0.0T - Added Acceleration Standard Deviation Threshold user perference to adjust low-movement sensitivity of SdAlgMl
27+
V5.0.0S - Fixed permissions issue with Android 14 network data source - we should be more robust now about which permissions we request for which data source.
28+
V5.0.0R - Fixed another issue that caused BLE2 to sometimes subscribe to acceleration updates twice, resulting in incorrect data.
29+
V5.0.0Q - Fixed? Issue that caused SdDataSourceBLE2 to sometimes reconnect incorrectly resulting in incorrect data arrival frequency.
30+
V5.0.0P - Tidied up data sharing screen, and addressed issues with multiple events being uploaded (#225)
31+
- Major re-factor of logging system to improve future maintainability - no functional change.
32+
V5.0.0N - Updated to accept a device MAC address returned by Android_PineTime_Updater to avoid the user having to select the device twice.
33+
- Tidied up BLEScanActivity to make it look more like PineTimeUpdater
34+
V5.0.0A - Tidied up build settings (into gradle.properties)
35+
- Added MlModelManager to download ML models from web service.
36+
- Added support for pytorch models (executorch) (As well as TFLite)
37+
- Added initial support for AndroidWear from Dylan Griffiths (not tested, but included to make sure it doesn't break anything else)
38+
- Fixed issue with 16kB page alignment (requirement for Play Store)
39+
- Tidied up events list in data sharing (log manager) screen
40+
- Tidied up main activity UI - tabbed switching between screens, material design colours.
41+
- Migrated all graphs from MPAndroidChart to GraphView library (simpler, more maintainable)
42+
- Added version number to action bar title
43+
- Improved UI consistency with unified Material Design color scheme
44+
- Improved settings experience - system now only restarts when exiting settings screen, not on every change
45+
- CRITICAL FIX: Fixed server lifecycle bug that caused multiple server instances and FAULT/OK oscillation after changing settings
46+
- Added onboarding setup wizard that covers PineTime, Garmin or Network data source, and OSD, ML or HR algorithms.
47+
- Created a separate SeizureDetector class rather than having the seizure detection analysis in SdDataSource
48+
- Added support for multiple ML models, and voting between models to decide whether to alarm or not
349
V4.3.1 - Fixed corrupted user interface issues on Android 15 and Android 16.
450
V4.3.0 - 2025-07-16
551
- Added support for Android 15 (API 35) to allow publishing on Play Store.
@@ -223,5 +269,3 @@
223269
- Added ability to latch alarms so they have to be actively accepted to silence the alarm, rather than it re-setting when the movement stops.
224270
- Fixed problem with the system being difficult to shut down if as multiple instances of main screen could be active at once.
225271

226-
227-

CREDITS.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,49 @@
11
CREDITS
22
-------
3+
4+
## Contributors
35
Thank you to the following people who have contributed to this app:
46

7+
* [Bram Regtien](https://github.com/aroonpro) - A lot of the ideas for improvements included in Version 5.
8+
* [Jamie Pordoy](https://jpordoy.github.io/) - Support with Machine Learning algorithm development.
9+
* [Pierre Bonneau](https://github.com/pmithrandir) - HR Algorithms implementation
10+
* [Olly Rennard](https://github.com/rennard) - Initial BLE Implementation
511
* Juergen Huebers - German Translation
612
* Pavel Losevsky - Russian Translation
713
* Andreas & Marie Ekstrom - Swedish Translation
814
* Cesareo Mario Guajardo Murillo - Spanish Translation
915
* Jolanta Kowalska and Artur Chlebek - Polish Translation
1016
* Jozefus Gaarthuis - high resolution star of life icon.
17+
18+
## Media
19+
* Logo based on ["Star of life2" by Verdy p - Own work. Licensed under Public Domain via Wikimedia Commons](http://commons.wikimedia.org/wiki/File:Star_of_life2.svg#mediaviewer/File:Star_of_life2.svg).
20+
* Alarm Bell Icon by <a href="https://icon54.com/" title="Pixel perfect">Pixel perfect</a> from <a href="https://www.flaticon.com/" title="Flaticon"> www.flaticon.com</a>
21+
* Other icons crated using http://romannurik.github.io/AndroidAssetStudio.
22+
* Audio Alarm sounds from freesound https://freesound.org/people/coltonmanz/sounds/381382/, https://freesound.org/people/NoiseCollector/sounds/4270/, https://freesound.org/people/pistak23/sounds/271632/
23+
24+
## Open Source Libraries
25+
26+
This app uses the following Open Source libraries - it would not be possible without many of them:
27+
28+
* [JTransforms](https://github.com/wendykierp/JTransforms) - Fast Fourier Transform (FFT) library
29+
* [ExecuTorch Android](https://github.com/pytorch/executorch) - PyTorch mobile inference runtime
30+
* [GraphView](https://github.com/jjoe64/GraphView) - Simple, lightweight charting library for Android
31+
* [Android Bluetooth Current Time Service](https://github.com/RideBeeline/android-bluetooth-current-time-service) - BLE Current Time Service implementation
32+
* [BLESSED for Android](https://github.com/weliem/blessed-android) - Bluetooth Low Energy (BLE) library for Android
33+
* [Apache Commons Math](https://commons.apache.org/proper/commons-math/) - Mathematics and statistics library
34+
* [Volley](https://github.com/google/volley) - HTTP networking library for Android
35+
* [ThreadPoster](https://github.com/techyourchance/thread-poster) - Thread management utility for Android
36+
* [Google Play Services Location](https://developers.google.com/android/guides/setup) - Location services
37+
* [AndroidX ConstraintLayout](https://developer.android.com/jetpack/androidx/releases/constraintlayout) - Flexible layout system for Android
38+
* [Material Components for Android](https://github.com/material-components/material-components-android) - Material Design UI components
39+
* [Google Play Services TFLite](https://developers.google.com/ml-kit/migration/android) - TensorFlow Lite runtime via Google Play Services
40+
* [AndroidX AppCompat](https://developer.android.com/jetpack/androidx/releases/appcompat) - Backwards-compatible Android UI support
41+
* [AndroidX Legacy Support v4](https://developer.android.com/jetpack/androidx/releases/legacy) - Legacy Android support library
42+
* [AndroidX Preference](https://developer.android.com/jetpack/androidx/releases/preference) - Settings/preference UI components
43+
* [Google Play Services Wearable](https://developers.google.com/android/guides/setup) - Wearable device connectivity
44+
* [AndroidX Navigation](https://developer.android.com/jetpack/androidx/releases/navigation) - In-app navigation framework
45+
* [Firebase Authentication](https://firebase.google.com/docs/auth) - User authentication via Google Firebase
46+
* [Firebase Analytics](https://firebase.google.com/docs/analytics) - App usage analytics via Google Firebase
47+
* [Firebase Firestore](https://firebase.google.com/docs/firestore) - Cloud NoSQL database via Google Firebase
48+
* [FirebaseUI for Auth](https://github.com/firebase/FirebaseUI-Android) - Drop-in UI for Firebase Authentication
49+
* [PebbleKit Android](https://github.com/pebble/pebble-android-sdk) - Pebble smartwatch SDK for Android

DEV_NOTES.txt

Lines changed: 0 additions & 14 deletions
This file was deleted.

FLOW_DIAGRAM.png

-39.3 KB
Binary file not shown.

0 commit comments

Comments
 (0)