1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-07-07 14:11:36 +02:00
Commit Graph

2857 Commits

Author SHA1 Message Date
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
opcode
4dbe5744da Xiaomi: Fix parsing sleep headers 2024-01-26 21:49:40 +01: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
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
MrYoranimo
b395e889c3 Xiaomi: temporary fix for database errors when reconnecting 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
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
399248e22c Xiaomi: allow forcing the connection type from connection settings 2024-01-17 20:16:38 +00:00
MrYoranimo
ce179a29ae Xiaomi: introduce XiaomiSppSupport 2024-01-17 20:16:38 +00:00
MrYoranimo
ac1991104b BtLEQueue: add null check in onMtuChanged for mWaitForActionResultLatch 2024-01-17 20:16:38 +00:00
MrYoranimo
98e8ec2329 Xiaomi: Introduce XiaomiConnectionSupport
Co-Authored-By: José Rebelo <joserebelo@outlook.com>
2024-01-17 20:16:38 +00:00
José Rebelo
4231e97cff Sony Headphones: Allow choice of protocol version 2024-01-17 18:48:10 +00:00
Martin.JM
e6aa0afa7e Fix huawei debug request 2024-01-17 14:55:13 +01:00
José Rebelo
3a2b02df2a Zepp OS: Query supported services and encryption flag 2024-01-15 21:27:01 +00:00
foxstidious
ba59c62fa4 Add support for snooze alarm on CasioGBX100 devices 2024-01-14 20:29:30 +00:00
opcode
f5cf21bf05 Xiaomi: Parse SleepSummary 2024-01-14 17:02:42 +00:00
opcode
e06b2e1f95 Xiaomi: Implement sleep stage parsing
This allows sleep stage detection to work by parsing
some of the data sent in SleepDetails.

It's still missing parsing the summary contained inside SleepDetails.
and decoding the large amount of other mostly unknown data.
2024-01-14 17:02:42 +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
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
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
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
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
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