Commit Graph

1781 Commits

Author SHA1 Message Date
José Rebelo
f95d85d7e8 Redmi Smart Band Pro: Fix crash on connection
Requesting alarms crashes the device - #3766
2024-08-20 13:10:57 +01:00
José Rebelo
d3957ddf9a Redmi Smart Band Pro: Ignore MAC during decryption
https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/3766#issuecomment-2182676
2024-08-20 13:10:51 +01:00
José Rebelo
cc5eadbc62 CMF Watch Pro 2: Negotiate authentication key 2024-08-19 10:15:13 +01:00
José Rebelo
2277c62cd2 Garmin Venu: Initial support 2024-08-18 18:21:55 +01:00
José Rebelo
94fae05b02 Mark getActivitySamples as deprecated and disable tests
Test regression introduced by the refactor in 34378a4a1

The function is not used a lot, and it's currently misleading alongside
getAllActivitySamples, so it could eventually be removed and the logic
simplified.
2024-08-17 19:56:17 +01:00
José Rebelo
79c2fc21a4 Garmin: Enable flashing 2024-08-17 12:13:08 +01:00
José Rebelo
90e36e0065 Push implicit callback modify and write request response to subclasses
Push the legacy values as overrides to all subclasses, ensuring that new
devices start with the expected correct behavior.

Overrides can be removed from the subclasses if devices are confirmed to
work without them / not rely on the erroneous behavior.
2024-08-17 10:12:57 +01:00
Vitaliy Tomin
1940db7204 huawei: Handle some watchface install errors
* handle too many watchface installed
* handle insufficient space
* sort related code while at it
2024-08-17 08:30:46 +00:00
Martin.JM
75047ecdea Huawei: Send OK when starting GPS
I hope this will solve #3990.
2024-08-16 23:26:48 +02:00
Daniele Gobbetti
29787d0c9b Garmin: add gpx import functionality for models that support it
Add a Field definition for GPS coordinates and remove the corresponding method from GarminUtils.
Add a new message COURSE and some fields to other known messages.

Also centralize some utility methods in GpxParser and GpxTrack, adapting ZeppOsGpxRouteFile.

