73 Commits

Author SHA1 Message Date
Gordon Williams
d58609fee8 Bangle.js2: Ensure HRM-raw.raw is set correctly after we moved to binary hrm algorithm 2023-08-14 08:01:02 +01:00
Gordon Williams
5cfde78b90 Bangle.js: Handle pushing events via the event queue (allows events to be queued rather than lost)
Bangle.js2: Allow HRM environment sensor data to be pushed, also add flags for disabling auto exposure and wear detect
2023-07-31 15:30:50 +01:00
Gordon Williams
edf18d3fcd Bangle.js: GPS event now works even if only GGA NMEA events are enabled (which you might do for speed) 2023-05-05 16:23:35 +01:00
Gordon Williams
95fb716f11 Bangle.js2: Added Bangle.setOptions({hrmSportMode}) 2023-05-02 13:00:47 +01:00
Gordon Williams
42e336f4ac VC31 algorithm doesn't pass floats at all, so actually it doesn't care about hard/softfp
So we've removed .ARM.attributes from those files and moved back to softfp for Bangle.js 2 like other devices: https://forum.espruino.com/conversations/385922/#comment16955514
2023-04-25 12:45:41 +01:00
Gordon Williams
9b30f17227 Added jsvObjectGetChildIfExists to avoid the jsvObjectGetChild(... ,0) case - saves ~300b of flash space 2023-04-25 10:59:34 +01:00
Gordon Williams
eb0fb24e6e Amplify filtered HRM signal now we're not doing proper filtering, so at least it shows up in the HRM app 2023-04-25 10:35:10 +01:00
Gordon Williams
c1416f1f87 didn't save removal of debug messages 2023-04-24 15:08:40 +01:00
Gordon Williams
21e7dd8061 Bangle.js2: Switched to proprietary heart rate algorithm (from our Open Source version). It just works better. 2023-04-24 14:55:25 +01:00
Rob Pilling
250fb353a3 Add typing for getSecurityStatus() 2023-03-03 08:07:31 +00:00
Rob Pilling
953f33d683 Update docs with [optional] (for typescript) 2023-02-08 22:48:30 +00:00
Gordon Williams
6b2cfe669b linux build for Bangle.js2 (good for testing 3 bit graphics lib) 2022-11-05 10:50:13 +00:00
qucchia
520025cada TypeScript: Don't declare Bluetooth as a class 2022-07-27 19:44:12 +02:00
qucchia
c5bb94bf7a Limit documentation comments to 80 characters (#2244) 2022-07-27 15:32:19 +02:00
Gordon Williams
1f2a3b4521 Fix errors creating type files 2022-07-20 15:52:00 +01:00
Gordon Williams
ef6dc1d87d oops 2022-06-07 14:53:01 +01:00
Gordon Williams
853c74129c Bangle.js: speed up HRM average adjustment (specifically when sample rate is 25Hz, eg. for Bangle.js 2) 2022-06-07 14:34:26 +01:00
Gordon Williams
478b28d080 nRF5x: Allow 'high speed' watches via 'hispeed' argument to setWatch. Higher power consumption but detects fast (<25us) pulses. 2022-05-05 12:01:19 +01:00
Gordon Williams
8d763e7a6e oops 2022-04-22 11:51:26 +01:00
Gordon Williams
aa6009b0d1 Bangle.js2: Allow variable HRM poll rates on Bangle.js 2 VC31B variant
Bangle.js2: VC31 HRM variant now polls at 25hz (not 50)
2022-04-22 11:35:33 +01:00
Gordon Williams
e3bd639c03 Bangle.js2: Fix wear detection on latest Bangle.js 2 (VC31B variant) (fix #2141) 2022-04-22 09:24:10 +01:00
Gordon Williams
6cb4048584 Bangle.js2: Unistroke recognition accuracy improvements 2022-04-05 16:48:12 +01:00
Gordon Williams
8861b27954 Util Timer now runs independently of system time. More accurate on nRF52 (fix #2125)
Also remove (mostly) duplicated jshPinPulse
2022-03-03 16:43:00 +00:00
Gordon Williams
ba7ec5b918 WIP - first stab at fixing nRF52 timer accuracy issue - more reliable now but pulse trains still can be off, and PWM broken 2022-03-02 17:04:46 +00:00
jeffmer
afb4943c36 Update stepcount.c
Add DCFilter and set threshold to 15
2022-01-29 11:43:59 +00:00
Gordon Williams
407dd17e09 significantly improved beat detection using peak finding *and* zero crossing 2022-01-24 15:41:32 +00:00
Gordon Williams
19b638e9cc lower step count value to 17 based on feedback that with 18, step counting was only 95% accurate during walking: http://forum.espruino.com/conversations/359542/?offset=200#comment16366515 2022-01-24 08:42:28 +00:00
Gordon Williams
d4f5737b91 HRM: tweaks to use ppgOffset again, but to gradually reduce it to 0 over time 2022-01-21 11:08:53 +00:00
Gordon Williams
cdd79e3bef Bangle.js: Support for v2.1 HRM hardware (VC31 vs VC31B)
Bangle.js: Better HRM detection (higher res filtering, better peak detection, lower median filter size, better confidence)
2022-01-20 21:19:53 +00:00
Gordon Williams
0ceb59cb3d Bangle.js: Increase step counting noise threshold 14->18 to work around pedometer fake steps (http://forum.espruino.com/conversations/371740) 2022-01-20 10:56:20 +00:00
Gordon Williams
b59ae739f6 re-use integer square root from jsutils - fixes emscripten compile 2022-01-05 16:14:51 +00:00
Gordon Williams
eeed88771f Bangle.js2: Add HRM wear detection (LED no longer turns on if HRM not on skin) 2021-11-26 09:32:34 +00:00
Gordon Williams
65a79b053a Bangle.js2: Add Unistroke object, and 'Bangle.stroke' event 2021-11-03 16:54:53 +00:00
Gordon Williams
e986e41c05 update included apps and add more placeholder emulated functions 2021-10-29 10:43:21 +01:00
Gordon Williams
2254607d8b Bangle.js: Add Bangle.setOptions({hrmPollInterval:...}); 2021-10-27 12:19:25 +01:00
Gordon Williams
eb42e9e059 add emulator files that were accidentally skipped 2021-10-20 16:10:02 +01:00
Gordon Williams
29c2dd812b Including first untested unistroke conversion to C 2021-10-20 16:09:25 +01:00
Gordon Williams
3f23e98c20 Bangle.js2 VC31 improvements 2021-10-05 17:03:50 +01:00
hughbarney
e33e118337 final config after more real world tests, better to have high walking accuracy than super low driving steps 2021-08-29 20:38:13 +01:00
hughbarney
e4c49c3977 tweaked step counter to 8 in 8, raw threshold = 17, gating and no filter threshold 2021-08-26 22:37:20 +01:00
Gordon Williams
5995c02133 More step count tweaks from http://forum.espruino.com/conversations/359542/?offset=100#comment16148292 2021-08-26 09:32:23 +01:00
Gordon Williams
ea8733c125 Added hughb's step counting state machine 2021-08-25 12:15:52 +01:00
Gordon Williams
1fb8739678 More step counter tweaking based on http://forum.espruino.com/conversations/359542/?offset=100#comment16147883
// a1bc34f9a9f5c54b9d68c3c26e973dba195e2105   HughB-walk-1834.csv  1446
// oxford filter                                                   1584
// peak detection                                                  1752
2021-08-25 11:53:41 +01:00
Gordon Williams
6bf722838f swap to simpler step filter with less ring 2021-08-19 14:41:13 +01:00
Gordon Williams
7003b2bb05 Bangle.js: Tweaked step count algorithm (low pass filter, 4 steps in 90s) 2021-08-19 13:22:37 +01:00
Gordon Williams
f75cf02089 docs 2021-07-29 13:21:50 +01:00
Gordon Williams
56ffd345be Bangle.js: Push GPS events immediately after GPGSV (more portable/resilient to config changes) 2021-07-29 12:53:10 +01:00
Gordon Williams
f36f7ab061 Bangle.js: Store heart rate periods in actual time (not sensor reading count) - more stable 2021-07-28 14:04:45 +01:00
Gordon Williams
fa09deea4a adjust VC31 scaling to reduce clipping 2021-07-27 17:02:24 +01:00
Gordon Williams
70479f35ab comments 2021-07-27 16:50:47 +01:00