1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-12-26 10:35:50 +01:00
Commit Graph

9801 Commits

Author SHA1 Message Date
Andreas Shimokawa
59dcea5d94 bump version, update changelogs 2024-02-22 13:38:22 +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
Arjan Schrijver
7eb11249b9 Update linter baseline 2024-02-19 12:14:36 +01: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
Vitaliy Tomin
d379b11535 Add HuaweiTLV put for double 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
14eaba858c Weather fix 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
MrYoranimo
3af5a412fe Add missing ic_launcher drawables in nightly 2024-02-18 20:52:53 +00:00
MrYoranimo
fa1f99642a Move build variant-specific strings from build.gradle to separate resource files 2024-02-18 20:52:53 +00:00
Davis Mosenkovs
c1f2f5bb4b Periodic time sync: update changelog and strings 2024-02-18 22:15:24 +02:00
Davis Mosenkovs
7a79a1d0f5 Add wake lock and wakeup for time sync
Wake lock with around 10 second timeout is a quick and dirty solution,
however as the time sync should happen once per several days the 10
second wake time should not be an issue.
2024-02-18 19:12:30 +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
22e51f841b Add additional smart wakeup functionality in test device
Code by José Rebelo:
https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3583#issuecomment-1571835
2024-02-18 19:01:19 +01:00
Martin.JM
275b662188 Always check smart wakeup if forced 2024-02-18 18:55:54 +01: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
Martin.JM
01ef422812 Set alarm as used and enabled if time has changed 2024-02-18 16:33:50 +01:00
JdM
64c024a5ce Added support for xiaomi redmi watch 3 (#3582)
Co-authored-by: JdM <julien@rmbi.ch>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3582
Co-authored-by: JdM <judemont@noreply.codeberg.org>
Co-committed-by: JdM <judemont@noreply.codeberg.org>
2024-02-18 13:55:14 +00:00
Arjan Schrijver
122ff5f7f4 Fossil/Skagen Hybrids: Fix crash on multi-byte unicode characters in menu
The FosslAppWriter was writing string length instead of the bytes length
into the wapp file, causing a crash when reading the file.

Fixes #3577
2024-02-17 21:25:25 +01:00
José Rebelo
ad256fade0 Test Device: Fix NPE when using the database 2024-02-16 23:09:46 +00:00
José Rebelo
a3bd7a297a Test Device: Add fake features and data 2024-02-16 22:56:27 +00:00
Damien 'Psolyca' Gaignon
6a576202a9
[Huawei] Add Huawei Watch Fit gadget 2024-02-13 14:12:23 +01:00
Arjan Schrijver
d637b9263c Fix linter errors 2024-02-13 10:54:12 +01:00
Damien 'Psolyca' Gaignon
874bb1a14e
[Huawei] Fix test 2024-02-13 00:18:48 +01:00
Daniel Dakhno
264b6470cd Revert "Device connection: added basic code for scan-reconnect"
This reverts commit adf55fea93.
2024-02-12 23:30:32 +01:00
Daniel Dakhno
adf55fea93 Device connection: added basic code for scan-reconnect 2024-02-12 23:28:10 +01:00
Andreas Shimokawa
8b9462f521 fix tests 2024-02-12 18:31:48 +01:00
arjan-s
a977436200
Translated using Weblate (Dutch)
Currently translated at 100.0% (2598 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/nl/
2024-02-12 15:37:05 +01:00
arjan-s
88dacc2d3b
Translated using Weblate (Dutch)
Currently translated at 96.8% (2516 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/nl/
2024-02-12 15:37:05 +01:00
skdubg
151cc6120a
Translated using Weblate (German)
Currently translated at 100.0% (2598 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
gallegonovato
a8e7e3fb10
Translated using Weblate (Spanish)
Currently translated at 96.7% (2514 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-02-12 15:37:04 +01:00
Rex_sa
0b0b3876a5
Translated using Weblate (Arabic)
Currently translated at 100.0% (2598 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-02-12 15:37:04 +01:00
Ghost of Sparta
43c3d85762
Translated using Weblate (Hungarian)
Currently translated at 53.5% (1390 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/hu/
2024-02-12 15:37:04 +01:00
0que
099a4bf8ef
Translated using Weblate (Russian)
Currently translated at 97.5% (2535 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-02-12 15:37:04 +01:00
Ihor Hordiichuk
cd9e22a2a4
Translated using Weblate (Ukrainian)
Currently translated at 94.3% (2450 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/uk/
2024-02-12 15:37:04 +01:00
Ács Zoltán
4603be0993
Translated using Weblate (Hungarian)
Currently translated at 52.6% (1367 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/hu/
2024-02-12 15:37:04 +01:00
陈少举
8ff2051430
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (2598 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-02-12 15:37:04 +01:00
skdubg
b7122aeb29
Translated using Weblate (German)
Currently translated at 100.0% (2598 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
skdubg
d913c4e082
Translated using Weblate (German)
Currently translated at 98.8% (2568 of 2598 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
陈少举
11e2d55cf6
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (2597 of 2597 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-02-12 15:37:04 +01:00
0que
a8a94d8a23
Translated using Weblate (Russian)
Currently translated at 97.3% (2528 of 2597 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-02-12 15:37:04 +01:00
Gregory Blanco
7aa66605a2
Translated using Weblate (Polish)
Currently translated at 98.9% (2571 of 2597 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/pl/
2024-02-12 15:37:04 +01:00
skdubg
ad46e23ebc
Translated using Weblate (German)
Currently translated at 98.8% (2567 of 2597 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
gallegonovato
1474692a69
Translated using Weblate (Spanish)
Currently translated at 96.7% (2513 of 2597 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-02-12 15:37:04 +01:00
Rex_sa
b6140c8879
Translated using Weblate (Arabic)
Currently translated at 100.0% (2511 of 2511 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-02-12 15:37:04 +01:00
Ihor Hordiichuk
c5753d3ab9
Translated using Weblate (Ukrainian)
Currently translated at 97.2% (2441 of 2511 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/uk/
2024-02-12 15:37:04 +01:00
0que
b33e36eec2
Translated using Weblate (Russian)
Currently translated at 99.5% (2499 of 2511 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-02-12 15:37:04 +01:00
gallegonovato
2dee70022f
Translated using Weblate (Spanish)
Currently translated at 100.0% (2511 of 2511 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-02-12 15:37:04 +01:00
MattSolo451
4a43e31a0f
Translated using Weblate (Polish)
Currently translated at 100.0% (2510 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/pl/
2024-02-12 15:37:04 +01:00
Xtremo3
e8936124c1
Translated using Weblate (Polish)
Currently translated at 100.0% (2510 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/pl/
2024-02-12 15:37:04 +01:00
MattSolo451
cb38d095e1
Translated using Weblate (Polish)
Currently translated at 100.0% (2510 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/pl/
2024-02-12 15:37:04 +01:00
gallegonovato
9300e7035f
Translated using Weblate (Spanish)
Currently translated at 100.0% (2510 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-02-12 15:37:04 +01:00
skdubg
af204c7f95
Translated using Weblate (German)
Currently translated at 98.9% (2484 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
Rex_sa
3dda7621cf
Translated using Weblate (Arabic)
Currently translated at 100.0% (2510 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-02-12 15:37:04 +01:00
nautilusx
8dc09c631d
Translated using Weblate (German)
Currently translated at 98.2% (2467 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
Software In Interlingua
a91dc76d82
Added translation using Weblate (Interlingua) 2024-02-12 15:37:04 +01:00
skdubg
1fe4c2db35
Translated using Weblate (German)
Currently translated at 94.8% (2381 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
0que
14635dbf3a
Translated using Weblate (Russian)
Currently translated at 99.5% (2498 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-02-12 15:37:04 +01:00
skdubg
411197c8f3
Translated using Weblate (German)
Currently translated at 94.8% (2380 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
arjan-s
40aba39ea5
Translated using Weblate (Dutch)
Currently translated at 100.0% (2510 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/nl/
2024-02-12 15:37:04 +01:00
skdubg
9ad503cfe0
Translated using Weblate (German)
Currently translated at 94.9% (2383 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
Traladarer
d647def609
Translated using Weblate (German)
Currently translated at 92.9% (2333 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
Traladarer
7f5ce81685
Translated using Weblate (German)
Currently translated at 92.9% (2333 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
skdubg
4f6bc46168
Translated using Weblate (German)
Currently translated at 92.9% (2333 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-02-12 15:37:04 +01:00
陈少举
2286839891
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (2510 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-02-12 15:37:04 +01:00
Gregory Blanco
969ee2c55e
Translated using Weblate (Polish)
Currently translated at 99.8% (2505 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/pl/
2024-02-12 15:37:04 +01:00
gallegonovato
8a1bc1b524
Translated using Weblate (Spanish)
Currently translated at 99.9% (2509 of 2510 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-02-12 15:37:04 +01:00
陈少举
3f0e0c203d
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (2487 of 2487 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-02-12 15:37:04 +01:00
0que
8da0b76af1
Translated using Weblate (Russian)
Currently translated at 99.5% (2475 of 2487 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-02-12 15:37:04 +01:00
Gregory Blanco
2a2c2de041
Translated using Weblate (Polish)
Currently translated at 100.0% (2487 of 2487 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/pl/
2024-02-12 15:37:04 +01:00
gallegonovato
6f48f67dcd
Translated using Weblate (Spanish)
Currently translated at 100.0% (2487 of 2487 strings)

Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-02-12 15:37:04 +01:00
Andreas Shimokawa
5b804bfb17 update changelogs, bump version 2024-02-12 15:36:50 +01:00
Aleksandr Ivanov
2c316bfe9d Pebble: fix of pairing issue with Pebble 2 2024-02-10 16:01:45 +00:00
José Rebelo
983b7352cb Galaxy Buds2 Pro: Fix recognition of some versions
Not all earbuds use "Galaxy" in the name, apparently.

Fixes #3569
2024-02-10 12:46:55 +00:00
Damien 'Psolyca' Gaignon
88f3cc4fd0
[Huawei] Fix regression introduced with HiChainLite 2024-02-09 22:22:33 +01:00
Damien 'Psolyca' Gaignon
fc857b8adb
[Huawei] Fix attribut keyword 2024-02-09 12:03:04 +01:00
Damien 'Psolyca' Gaignon
ef06fd4d5e
[Huawei] Fix test 2024-02-09 12:03:03 +01:00
Damien 'Psolyca' Gaignon
21b97a9276
[Huawei] Fix BondParamsRequest stopChain 2024-02-09 12:03:03 +01:00
Damien 'Psolyca' Gaignon
510b8096ed
[Huawei] Fix transactions encryption 2024-02-09 12:03:02 +01:00
Damien 'Psolyca' Gaignon
d5cecc4a84
[Huawei] GT2 transaction crypted 2024-02-09 12:03:02 +01:00
Damien 'Psolyca' Gaignon
bb5fe00643
[Huawei] Change bond request behaviour 2024-02-09 12:03:02 +01:00
Damien 'Psolyca' Gaignon
05c11cbd14
[Huawei] Add HiChainLite firstKey handling 2024-02-09 12:03:01 +01:00
Damien 'Psolyca' Gaignon
270212a771
[Huawei] Rename authMode to deviceSupportType 2024-02-09 12:03:01 +01:00
Damien 'Psolyca' Gaignon
2880297c51
[Huawei] Fix pin code encoding 2024-02-09 12:02:53 +01:00
Arjan Schrijver
8aaa766dcd Fix crash when receiving empty music state 2024-02-04 20:35:40 +01:00
José Rebelo
145c2b8c6c Zepp OS: Recognize devices with a dash before mac address suffix 2024-02-02 20:58:00 +00:00
José Rebelo
944e0d92a7 Zepp OS: Fix AGPS uploads
Regression introduced by 34fd18885a - UIHH upload is needed for AGPS
updates on older devices.
2024-02-02 20:51:06 +00:00
Damien 'Psolyca' Gaignon
2a377ba5ab
[Huawei] Change bonding style for all BR gadgets 2024-02-01 22:14:45 +01:00
José Rebelo
3e08a754e0 Xiaomi: Fix indoor cycling recognition 2024-02-01 20:02:31 +00:00
Victor Kareh
b647631c07 pinetime: Fix weather forecast write
Fixes a typo in the weather forecast characteristic writer that causes
Gadgetbridge to send the current weather twice rather than sending the
forecast.
2024-02-01 18:59:06 +00:00
José Rebelo
dbfb8e5c38 Zepp OS: Improve logging
- Do not log characteristic changes handled by parent class
- Log discovered service names
- Request and log supported config groups
2024-02-01 18:48:15 +00:00
José Rebelo
aa4a7912ef Zepp OS: Match devices by exact bluetooth name
This attemts to reduce false positives, especially for devices that
present as two bluetooth devices such as the GTR 4.
2024-02-01 18:47:36 +00:00
José Rebelo
34fd18885a Zepp OS: Refactor firmware uploads
Zepp OS 3 firmware upgrades are big (200MB+). Gadgetbridge was crashing,
since the entire firmware file would be pulled into memory.

This commit unifies all the logic for Zepp OS firmware handling.

However, since the needed refactor was big, this commit duplicates some
of the code from Huami classes, namely:
- ZeppOsFirmwareUpdateOperation clones UpdateFirmwareOperation2020
- ZeppOsFwInstallHandler clones AbstractMiBandFWInstallHandler

This avoids changes to older device logic and introducing regressions.

Lost functionality:
- Repackaging firmwares as UIHH (does not seem to be needed, and was not
  used anyway). Code can be recovered from this commit if needed in the
  future
- Whitelisted firmwares by checksum (we do not have a lot of them at
  this point anyway)

Other misc changes:
- Rename ZipFile to GBZipFile not to clash with the java class

Tested by updating the Amazfit GTR 4 to Zepp OS 3.
2024-02-01 18:47:28 +00:00
Martin.JM
4b38a67a58 Fix Huawei exceptions related to early packets
Also adds more robust tag checks for Huawei packets
2024-01-30 12:15:46 +01:00
José Rebelo
773132c4e1 Make all Zepp OS classes explicit
There are still some actual "Huami 2021" classes that are used in
non-ZeppOS devices, but this refactor improves the distinction.
2024-01-29 23:30:28 +00:00
Damien 'Psolyca' Gaignon
86461ada1a
[Huawei] Add new Crypto and authMode 2024-01-29 21:51:45 +01:00
Damien 'Psolyca' Gaignon
f759072a7c
[Huawei] Add PBKDF2 crypto 2024-01-29 21:34:08 +01:00
Damien 'Psolyca' Gaignon
2b5a49641a
[Huawei] Fix clientNonce for HiChainLite 2024-01-29 21:21:20 +01:00
José Rebelo
61116c5fc8 Upgrade to gradlew 7.6, mockito-core 2.28.2
Fixes the unit tests after the AGP upgrade from 1a92bcf8a
2024-01-29 18:50:40 +00:00
José Rebelo
c472f0ab9a Redmi Watch 2: Experimental support 2024-01-29 18:14:34 +00:00
opcode
cf0e8be816 Xiaomi: Further sleep parsing fix 2024-01-28 21:01:20 +00:00
José Rebelo
b0ff9eae88 MusicManager: Fix NPE when music not playing 2024-01-28 20:26:35 +00:00
Damien 'Psolyca' Gaignon
a53d59f907
Add AW for bond request 2024-01-28 20:46:47 +01:00
Damien 'Psolyca' Gaignon
b860ab116f
Add uncrypted transactions for TalkBand 6 2024-01-28 20:46:47 +01:00
Damien 'Psolyca' Gaignon
2a41b77ffc
Add uncrypted transactions for GT3 2024-01-28 20:46:46 +01:00
Damien 'Psolyca' Gaignon
a64317fe7a
Add uncrypted transactions for GT2 2024-01-28 20:46:46 +01:00
Damien 'Psolyca' Gaignon
e974d00104
Set transaction encryption to false 2024-01-28 20:46:45 +01:00
Damien 'Psolyca' Gaignon
0ed9e5b1a8
Fix normal mode connection 2024-01-28 20:46:45 +01:00
Damien 'Psolyca' Gaignon
0e5545191d
Add Honor Magic Watch 2 2024-01-28 20:46:27 +01:00
José Rebelo
5999eb01d0 Nothing CMF Watch Pro: Initial support 2024-01-28 18:46:13 +00:00
Denis Pitzalis
207a2a9b01 initial support for sony WI-SP600N (#3522)
Initial support for sony wi-sp600n reported working . minor difference with the inspiring wf-sp800n

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3522
Co-authored-by: Denis Pitzalis <denics@free.fr>
Co-committed-by: Denis Pitzalis <denics@free.fr>
2024-01-27 23:21:11 +00:00
Aleksandr Ivanov
139e9cfb14 Pebble: fix of app configuration webview 2024-01-28 01:54:12 +03:00
opcode
4dbe5744da Xiaomi: Fix parsing sleep headers 2024-01-26 21:49:40 +01:00
José Rebelo
1a92bcf8a5 Upgrade to Android Gradle Plugin 7.4.2
Rename "main" flavor to "mainline", since that breaks the build.

https://stackoverflow.com/questions/72775247/productflavors-main-gradle-error-multiple-entries-with-same-key-main-and
2024-01-22 20:18:49 +00:00
MrYoranimo
8a7de15841 BtLEQueue: update device state on main looper
If the device connection state is updated from two threads simultaneously
(as in, from the main looper and from the thread that handles
BluetoothDevice.connectGatt), a second update may get overridden by the
first update if the broadcasts are handled out-of-order by the
LocalBroadcastManager.

By updating the device state through a handler on the main looper, the
broadcasts are sent in order as they are processed from the looper's
queue.

This may be a potential solve for issue #3524.
2024-01-21 01:56:34 +01:00
José Rebelo
7955bdfb6f Xiaomi: Improve sleep parsing
- Some devices send a random int 0, which would prevent sleep stage
  parsing
- Some devices send the details as a file of type summary, but same
  structure
- It is still not stable for all devices

Thanks to @opcode for the parsing logic
2024-01-20 23:16:36 +00:00
José Rebelo
6b2cb05027 Xiaomi: Fetch manual samples 2024-01-18 21:06:40 +00:00
José Rebelo
ec01e456aa Fix material design switch on sleep mode preferences
Fixes #3516
2024-01-18 18:12:27 +00:00
José Rebelo
94c763ef99 Zepp OS: Ensure all communication respects service encryption flag
Not all communication was moved to services, and some might not be
respecting the encryption flag sent during initialization implemented
in 3a2b02df2. Some services are encrypted or not across different
watches - see #3308.
2024-01-17 20:43:17 +00:00
José Rebelo
0e56af4ce9 Xiaomi Watch S3: Experimental support 2024-01-17 20:29:06 +00:00
MrYoranimo
b395e889c3 Xiaomi: temporary fix for database errors when reconnecting 2024-01-17 20:16:38 +00:00
MrYoranimo
7f68dc5449 Set default year for date-of-birth to 1970
Prevent undefined behavior on devices that do not have a range check on
the year from the DOB before calculating someone's age
2024-01-17 20:16:38 +00:00
MrYoranimo
1185699c56 BtBRQueue: use Handler(Thread) for sending messages and connecting socket 2024-01-17 20:16:38 +00:00
MrYoranimo
ae97e961b9 Xiaomi: add potential service and characteristic UUIDs 2024-01-17 20:16:38 +00:00
MrYoranimo
339859c829 Xiaomi: change BLE max chunk size with MTU changes 2024-01-17 20:16:38 +00:00
MrYoranimo
53a7cc5b30 Xiaomi: run data upload service finalization on respective queue 2024-01-17 20:16:38 +00:00
MrYoranimo
d217a0b15f Xiaomi: fix only short-bytes from int nonce being used during encryption 2024-01-17 20:16:38 +00:00
MrYoranimo
b9cbd14ffe Xiaomi: fix logic for ability to select widget workout type 2024-01-17 20:16:38 +00:00
MrYoranimo
b31d98c7a0 Xiaomi: add support for data uploading over SPP 2024-01-17 20:16:38 +00:00
MrYoranimo
e5c2bd51c2 Xiaomi: refactor XiaomiCharacteristic to use callback per message 2024-01-17 20:16:38 +00:00
MrYoranimo
592a52054f Xiaomi: request battery level and charging state on an interval 2024-01-17 20:16:38 +00:00
MrYoranimo
429d717630 Xiaomi: recognize a full battery as a valid charger state 2024-01-17 20:16:38 +00:00
MrYoranimo
2ef461ab90 Add header to device-specific activity data settings 2024-01-17 20:16:38 +00:00
MrYoranimo
399248e22c Xiaomi: allow forcing the connection type from connection settings 2024-01-17 20:16:38 +00:00
MrYoranimo
2812ad1429 Xiaomi Watch S1 Active: disable find device and override connection type 2024-01-17 20:16:38 +00:00
MrYoranimo
815582354d Redmi Watch 3 Active: override connection type 2024-01-17 20:16:38 +00:00