MrYoranimo
b9cbd14ffe
Xiaomi: fix logic for ability to select widget workout type
2024-01-17 20:16:38 +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
José Rebelo
1c7289edfa
Xiaomi: Fix secondary goal config
2023-12-12 21:27:50 +00:00
José Rebelo
2d89fdf11b
Xiaomi: Fix widget set on some devices
2023-12-12 18:45:44 +00:00
José Rebelo
6de7af62e3
Xiaomi: Manage widgets
2023-12-11 22:00:16 +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
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
18686e98c5
Xiaomi: Delete notification from watch when dismissed from phone
2023-12-10 10:36:14 +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
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
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
José Rebelo
95d3ff81fd
Xiaomi: Fetch alarm and reminder slots from watch
2023-12-05 18:16:45 +00:00
Andreas Shimokawa
1b2a9ac140
Xiaomi: When sending contacts, use correct command to replace the ones already on the watch
2023-12-01 20:07:32 +01:00
Andreas Shimokawa
81e24e53ed
Xiaomi: WIP implementation for sending contacts
...
This is not useful yet because contacts just get added when sending them, instaed of replacing.
Should be fixed or disabled before the release
2023-12-01 12:40:53 +01:00
Andreas Shimokawa
6e5bedb365
Xiaomi: Implement Screen On on Notification setting
...
Works on Redmi Watch 3 Active
Does not work on Mi Watch Lite
2023-12-01 07:52:08 +01:00
MrYoranimo
b9b91db06f
Xiaomi: implement phonebook service to respond to contact info requests
2023-11-30 22:54:41 +01:00
MrYoranimo
20cdef5283
Change some required fields to optional in Xiaomi protobuf specs
...
The Xiaomi Watch S1 Active does not send some fields that have
been declared as `required`, which results in those messages
not being processed at all.
2023-11-29 20:27:44 +01:00
Andreas Shimokawa
6f2876fa66
Mi Watch 3 Lite: Fix firmware update
...
(not enabled yet)
2023-11-26 00:22:37 +01:00
José Rebelo
fa20bf66c6
Mi Band 8: Fix send gps location during workout
2023-11-25 21:16:53 +00:00
José Rebelo
dad97f9e96
Xiaomi: Update weather AQI and warning proto
2023-11-25 21:16:53 +00:00
Andreas Shimokawa
50f086b03a
Xiaomi: Implement daily forecast
...
Works on Mi Watch Lite
2023-11-25 21:16:53 +00:00
Andreas Shimokawa
0e3e406320
Xiaomi: Send AQI
...
Todo: map to strings
2023-11-25 21:16:53 +00:00
José Rebelo
047cc71d28
Mi Band 8: Upload custom notification icons
2023-11-25 21:16:53 +00:00
Andreas Shimokawa
9749716c23
Xiaomi: add two more fields to current weather (seen on Mi Band 8)
2023-11-25 21:16:53 +00:00
Andreas Shimokawa
929ea7ae57
Xiaomi: Implement sending current weather
...
TODO: Support °F, find out about unknown values
Tested on Mi Watch Lite
2023-11-25 21:16:53 +00:00
José Rebelo
29c183b88a
Xiaomi: Refactor to install firmware (untested)
2023-11-25 21:16:53 +00:00
José Rebelo
b0d3fe6a51
Xiaomi: Set device language
2023-11-25 21:16:53 +00:00
José Rebelo
4e680cfcce
Mi Band 8: List watchface in app management
2023-11-25 21:16:53 +00:00
José Rebelo
d3eb69fcf7
Mi Band 8: Send gps to watch (wip)
2023-11-25 21:16:53 +00:00
José Rebelo
453ce5eedb
Mi Band 8: Map some notification icon messages
2023-11-25 21:16:52 +00:00
Andreas Shimokawa
7de94432d0
Mi Watch Lite: authenticate via use XiaomiAuthService, handle subtype 5 send user id reply
...
This makes device info and battery status work since AuthService calls phase2Initialize()
2023-11-25 21:16:52 +00:00
Andreas Shimokawa
d3fa3e2c05
Xiaomi Protocol: Add userId auth command
2023-11-25 21:16:52 +00:00
José Rebelo
544909a970
Mi Band 8: Activity fetching basics
2023-11-25 21:16:52 +00:00
José Rebelo
ae0a7bb806
Mi Band 8: Activity fetch base (wip)
2023-11-25 21:16:52 +00:00
José Rebelo
a9b481d72d
Mi Band 8: Sync calendar events
2023-11-25 21:16:52 +00:00
José Rebelo
905dfc3323
Mi Band 8 proto: Start mapping DataUpload
2023-11-25 21:16:52 +00:00
José Rebelo
5cc40f554e
Mi Band 8: Widgets proto
2023-11-25 21:16:33 +00:00
José Rebelo
f286df9ecf
Mi Band 8: Notification and calls (working, but wip)
2023-11-25 21:16:33 +00:00
José Rebelo
94cde94fbc
Mi Band 8: Display items more section
2023-11-25 21:16:33 +00:00
José Rebelo
8a7e6649b7
Mi Band 8: Password (untested)
2023-11-25 21:16:33 +00:00
José Rebelo
e68d6dd7b7
Mi Band 8: Canned messages (wip)
2023-11-25 21:16:33 +00:00
José Rebelo
f23347c47d
Mi Band 8: Add broken notifications
2023-11-25 21:16:33 +00:00
José Rebelo
fda3b53657
Mi Band 8: Initial support (WIP)
2023-11-25 21:16:31 +00:00