Rex_sa
f4c353dca7
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2359 of 2359 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-01-10 23:54:05 +01:00
陈少举
dd779804e6
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2359 of 2359 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-01-10 23:54:05 +01:00
gallegonovato
42763d1b86
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2359 of 2359 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-01-10 23:54:05 +01:00
arjan-s
25eb1417b0
Translated using Weblate (Dutch)
...
Currently translated at 100.0% (2358 of 2358 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/nl/
2024-01-10 23:54:05 +01:00
0que
8260016dc7
Translated using Weblate (Russian)
...
Currently translated at 99.4% (2344 of 2358 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-01-10 23:54:05 +01:00
Rex_sa
637d9048cb
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2358 of 2358 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-01-10 23:54:05 +01:00
Mozart Michael
b914dd48c2
Translated using Weblate (Romanian)
...
Currently translated at 6.8% (161 of 2358 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ro/
2024-01-10 23:54:05 +01:00
陈少举
270c3269c6
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2358 of 2358 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-01-10 23:54:05 +01:00
arjan-s
97d0ce44c4
Translated using Weblate (Dutch)
...
Currently translated at 100.0% (2358 of 2358 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/nl/
2024-01-10 23:54:05 +01:00
gallegonovato
02be91e85c
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2358 of 2358 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-01-10 23:54:05 +01:00
gallegonovato
a239cbb26d
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2357 of 2357 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-01-10 23:54:05 +01:00
Rex_sa
eed97c7ff4
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2356 of 2356 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-01-10 23:54:05 +01:00
arjan-s
80f179a0ca
Translated using Weblate (Dutch)
...
Currently translated at 100.0% (2356 of 2356 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/nl/
2024-01-10 23:54:05 +01:00
0que
a0ddfe07b1
Translated using Weblate (Russian)
...
Currently translated at 99.4% (2342 of 2356 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-01-10 23:54:05 +01:00
陈少举
f3b0bc8132
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2356 of 2356 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-01-10 23:54:05 +01:00
gallegonovato
c2cd0d581f
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2356 of 2356 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-01-10 23:54:04 +01:00
Rex_sa
53fae9d6b5
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2331 of 2331 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-01-10 23:54:04 +01:00
陈少举
aef6ff01ef
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2331 of 2331 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-01-10 23:54:04 +01:00
arjan-s
29d9d0613d
Translated using Weblate (Dutch)
...
Currently translated at 100.0% (2331 of 2331 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/nl/
2024-01-10 23:54:04 +01:00
0que
8070800bbe
Translated using Weblate (Russian)
...
Currently translated at 99.4% (2319 of 2331 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-01-10 23:54:04 +01:00
Xtremo3
6cbf39aa84
Translated using Weblate (Polish)
...
Currently translated at 100.0% (2331 of 2331 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/pl/
2024-01-10 23:54:04 +01:00
glemco
f5b22824c8
Translated using Weblate (Italian)
...
Currently translated at 96.4% (2249 of 2331 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/it/
2024-01-10 23:54:04 +01:00
Manuel-Senpai
7fe9ffa914
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2331 of 2331 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-01-10 23:54:04 +01:00
gallegonovato
79e419f12b
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2327 of 2327 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-01-10 23:54:04 +01:00
Mozart Michael
984b22d55f
Translated using Weblate (Romanian)
...
Currently translated at 6.9% (161 of 2323 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ro/
2024-01-10 23:54:04 +01:00
José Rebelo
8d7a6be7eb
Xiaomi: Enable activity fetching for all devices
2024-01-10 22:39:04 +00:00
José Rebelo
823bd829ce
Zepp OS: Add some missing control center items
2024-01-10 19:47:25 +00:00
Martin.JM
704875c3c2
Update license headers
2024-01-10 18:25:20 +00:00
FYG_license_bot_ignore_me
4c7476845b
Update license headers and CONTRIBUTORS file
2024-01-10 19:01:48 +01:00
José Rebelo
d63db41f90
Huami: Display proper error when battery too low to install firmware
2024-01-09 19:12:03 +00:00
José Rebelo
aeec68aeef
Huami: Fetch SpO2 on devices that support it
2024-01-09 17:43:43 +00:00
myxor
5e6d18d413
Debug screen: put both weather buttons in one line next to each other
2024-01-09 17:31:04 +00:00
opcode
372aa88e6e
Xiaomi: Weather fixes and Implement wind and AQI
...
Many fields were incorrectly being sent as uint32 instead of sint32. This caused issues with forecast icons.
2024-01-09 17:28:50 +00:00
Damien 'Psolyca' Gaignon
cb7121a32e
Huawei : Change method to get device name
2024-01-09 17:27:37 +00:00
José Rebelo
9bfe3dcd5f
Huawei: Fix tests
...
- Allow the calendar to be passed as parameter for tests
- Disable the setWearMessage test, for now, broken since 5b0736b751
2024-01-09 17:27:18 +00:00
Damien 'Psolyca' Gaignon
e489d0d811
Fix string comparison
2024-01-08 21:29:57 +01:00
Davis Mosenkovs
5bcebe9590
Disconnect all devices that are not NOT_CONNECTED
...
Disconnect devices in all states except GBDevice.State.NOT_CONNECTED.
This should fix devices getting stuck in GBDevice.State.CONNECTING state
when Bluetooth is switched off.
2024-01-08 17:11:33 +00:00
Davis Mosenkovs
9e10da062e
Add "Reconnect only to connected devices" setting
...
* Add general_reconnectonlytoconnected setting.
* Replace last_device_address shared prefs string with
last_device_addresses shared prefs string set.
Bluetooth address of a device is added to last_device_addresses when
connecting to the device.
Bluetooth address of a device is removed from last_device_addresses only
when deleting the device or explicitly disconnecting from the device
(e.g. by selecting "Disconnect" in the device tile menu).
* Adjust ExternalPebbleJSActivity to better support multiple connected
devices.
2024-01-08 17:11:33 +00:00
Davis Mosenkovs
904a7807a8
Automatically connect to all devices
...
Automatically connect to all devices instead of connecting only to the
last connected device.
2024-01-08 17:11:33 +00:00
José Rebelo
705361ae3a
Huawei: Fix linter
...
Math.multiplyExact is only available on SDK24 onward. We do not expect
an overflow to occur here, since the hashLength is fixed and the outputLength
is small (32 on all current calls).
2024-01-08 13:43:26 +00:00
Damien 'Psolyca' Gaignon
0c22ecdd51
Huawei: Add initial support for Huawei-Honor
2024-01-07 23:18:08 +01:00
José Rebelo
ab894ae433
Extract hardcoded activity summary entries to constants
2024-01-06 13:54:06 +00:00
José Rebelo
4e54f8137d
Xiaomi: Improve walking v2 parsing
2024-01-05 21:29:12 +00:00
José Rebelo
a61f7d70d5
Xiaomi: Parse indoor cycling
2024-01-05 21:25:17 +00:00
José Rebelo
dd1843505e
Xiaomi: Fix extreme hr zone parsing
2024-01-05 21:07:22 +00:00
José Rebelo
f7258034cc
Xiaomi: Refactor workout summary parsing
2024-01-05 21:04:19 +00:00
José Rebelo
05d8f99312
Nothing Ear (Stick): Initial support
...
- Refactor common coordinator logic to AbstractEarCoordinator
- Increment message counter on the stick
- Make audio modes translatable
2024-01-05 09:35:03 +00:00
FintasticMan
ecd13b4d8e
Update to new simple weather spec
2024-01-04 20:34:21 +00:00
FintasticMan
655d202512
Add simple weather condition
...
Co-authored-by: Victor Kareh <vkareh@redhat.com>
2024-01-04 20:34:21 +00:00
FintasticMan
127867441a
Add support for InfiniTime's new simple weather
...
Co-authored-by: Jean-François Milants <jf@codingfield.com>
2024-01-04 20:34:21 +00:00
José Rebelo
4d5ce069aa
Nothing Ear (2): Initial support
2024-01-04 19:15:07 +00:00
José Rebelo
932ec8336c
Xiaomi: Fix persisting unknown workouts
2024-01-03 21:37:27 +00:00
José Rebelo
951d8f25b7
Xiaomi: Add indoor cycling
2024-01-03 21:35:18 +00:00
Jean-François Milants
73a3a4b603
Fix DFU MTU value for PineTime
...
Explicitely disable the request MTU feature from the NRF DFU library to ensure that it'll send 20 bytes packets (instead of 253B, which will crash InfiniTime).
2024-01-03 20:42:22 +00:00
Roberto P. Rubio
6cc57a15f5
Adds a specific Notifications Channel to Connection Status Notifications
2024-01-01 19:30:42 +00:00
José Rebelo
fa6489b300
Redmi Smart Band Pro: Experimental support
2024-01-01 12:18:36 +00:00
José Rebelo
70e1d852ba
Xiaomi: Fix crash when parsing unknown workout summary
2023-12-30 18:37:22 +00:00
José Rebelo
1907912bd2
Xiaomi: Fix outdoor walking parsing on some watches
2023-12-29 19:54:43 +00:00
José Rebelo
e14b2fc382
Pixoo: Enable flashing
2023-12-26 22:12:22 +00:00
José Rebelo
c9fec4e33a
Xiaomi: Identify strength training, elliptical and outdoor running
2023-12-26 22:07:35 +00:00
José Rebelo
aa7c2b1731
Xiaomi: Improve workout summary parsing
...
Outdoor walking on the Mi Band 8, but does not seem to match the summary
from the Mi Band 7 Pro.
2023-12-26 22:02:43 +00:00
Andreas Shimokawa
177fa56bb9
Pixoo: Quick hack to "install" any image on the pixoo
2023-12-26 20:38:13 +01:00
José Rebelo
b77ba8b74c
Pebble: Attempt to fix app configuration webview
...
See #3373 and possibly #3424
2023-12-26 16:48:59 +00:00
Andreas Shimokawa
f4d7a6b490
Pixoo: implement sending bitmaps
...
Not really used right not - mapped to "test new functionality"
2023-12-26 01:14:16 +01:00
José Rebelo
09fbc2665b
Redmi Watch 2 Lite: Experimental support
2023-12-24 16:38:11 +00:00
José Rebelo
1cfd00c924
Pixoo: Add setting to disable notifications
2023-12-23 21:51:54 +00:00
José Rebelo
4a7a201971
Pixoo: Support custom device name
2023-12-23 21:27:57 +00:00
Arjan Schrijver
9c619c6c7c
Fossil/Skagen Hybrids: Make navigation options texts translatable
2023-12-23 22:13:36 +01:00
Arjan Schrijver
7aeb0dd2ef
Fossil/Skagen Hybrids: Update navigationApp to 1.1
...
Changes:
- Support locking (keep visible and let hands display time)
- Support merge navigation instruction
- Support wrist flick gesture to move hands
- Support GB-configurable foreground and vibration behaviour
2023-12-23 22:05:51 +01:00
José Rebelo
5ffed2aa62
Xiaomi: Fix crash if device does not provide full stress and spo2 data
2023-12-23 14:08:39 +00:00
José Rebelo
a62ff4eabb
Xiaomi: Improve activity details parsing on some devices
2023-12-22 22:44:30 +00:00
José Rebelo
71b55902d0
Mi Band 7 Pro: Disable PAI
...
Reported not supported on matrix.
2023-12-22 22:42:27 +00:00
José Rebelo
fb803cbdda
Xiaomi: Enable REM sleep
2023-12-22 22:21:51 +00:00
José Rebelo
b79f774e3e
Xiaomi: Add debug function to parse all activity files from storage
2023-12-22 22:21:51 +00:00
José Rebelo
09c33b3541
Xiaomi: Persist and overlay sleep stages
2023-12-22 22:21:51 +00:00
José Rebelo
82863ff305
Xiaomi: Add sleep stages parser
...
From Alice
2023-12-22 19:19:56 +00:00
José Rebelo
b535784117
Mijia LYWSD03MMC: Initial support
...
Same protocol as LYWSD02, but does not support setting the time.
2023-12-22 12:35:35 +00:00
José Rebelo
149b6236a0
Mijia LYWSD: Make support class generic
2023-12-22 12:26:15 +00:00
Arjan Schrijver
4c0750e75a
Add missing navigation actions to GMaps handler
2023-12-21 11:16:23 +01:00
LuK1337
0ca35ad935
Xiaomi: Handle find phone messages without system
properly
...
After find phone is stopped, watch sends a `Command` message back
without `system` set, and because of missing hasSystem() check, we'd
wrongly go to condition that sets findPhoneEvent.event to START.
2023-12-20 19:32:17 +00:00
José Rebelo
cb66cd742a
Xiaomi: Enable activity sync on debug and nightly builds
2023-12-20 19:09:49 +00:00
Andreas Shimokawa
4f75141d76
pixoo: add missing settings xml file
2023-12-20 15:05:23 +01:00
Andreas Shimokawa
81c9aa5faf
Pixoo: support "clap hands to turn off screen" and "sleep after silence" settings
...
Also fix crc calculation :P
2023-12-19 21:08:25 +01:00
Andreas Shimokawa
198800e087
Pixoo: Decode alarms from device, support sending alarms
...
This is probably not quite right yet.
Also we need to properly chunk incoming protocol messages before decoding them
2023-12-19 10:58:49 +01:00
Andreas Shimokawa
ea0817f7b6
Use TextUtils.join intead of String.join, to make at least the linter happy
...
It is not clear to me if this would get desugarized anyway, but linter says needs API 26
2023-12-16 19:37:40 +01:00
Andreas Shimokawa
c58d45423e
bump version, update fastlane and xml changelog
2023-12-16 18:28:01 +01:00
José Rebelo
48e1bc1a8a
ColaCao 2021 / 2023: Initial support
...
Reports in #3455 and #2955 mention that everything works, except HR,
which crashes the devices (they do not have an HR sensor), so we just
disable HR support.
2023-12-14 21:53:30 +00:00
Arjan Schrijver
730841e9a1
Convert last remaining Switches to MaterialSwitch
...
Fixes #3454
2023-12-14 13:24:04 +01:00
José Rebelo
9df3ae9c2e
Amazfit T-Rex Pro: Add activate display on lift sensitivity
2023-12-13 20:45:37 +00:00
José Rebelo
1c7289edfa
Xiaomi: Fix secondary goal config
2023-12-12 21:27:50 +00:00
José Rebelo
1028d2c0cd
Xiaomi: Display widget id when names are repeated
2023-12-12 20:58:42 +00:00
José Rebelo
cb3e10f07a
Xiaomi: Update stress ranges to match watch
2023-12-12 20:46:59 +00:00
José Rebelo
372cf563ea
Xiaomi: Add Vitality Score (PAI-like metric)
2023-12-12 20:27:15 +00:00
José Rebelo
bddec00de1
Xiaomi: Persist daily summary
2023-12-12 20:26:55 +00:00
José Rebelo
2d89fdf11b
Xiaomi: Fix widget set on some devices
2023-12-12 18:45:44 +00:00
José Rebelo
128aed005b
Xiaomi: Parse daily summary and workout gps tracks
2023-12-12 14:12:00 +00:00
José Rebelo
820956ccdc
Xiaomi: Disable activity fetching outside of Mi Band 8
...
It has a lot of issues, and should not be enabled to proceed with a
release.
2023-12-11 22:16:04 +00:00
José Rebelo
6de7af62e3
Xiaomi: Manage widgets
2023-12-11 22:00:16 +00:00
José Rebelo
108307c711
Redmi Smart Band 2: Experimental support
...
Characteristics taken from #3274
2023-12-11 13:58:00 +00:00
José Rebelo
fce33329ea
Xiaomi: Add class size warning to xiaomi.proto
2023-12-11 11:07:44 +00:00
José Rebelo
095b9e42d3
Xiaomi: Toggle phone silent mode from band
2023-12-11 10:51:10 +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
José Rebelo
8f2924c873
Xiaomi: Reject call with SMS reply
2023-12-10 22:12:16 +00:00
José Rebelo
e6aa9d276a
Xiaomi: Fix workout types on xiaomi.proto
2023-12-10 20:48:30 +00:00
José Rebelo
5ca3298e5b
Xiaomi: Update xiaomi.proto widgets and vibration patterns
2023-12-10 20:24:22 +00:00
José Rebelo
4051c7f7d4
Xiaomi: Add wear mode preference
2023-12-10 18:03:17 +00:00
José Rebelo
d28cff478c
Delete notifications from connected devices only
2023-12-10 17:28:15 +00:00
José Rebelo
9babbf504e
Xiaomi: Fix camera remote get typo
2023-12-10 13:30:14 +00:00
José Rebelo
bf9a5d90d4
Xiaomi: Add camera remote preference
2023-12-10 13:24:35 +00:00
José Rebelo
a3e2997f26
Xiaomi: Fix sleep mode schedule, spo2 and stress support detection
2023-12-10 12:31:19 +00:00
José Rebelo
8d1c243297
Xiaomi: Detect supported preferences
2023-12-10 12:24:59 +00:00
José Rebelo
c38d2044d8
Xiaomi: Add vitality score notification preferences
2023-12-10 11:19:01 +00:00
José Rebelo
dd0c9cf3e0
Xiaomi: Configure fitness goal notification and secondary goal
2023-12-10 11:02:22 +00:00
José Rebelo
4635bf018a
Xiaomi: Enable autoremove dismissed notifications preference
2023-12-10 10:42:07 +00:00
José Rebelo
18686e98c5
Xiaomi: Delete notification from watch when dismissed from phone
2023-12-10 10:36:14 +00:00
José Rebelo
ef73ea1bd5
Make LimitedQueue generic
2023-12-10 10:30:27 +00:00
José Rebelo
4d12ac93e7
Allow multiple device actions to be triggered for the same event
2023-12-09 11:40:28 +00:00
José Rebelo
25196a932e
Allow toggling DND through device actions
2023-12-09 11:01:55 +00:00
José Rebelo
577ee27c14
Intent API: Add debug action for test new function
2023-12-09 10:59:39 +00:00
MrYoranimo
0378f48798
Xiaomi: fix for invalid birthdate being sent in user info
2023-12-09 00:20:22 +01: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
2ff92c73f8
Xiaomi: Re-enable screen on on notifications preference
...
- Disabled by accident on 2063bc2df
- Move preference to XiaomiNotificationService
- Get preference value on connection
2023-12-08 20:55:58 +00:00
José Rebelo
2063bc2dfd
Xiaomi: Remove not-implemented preferences
2023-12-08 18:53:22 +00:00
José Rebelo
961e9f1bf9
Xiaomi: Fix sleep schedule preference
2023-12-08 18:53:11 +00:00
José Rebelo
6984572d33
Xiaomi: Allow notification open on phone
2023-12-08 12:12:35 +00:00
José Rebelo
2b8d8c2cb0
Xiaomi: Fix dismiss multiple notifications from watch
2023-12-08 11:49:47 +00:00
José Rebelo
6479cc3bb0
Xiaomi: Allow disabling app notifications per device
2023-12-08 11:39:53 +00: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
Andreas Shimokawa
b4aca410b4
Pixoo: implement some protocol for testing
2023-12-07 21:07:52 +01:00
Andreas Shimokawa
b44b0fec7e
Divoom Pixoo: Initial experimental support
...
Works:
- notifications
- call notification
- set time
- setting brightness
- setting 24h/12h format
- sending weather
Note
- this is implemented using using the classic bluetooth serial protocol, the
device can do BLE, but I don't know how to use it, as I did not have the
offical app to sniff.
- The information about the protocol comes from here
https://github.com/jfroehlich/node-p1x3lramen/blob/main/source/devices/pixoo.js
TODO:
- Enable beep? Possible? I heard it beep once at least when switching it on
- Getting out of factory mode? Why does it always play animations even when I
switch to the clock?
- Implement switching modes (can be done with the button)
- Implement sending own images and animations
- Firmware update?
- ...
2023-12-06 15:56:18 +01:00
José Rebelo
130e2ab85c
Xiaomi: Fix heart rate interval and sleep support
2023-12-06 11:51:01 +00:00
José Rebelo
03dbf7533f
Xiaomi: Get canned messages from watch
2023-12-06 11:18:13 +00:00
MrYoranimo
b902ee96c3
Xiaomi: improve battery level and charger status processing
...
Because the reporting of battery state is inconsistent between different
models, the device's battery state was not correctly processed in GB.
For at least the firmware on the Xiaomi Watch S1 Active, the charger
state is broadcast through a separate message from the message
containing the battery level. Even though the battery level was
requested by GB upon receiving this broadcast, the charger state got
discarded as it was expected to also be included in the result of the
subsequent request.
This patch changes the name of the `Charger` message to `DeviceState`
and includes more fields that may be presented by some device models.
Furthemore, the broadcast is cached so that the charger state can be
processed from this cache instead of the battery level response message.
2023-12-06 11:56:13 +01:00
MrYoranimo
405596d960
Xiaomi: check for null values before encoding MusicSpec to proto
2023-12-05 20:27:33 +01:00
MrYoranimo
561dc16b28
DeviceCommunicationService: catch uncaught exceptions from handleActions
...
Exceptions raised while handling actions in the device's support class
may result in the DeviceCommunicationService crashing as a whole and not
being started again until the user forces GB to make a connection by
pressing the device from the list.
This change is made, because Xiaomi devices make use of proto2 messages,
where optional fields cannot be set to null values as that will make it
throw NPEs.
2023-12-05 20:19:12 +01:00
José Rebelo
7f7834c620
Xiaomi: Fix reconnect if characteristics are null
...
If a service was found, but characteristics are null, maybe we're just
connecting too early - set the device to reconnect.
2023-12-05 18:30:33 +00:00
José Rebelo
4de7cb3591
Xiaomi: Improve service auto-detection
...
Some watches have the encrypted service, even though they're plaintext,
but are missing the characteristics.
2023-12-05 18:28:39 +00:00
José Rebelo
1c68252255
Xiaomi: Fix settings display items code
2023-12-05 18:20:02 +00:00
Andreas Shimokawa
776346d311
Xiaomi: guard against null pointer crash
2023-12-05 18:20:02 +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
2dacdcface
Xiaomi: Log service
2023-12-05 18:17:50 +00:00
José Rebelo
95d3ff81fd
Xiaomi: Fetch alarm and reminder slots from watch
2023-12-05 18:16:45 +00:00
MrYoranimo
5f9fda4f07
BtLEQueue: fix typo in onCharacteristicChange
2023-12-04 23:32:23 +01:00
MrYoranimo
b303da4e62
Xiaomi: wrap parsing of activity data in try block
...
This will prevent uncaught exceptions that occur during the
parsing of activity data from breaking up the activity fetching
chain and causing the task to never get completed.
2023-12-04 23:32:18 +01:00
MrYoranimo
0f83346d65
Xiaomi: check if binary parser result is null
...
The activity parser may return null pointers in case the version
of the data structure is not supported. Not checking for null here may
result in the activity fetching task may never complete and cause
further communication with the device to grind to a halt.
2023-12-04 22:03:59 +01:00
José Rebelo
376956bbe9
Xiaomi: Improve activity fetch logging
2023-12-04 09:46:49 +00:00
José Rebelo
e6cb15d9eb
Mi Watch Color Sport: Experimental support
2023-12-02 11:56:23 +00:00