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
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
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
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
José Rebelo
5999eb01d0
Nothing CMF Watch Pro: Initial support
2024-01-28 18:46:13 +00:00
FYG_license_bot_ignore_me
4c7476845b
Update license headers and CONTRIBUTORS file
2024-01-10 19:01:48 +01:00
José Rebelo
ab894ae433
Extract hardcoded activity summary entries to constants
2024-01-06 13:54:06 +00:00
José Rebelo
4a7a201971
Pixoo: Support custom device name
2023-12-23 21:27:57 +00:00
José Rebelo
9df3ae9c2e
Amazfit T-Rex Pro: Add activate display on lift sensitivity
2023-12-13 20:45:37 +00:00
José Rebelo
efc8752a66
Zepp OS: Toggle phone silent mode from band
2023-12-11 10:50:50 +00:00
José Rebelo
4dbf9bb8ac
Huami: Toggle phone silent mode from band
2023-12-11 10:50:31 +00:00
MrYoranimo
435d41aca0
Huami/Xiaomi: centralize handling of device state events
...
Gadgetbridge can be configured to perform an action when a
Huami device is taken off or the user was detected to fall asleep or
wake up. This functionality was specific to Huami devices, but this
changeset moves this upstream to the AbstractDeviceSupport class in
combination with new GBDeviceEvents.
Now that the ADS has centralized support for this functionality, the
same logic can be used for other devices. In this case, an
implementation is added for supported Xiaomi devices.
2023-12-09 00:20:22 +01:00
José Rebelo
f29995b571
Zepp OS: Allow disabling app notifications per device
2023-12-08 11:29:20 +00:00
José Rebelo
77329813b9
Use simple summary provider for vibration pattern counts
2023-12-08 10:45:07 +00:00
José Rebelo
03dbf7533f
Xiaomi: Get canned messages from watch
2023-12-06 11:18:13 +00:00
José Rebelo
9ddbcc0c8a
Xiaomi: Use display items labels from watch
2023-12-05 18:20:02 +00:00
José Rebelo
3ab1ac26db
Refactor known preference values code to be reusable
2023-12-05 18:20:02 +00:00
José Rebelo
ba0ca1de75
Delegate auth key validation to coordinator
2023-12-02 10:59:34 +00:00
José Rebelo
5be3543fa3
Xiaomi Smart Band 7 Pro: Experimental support
2023-11-29 21:18:52 +00:00
José Rebelo
636f4adc8d
Zepp OS: Delete device data when deleting device
2023-11-26 21:01:32 +00:00
José Rebelo
8bd7e103d0
Update changelog
2023-11-25 22:30:25 +00:00
José Rebelo
5abd46d7ba
Amazfit T-Rex Ultra: Remove experimental
2023-11-09 21:52:14 +00:00
José Rebelo
4c4e18560f
Amazfit Bip 5: Remove experimental
2023-11-03 20:53:01 +00:00
José Rebelo
0c47d12c0f
Amazfit Active / Active Edge: Experimental support
2023-10-29 19:19:20 +00:00
José Rebelo
f090898aef
Zepp OS: Add statistics fetch operation
...
We do not know what they are or how to parse them, but syncing them
helps free up space from the band.
2023-10-18 16:17:41 +01:00
José Rebelo
5a65bbf8f4
Zepp OS: Add temperature fetch operation (no DB / UI)
2023-10-18 15:46:58 +01:00
Reiner Herrmann
4abde0766d
Zepp OS: display swimming-related activity data
2023-10-16 23:35:10 +02:00
Maxime Reyrolle
ff6d6f5e53
add initial support for Amazfit Balance
2023-10-15 13:41:53 +00:00
José Rebelo
ad42255ea1
Amazfit T-Rex: Fix activity summary parsing
2023-10-08 21:27:05 +01:00
Daniel Dakhno
ef1d38d9d3
Device Manager: replaced getSupportedType with supports method
...
Huami: introduced getSupportedDeviceName
Huami: implemented getSupportedDeviceName
Huami: fixed typo
Device manager: added error on empty getSupportedDeviceName and empty supports()
Device manager: migrated more devices to getSupportedDeviceName
Device manager: simplified default supports implementation
Device manager: added caching for getSupportedDeviceName pattern
Device manager: added caching DeviceType resolution
Device manager: changed pattern matching find()->matches()
Device manager: use Candidate as caching key
Device manager: more verbose variable initialization
Device manager: fixed typo
Device manager: removed device caching from DeviceHelper
Gradle: removed protoc binary
Device manager: moved more devices to getSupportedDeviceName
Device manager: reduced usages of String.format
Device Vesc: removed multiple device types
Device management: regex improvements
Makibes HR3: fixed device recognition regex
2023-10-05 20:34:53 +00:00
Daniel Dakhno
b97b26ce3a
Device manager: moved device icons and name to Coordinator
2023-09-28 00:11:02 +03:00
José Rebelo
9fe5bc049f
Remove stray character
2023-09-19 20:48:20 +01:00
José Rebelo
a85246c279
Use GBDeviceCandidate#getName on all coordinators
2023-09-19 20:45:13 +01:00
Daniel Dakhno
8c48a49d3a
Mi Band HRX: added DeviceType for Mi Band HRX
...
Mi Band HRX: changed DeviceType key for MIBAND_HRX
Mi Band HRX: added migration to MIBAND_HRX
Mi Band HRX: added devicetype string for MIBAND_HRX
Huami HRX: removed redundant null check
Huami HRX: removed redundant supports callback
2023-09-18 22:08:09 +00:00
José Rebelo
e855cfec08
Amazfit GTR Mini: Remove experimental, change AGPS updates to not use file transfer
2023-09-16 14:55:27 +01:00
José Rebelo
763ee10a6c
Fix support classes for some Amazfit devices
...
Affected devices:
- Amazfit Bip Lite
- Amazfit Bip S Lite
- Amazfit GTS 2 Mini
- Amazfit Pop
- Amazfit Pop Pro
2023-09-14 22:05:27 +01:00
Arjan Schrijver
557bfea35c
Add lint baseline, enable linting on CI, fix some reported errors ( #3291 )
...
This PR:
- fixes some errors reported by `gradlew lint` and the Android Studio "Code Inspection" tool
- adds a snapshot file `lint-baseline.xml` of the remaining lint errors and warnings to be used by the linter as baseline
- adds a job for CI to run `gradlew lint` on every build
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3291
Reviewed-by: José Rebelo <joserebelo@noreply.codeberg.org>
Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Co-committed-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
2023-09-11 09:17:04 +00:00
José Rebelo
200cfdf29a
Revert "Amazfit Bip 3 Pro: Enable HR stats and sleep respiratory rate"
...
Per the feedback on #3249 , this does not seem to be supported.
This reverts commit 42f35259fc
.
2023-08-27 17:45:57 +01:00
José Rebelo
42f35259fc
Amazfit Bip 3 Pro: Enable HR stats and sleep respiratory rate
2023-08-26 17:52:10 +01:00
Daniel Dakhno
e36bd2eae7
Core: replaced device initialization logic with class based decision
...
Core: cleaned up imports
Device management: try single-argument-constructor first
Device management: fixed wrong device support class
Device management: added missing initial flags for Mi band 2 HRX
Device management: removed unused import
Device management: removed unused import
Device management: improved exception handling
Device management: prevent constructors from being optimized out
Device management: added UnknownDeviceSupport
2023-08-26 08:14:06 +00:00
José Rebelo
454d766e88
Zepp OS: Add all remaining devices as experimental
2023-08-18 12:16:36 +01:00
Raghd Hamzeh
c8e19a2466
feat: add initial support for Amazfit Cheetah Pro
2023-08-16 22:19:48 -04:00
José Rebelo
b297e767ad
Amazfit Bip 3 Pro: Initial support
2023-08-16 12:27:00 +01:00
José Rebelo
0e06bde741
Zepp OS: Enable AGPS updates for all devices
2023-08-12 13:25:19 +01:00
José Rebelo
606e20a065
Amazfit GTR/S 3: Enable AGPS Updates
2023-07-25 21:47:12 +01:00
Daniele Gobbetti
540a4499f6
Miband 6: enable PAI and Stress support
2023-07-25 18:23:15 +02:00
vanous
849337b447
Amazfit Neo: Enable PAI
2023-07-16 22:57:18 +02:00
José Rebelo
4c7920133b
Amazfit GTS 2e: Add activate display on lift sensitivity
2023-07-11 18:19:43 +01:00