Commit Graph

16 Commits (9105c94e1b8f002bd9b6cff08ff9db3f9239a598)

Author SHA1 Message Date
storm64 9105c94e1b [sleeplog] Replace onChange with trigger object 2022-11-16 22:46:49 +01:00
storm64 56e69cc32c [sleeplog] Initialise .onChange as object 2022-11-10 17:16:44 +01:00
storm64 58330df11c [sleeplog] Change .onChange from array to object 2022-11-10 17:04:54 +01:00
storm64 99663e4583 [sleeplog] onChange: + previous values and readme 2022-11-10 00:33:51 +01:00
storm64 74787f7b5e [sleeplog] Add option for onChange functions
Execute functions in `sleeplog.onChange[fn({timestamp, status, consecutive})]` on a status change
2022-09-12 23:15:39 +02:00
storm64 e9503bb08f
sleeplog: Update boot.js
Check for cached modules before removing to prevent module not found error.
2022-08-17 23:21:35 +02:00
storm64 aef6f638cb [sleeplog] Change caching for global getStats 2022-05-26 11:27:36 +02:00
storm64 76629a9d78 [sleeplog] Add "View log" in debug + send via BT
Add "View log" function for debugging log
Send data for gadgetbridge via BT
2022-05-26 10:41:56 +02:00
storm64 3ec051be9d [sleeplog] Complete rework, BETA v01 2022-05-20 17:17:30 +02:00
storm64 8c4f2f18c9 sleeplog: Correct fix #1445, display loading info while calculating sleep data
Update app.js
 - move complex data analysis into separate function
 - add displaying a loading info
 - faster feedback by calling the analysis through a timeout
Update boot.js
 - correct fix #1445 as mentioned by splitting the `stop()` function to only remove the kill listener on a manual stop
 - optimize `start()` and `stop()` functions
Update README.md
 - change beautified menu entries according to changes in settings.js
Update settings.js
 - replace `circulate()` function with internal `wrap: true`
 - move delay for menu redraw as suggested in espruino/Espruino#2149
 - beautify menu entries for new touchscreen E.showMenu system (> fw 2v.13.32)
2022-02-15 19:47:15 +01:00
storm64 f9be0db3c8 sleeplog: remove logging always, minimized workaround in settings menu
Update boot.js
 - remove logging always for testing
Update settings.js
 - minimized workaround in settings menu to [espruino/Espruino issue 2149](https://github.com/espruino/Espruino/issues/2149)
2022-02-14 08:18:16 +01:00
storm64 c8c1b7b914 sleeplog: Prevent removing other kill listeners #1445
Update boot.js
 - prevent removing other kill listeners #1445
Update README.md
 - change "only available" information for Settings
 - add new ideas to "To do list"
2022-02-13 22:39:57 +01:00
storm64 0ec1d57add sleeplog: Complete power saving mode + move all read/write log actions into lib.js
* Complete new power saving mode after tests
* Move all read/write log operations into lib/module
Update app.js
 - update `readLog(...)` call
Update boot.js
 - update maxmove default value
 - delete `log(..)`, merging into `writeLog(...)` from lib.js
 - replace all read/write actions to the logfile with `readLog(...)`/`writeLog(...)` from lib.js
 - add restoring the status after a restart (<5 min ago) to last known state
 - add deletion of unused settings on power saving mode
 - update log timestamp on power saving mode to always be 10min before now
Update ChangeLog
Update lib.js
 - update `readLog(...)`, prevent errors on reading, minimize workload if unfiltered
 - add `writeLog(...)` to append or replace log depending on input with plausibility checks on input
 - merging `log(...)` from boot.js into `writeLog(...)`
 - replace all read/write actions to the logfile with `readLog(...)`/`writeLog(...)`
Update metadata.json
 - update version number
 - add power saving mode to description
Update README.md
 - add power saving mode description
 - move sleeping/not worn decision description into its own section
 - add description for timestamp values to Logging section
 - update Global Object and Module Functions section
Update settings.js
 - update maxmove setting and default value
2022-02-13 20:54:26 +01:00
storm64 b8721fbdcf sleeplog: New power saving mode using build in movement detection
* New power saving mode using build in movement detection
Update app.js
 - add displaying powersaving status
Update boot.js
 - add power save mode
 - minimize fix #1425 to issue #1423
 - minimize wake/sleep decision
 - add checking for correct this reference
 - add checking for global object existence
 - remove unneeded global. prefix
Update lib.js
 - add powersaving setting to setEnabled()
 - fix missing logfile issue #1423 on all functions
 - remove check for changes in setEnabled(...) to always restart the service
Update settings.js
 - add settings powersaving and maxmove
 - add displaying settings depending on power saving mode
 - restart service when changing enabled, logfile and powersaving
2022-02-12 01:43:58 +01:00
Marco H 50b94d6870
Update boot.js
Fixes Uncaught Error: Expecting a string, got undefined
see https://github.com/espruino/BangleApps/issues/1423
2022-02-11 13:16:59 +01:00
storm64 02aeaff86b sleeplog: Add Sleep Log App
This app logs and displays the four following states:
_unknown, not worn, awake, sleeping_
It derived from the SleepPhaseAlarm and uses the accelerometer to estimate sleep and wake states with the principle of Estimation of Stationary Sleep-segments ([ESS](https://ubicomp.eti.uni-siegen.de/home/datasets/ichi14/index.html.en)) and the internal temperature to decide _sleeping_ or _not worn_ when the watch is resting.
2022-02-11 09:29:02 +01:00