1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-11-14 05:59:26 +01:00
Commit Graph

2930 Commits

Author SHA1 Message Date
José Rebelo
ee6340c848 Amazfit Bip 3: Initial support 2024-03-17 13:06:31 +00:00
José Rebelo
ae05f7fd42 Xiaomi Watch S1 Pro: Enable charts for body temperature 2024-03-16 21:44:11 +00:00
José Rebelo
fcc930749e Sony LinkBuds: Initial support 2024-03-15 23:36:50 +00:00
José Rebelo
5798466e55 Sony Headphones: Fix protocol v2 2024-03-15 23:34:17 +00:00
José Rebelo
0301d0e9a8 Sony Headphones: Merge V3 protocol into V2
The protocols are not actually different - the different messages only
depended on whether the devices supports wind noise reduction or not.
2024-03-15 22:56:11 +00:00
Gordon Williams
f91156cd3e Bangle.js - fix issue where a newline right at the beginning of a received string could cause "String index out of range: -1" errors for all subsequent received data 2024-03-13 09:52:03 +00:00
José Rebelo
f9917851ef Xiaomi: Fix NPE when notification lookup fails 2024-03-06 20:47:57 +00:00
Daniel Dakhno
ee1c3e4db9 Device connection: classify more states as reconnecting 2024-03-05 00:11:32 +01:00
Daniel Dakhno
7219bd377b Device connection: consider WAITING_FOR_SCAN as reconnecting state 2024-03-05 00:11:32 +01:00
Daniel Dakhno
07744331ac Device connection: removed duplicate strings entry 2024-03-05 00:11:32 +01:00
Daniel Dakhno
b1b5eada68 Device connection: added Scan service channel 2024-03-05 00:11:32 +01:00
Daniel Dakhno
281a087550 Device connection: refactoring, string extraction 2024-03-05 00:11:32 +01:00
Daniel Dakhno
3ceba883dd Device connection: allow to disconnect from scanned devices 2024-03-05 00:11:32 +01:00
Daniel Dakhno
7816e131e9 Device connection: stop ScanService when quitting application 2024-03-05 00:11:32 +01:00
Daniel Dakhno
f5213f39f7 Device connection: dont try to scan for BT classic devices 2024-03-05 00:11:32 +01:00
Daniel Dakhno
00c0a8e897 Device connection: added device scan reconnection logic 2024-03-05 00:11:32 +01:00
Arjan Schrijver
08a8b6a8fd Fossil/Skagen Hybrids: Remove activity fetching toasts and add finished signal 2024-02-27 14:36:28 +01:00
José Rebelo
ab41adbc7f Xiaomi: Fix sleep samples when sleep stages are not found
We can at least show light sleep now.
2024-02-25 22:53:15 +00:00
José Rebelo
dd952e335f Xiaomi: Implement complex activity details header parsing
This should improve activity parsing across all devices, as we now take
the header into account, which indicates what groups are actually
present.

Thanks to @opcode for figuring out the header structure and providing
the ImHex patterns for the activity data.
2024-02-25 22:27:20 +00:00
José Rebelo
0b0aedfb52 Revert Xiaomi steps and stress parsing fixes
- This reverts commit 789292d318.
- This reverts commit 641eb1bee7.

Further changes are required
2024-02-25 21:08:44 +00:00
José Rebelo
3902db5abd Huami: Keep track of last debug logs titmestamp 2024-02-25 13:25:12 +00:00
José Rebelo
58d4ebf509 Huami: Refactor activity data fetching
Activity data fetching on Huami devices was filled with duplicated code,
and the handleActivityFetchFinish was called from multiple places where
it did not make sense. This made us signal to the band that activity
fetch was finished when it sometimes was not, causing some race
condititions that would make activity fetch fail or get stuck.