Be aware that the capability used to identify the supported watches might be the wrong one.
2024-08-16 18:52:13 +02:00
José Rebelo
34378a4a11 Refactor ActivityKind into an enum 2024-08-14 23:13:12 +01:00
Severin von Wnuck-Lipinski
d1b4e013d3 Add defaults and fix NPE for Soundcore Motion 300 2024-08-12 22:55:26 +02:00
Severin von Wnuck-Lipinski
be3f8375f9 Add support for Soundcore Motion 300 2024-08-07 20:44:34 +00:00
Severin von Wnuck-Lipinski
1885b05168 Fix Soundcore Liberty package name 2024-08-07 20:44:34 +00:00
Severin von Wnuck-Lipinski
1a0ca0ce52 Move Soundcore Liberty code into subfolder 2024-08-07 20:44:34 +00:00
José Rebelo
a96432a8a3 Garmin Fenix 5 Plus: Experimental support 2024-08-06 19:36:37 +01:00
Martin.JM
f15f60542d Huawei: Fix for Huawei Band 9
Linked to #3784.
2024-08-06 18:28:09 +00:00
José Rebelo
dd93133168 Garmin Forerunner 965: Initial support 2024-08-05 23:25:56 +01:00
José Rebelo
7efeb14ca4 Test Device: Add HRV and body energy 2024-08-05 21:10:01 +01:00
José Rebelo
61e2411081 Garmin: Parse and persist body energy 2024-08-04 22:59:29 +01:00
a0z
f3b1a06d47 HRV Status (#3953)
Co-authored-by: a0z <a0z@tutamail.com>
Co-committed-by: a0z <a0z@tutamail.com>
2024-08-04 21:35:19 +00:00
José Rebelo
2f21c4bd9d Garmin: Fix sleep data if there is a gap in activity samples 2024-08-04 18:04:37 +01:00
Vitaliy Tomin
bf6d0d0f83 [Huawei] Add Huawei Watch GT Runner gadget
* created new gadget classes
* make tag 0x01 in TimeRequest response optional. There is no
such tag on GT Runner, at least on HarmonyOS 2 firmware.
2024-08-03 14:49:05 +00:00
José Rebelo
b33ab0b1c8 Garmin: Parse and persist HRV_STATUS 2024-08-02 21:43:54 +01:00
Me7c7
532c545093 Huawei: Correct processing of set time command during the pairing process. 2024-08-02 19:51:39 +03:00
Martin.JM
b242ad1ec5 Huawei: Expand capabilities fix 2024-08-01 21:06:13 +02:00
Martin.JM
6f83fc815f Huawei: Simple TruSleep support
Only supports start and end time of sleep periods.
2024-07-30 22:34:05 +02:00
Martin.JM
fbe727644e Huawei: Add UV index support
Also adds "0.0 to 15.0" comment to the weatherSpec uvIndex.
2024-07-30 14:19:11 +02:00
Marc
af9eec3189 initial support for Garmin Forerunner 255 Music 2024-07-29 19:42:54 +00:00
Peter Kannewitz
00d90f4b8b Garmin Forerunner 255S Music: Initial support (#3932)
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3932
Co-authored-by: Peter Kannewitz <peter.kannewitz@posteo.net>
Co-committed-by: Peter Kannewitz <peter.kannewitz@posteo.net>
2024-07-28 21:01:53 +00:00
Martin.JM
2dbf70cb77 Huawei: Fix for weather
- Also the sunrise/set cannot be zero
- We could send a single forecast more when exactly 7 are provided
- It seems like the watches may require exactly 8 days to be sent for
  the forecast - one of which is for today
2024-07-28 20:33:31 +02:00
Vitaliy Tomin
c380cf98bb Huawei: Fix Watch 3 music control
* it using integer button fields
*  it has button code 100 means exit from music
control screen, no need to poll music info on this code
2024-07-27 11:48:33 +00:00
José Rebelo
da74ad036a Xiaomi Protobuf: Fix deleting first screen 2024-07-26 23:22:00 +01:00
Martin.JM
82d12e5fbe Huawei: Fix for weather
If there is no moon rise/setting on a day, it should not be zero. It
should not be set at all. Some bands/watches don't care, but some might.
2024-07-26 21:03:27 +02:00
José Rebelo
7712ea773a Use ActivitySummaryData on CMF, Huami, Xiaomi, Zepp OS 2024-07-26 15:55:18 +01:00
José Rebelo
42de2fadd4 CMF Watch Pro: Do not send sunrise / sunset
Weather breaks since the watch does not support it.

Aditionally, only send up to 30 bytes for the location.
2024-07-26 10:54:26 +01:00
José Rebelo
d66f0cdd22 Vivitar HR & BP Monitor Activity Tracker: Initial support 2024-07-26 10:16:46 +01:00
José Rebelo
0aec5e0ad5 CMF Buds Pro 2: Initial support 2024-07-26 10:05:26 +01:00
Vitaliy Tomin
5a6a39d059 Huawei: Fix notification constraints for Watch 3
* Watch 3 reports some values as integer, while internal buffer
now uses short values. Actually all values here fits in short
so just cut leading zeros now. Addin exception for case cutted
values was non zeros
2024-07-25 21:43:34 +08:00
Vitaliy Tomin
a994603389 [Huawei] Add hichainlite related parsing code 2024-07-25 21:43:25 +08:00
Vitaliy Tomin
676678defb [huawei] Hacks for HiChainLite (Watch 3)
* use authMode instead of deviceSupportType
* set authMode to 4 for hichain 3 and set 2 for any other hichain
* use full HuaweiCrypto() constructor
2024-07-25 21:42:14 +08:00
Vitaliy Tomin
ae1cb4e893 [Huawei] Add Huawei Watch 3 gadget 2024-07-25 21:25:52 +08:00
Vitaliy Tomin
f4322eee7f Huawei: FileUpload refactoring, fixes Watch 3/4
* replaced fileType with fileId which recived on incoming data
in 28 03 FileHashSend.Response
* width/height in WatchfaceDeviceParams could be int or short
(int is present on Watch 3, short is all other tested devices)
* use in 27 05  WatchfaceConfirm.Request data recieved in previous
WatchfaceConfirm.Response
2024-07-24 19:03:41 +00:00
Vitaliy Tomin
5c5c0a48d4 Huawei: Improve watchface install support
* there are newer watchface files, which need to unpack inner
com.huawei.watchface as zip file and install watchface.bin
* also some description.xml has BOM which cause issue parsing as xml
2024-07-24 19:03:41 +00:00
José Rebelo
d2c6712a87 Update changelog 2024-07-20 17:43:24 +01:00
José Rebelo
ab05b566bd Zepp OS 3: Fix file transfer (notification icons, gpx upload) 2024-07-20 17:21:21 +01:00
José Rebelo
650b3ec7dd CMF Watch Pro 2: Experimental support 2024-07-18 22:15:36 +01:00
Clemens Zagler
6811caf8a6 Initial support for Garmin Vivosport 2024-07-14 12:18:52 +02:00
José Rebelo
124b1953aa Xiaomi: Add battery polling settings 2024-07-13 15:23:38 +01:00
Martin.JM
d7490639af Huawei: Event alarms fix
Should fix event alarms for the Huawei MagicWatch 2 (#3877).
2024-07-11 23:21:53 +02:00