This refactor defines a clear "processBufferedData" that is called
upstream, signaling to the fetch operation that we have received all
data and the buffer can be processed. All handling of metadata and ack
messages is also delegated to the upstream class.
2024-02-25 13:10:25 +00:00
José Rebelo
9b0229cdf0 Huami: Split fetch, init and update operations 2024-02-25 13:10:25 +00:00
José Rebelo
5e068ee4ca Huami: Extract activity fetch data types to enum 2024-02-25 13:10:25 +00:00
José Rebelo
789292d318 Xiaomi: Fix stress parsing 2024-02-25 00:04:03 +00:00
José Rebelo
641eb1bee7 Xiaomi: Fix steps and stress parsing for some devices 2024-02-25 00:02:52 +00:00
Martin.JM
71ea39efde [Huawei] Hookup smart wakeup interval and update Coordinators 2024-02-24 09:56:56 +01:00
Martin.JM
51024f7b5e Add smart wakeup interval 2024-02-24 09:56:56 +01:00
Arjan Schrijver
0383169767 Fossil/Skagen Hybrids: While syncing, mark device busy and show transfer notification 2024-02-23 20:59:01 +01:00
Gordon Williams
dd0dfb23ac Bangle.js: Ensure we request a higher MTU if it's been enabled in settings (otherwise Android just uses the default). Really improves communication speed. 2024-02-22 12:00:33 +00:00
Martin.JM
9a388ca386 Updated according to review
Thank you José Rebelo!
2024-02-18 20:54:59 +00:00
Martin.JM
c66051f580 Cleanup of Huawei weather implementation 2024-02-18 20:54:59 +00:00
Martin.JM
1c2516186d Small cleanup 2024-02-18 20:54:59 +00:00
Martin.JM
5ebfe9b39f Add weather settings to forecast 2024-02-18 20:54:59 +00:00
Martin.JM
b231104a88 Add moon phase support 2024-02-18 20:54:59 +00:00
Martin.JM
242f3c6dbc Add unit support and some cleanup 2024-02-18 20:54:59 +00:00
Martin.JM
043f839a4d Fix tomorrow appearing twice 2024-02-18 20:54:59 +00:00
Martin.JM
6a2186919c Always initialize weather before sending 2024-02-18 20:54:59 +00:00
Martin.JM
4b70f3fcdb Hookup Huawei GPS values 2024-02-18 20:54:59 +00:00
Martin.JM
ee14b5d821 Small changes 2024-02-18 20:54:59 +00:00
Martin.JM
65aa5faec5 Implement Huawei weather icons 2024-02-18 20:54:59 +00:00
Martin.JM
f970b7482b Set wind values 2024-02-18 20:54:59 +00:00
Vitaliy Tomin
287b720350 Send gps and time before forecast 2024-02-18 20:54:59 +00:00
Martin.JM
0b64408b33 Add outgoing parsing 2024-02-18 20:54:59 +00:00
Martin.JM
2b1c5b5819 Add weather forecast 2024-02-18 20:54:59 +00:00
Martin.JM
b2b176b65c Add weather support for Huawei 2024-02-18 20:54:59 +00:00
Davis Mosenkovs
cc5078332b TimeChangeReceiver: Ensure the alarm is set
Ensure TimeChangeReceiver alarm is scheduled when enabling
datetime_synconconnect and registering TimeChangeReceiver broadcast
receiver.

It is important to re-schedule the alarm after registering broadcast
receiver, because:
1. if broadcast receiver was unregistered while previous alarm arrived,
there is no alarm scheduled;
2. re-scheduling the alarm resets the periodic time sync timer when
first device is connected (which is desired).

It is important to re-schedule the alarm when datetime_synconconnect
gets enabled, because there might be no alarm scheduled.

Call onSetTime() when enabling datetime_synconconnect.
2024-02-18 19:12:30 +00:00
Davis Mosenkovs
31fc266f94 Periodically sync time on all connected devices
Sync time every 43 hours, 53 minutes and 23 seconds.
Interval is a bit smaller than 2 days.
Interval is a prime (in seconds) so time of sync will slide over time.

If next DST change is less than 48 hours in future, wait for it.
2024-02-18 19:12:30 +00:00
Martin.JM
89b6ae9f24 Add more granular smart wakeup support
Specifically:
- Add position to smart wakeup support coordinator function
- Add interface to stop smart alarm checkbox from being changed
2024-02-18 17:24:29 +01:00
José Rebelo
ad256fade0 Test Device: Fix NPE when using the database 2024-02-16 23:09:46 +00:00