Commit Graph
14152 Commits
Author SHA1 Message Date
Me7c7andJosé Rebelo 00e6e43344 Huawei: always fetch both sleep state and data files 2025-07-28 09:57:16 +02:00
Thomas KuehneandJosé Rebelo 8905fb9eb3 ble: use calcMaxWriteChunk instead of MTU-3 (#5156)
Starting with version 14 Android tries to negotiate MTU 517 when GB requests any MTU > 23.
If the negotiated MTU is larger than 515 the DeviceSupports may try to write 513 or 514 (MTU-3) bytes at once.
Writing more than 512 bytes into a characteristic with one BLE write action is always going to fail (Bluetooth specification).
2025-07-27 22:08:53 +02:00
Thomas KuehneandJosé Rebelo 7a30829bb6 ble+bt: use common time format for logging actions 2025-07-27 22:00:50 +02:00
José Rebelo 4536a0f42a Garmin: Map ECG fields 2025-07-27 15:05:42 +01:00
Me7c7andJosé Rebelo 2f971645f0 Huawei: respect Huawei devices calendar events limit 2025-07-27 15:13:26 +02:00
José Rebelo 2194559cb0 Huawei: Enforce 7d calendar lookahead 2025-07-27 11:06:23 +01:00
nxdtandJosé Rebelo 2a53f70ab5 Realme Buds T300: Added icons for Realme Buds T300 2025-07-27 11:55:42 +02:00
Thomas KuehneandJosé Rebelo 7bee3aa8c7 ble: reduce exposure to BtLEAction subclasses 2025-07-27 11:54:17 +02:00
Arjan SchrijverandArjan Schrijver 95c16c7eb5 Persist elevation received from OpenTracks 2025-07-26 22:22:00 +02:00
Arjan SchrijverandArjan Schrijver d6cb501e52 Modify OpenTracks trackpoint logic to use ActivityTrack 2025-07-26 22:22:00 +02:00
Arjan SchrijverandArjan Schrijver d4e917b5cd Save new GPX files from the Receiver and OpenTracks into gpx subdir 2025-07-26 22:22:00 +02:00
Arjan SchrijverandArjan Schrijver 3840595b35 Save track to GPX file when stopping OpenTracks recording 2025-07-26 22:22:00 +02:00
José Rebelo 26fdfb5df0 Garmin: Fix fetch notification progress
This GBProgressNotification API is not elegant and needs to be
refactored.
2025-07-26 19:41:43 +01:00
Thomas KuehneandJosé Rebelo 9de76bafef garmin: fix getDeviceNameResource value for Fenix 3 2025-07-26 20:23:42 +02:00
José Rebelo 88fd21cf35 Garmin: Introduce FitRecordDataBuilder, add Builders to all messages 2025-07-26 18:30:58 +01:00
José Rebelo 48993982e8 Garmin Fenix 3: Experimental support 2025-07-26 18:30:48 +01:00
José Rebelo 8554a32f06 Redmi Smart Band 3: Disable find device and manual HR 2025-07-26 16:51:04 +01:00
José Rebelo 58a594f289 Garmin HRM 200: Initial support 2025-07-26 15:54:28 +01:00
José RebeloandJosé Rebelo 77bfeff52e Coospo H6/HW9: Experimental support 2025-07-26 16:49:21 +02:00
José RebeloandJosé Rebelo a5dc7bbd2f Generic Heart Rate Sensor: Initial support 2025-07-26 16:49:21 +02:00
José RebeloandJosé Rebelo b354a33c5a Add long-press menu on discovery activity 2025-07-26 16:25:50 +02:00
José RebeloandJosé Rebelo e579ce0b47 Allow unsupported devices to follow normal pairing process 2025-07-26 16:25:50 +02:00
José RebeloandJosé Rebelo f6316777a1 Add auth key activity 2025-07-26 16:25:50 +02:00
dependency-botandJosé Rebelo 3cc6eafc49 Update dependency org.msgpack:msgpack-core to v0.9.10 2025-07-26 15:40:34 +02:00
José Rebelo f978c7da94 Fix toast on null firmware version 2025-07-26 14:32:50 +01:00
José Rebelo 0cbc079f43 Redmi Smart Band Pro: Disable PAI (#4666) 2025-07-26 14:21:31 +01:00
José Rebelo 69b2a4b88a Mi Band 10: Fix sleep parsing 2025-07-26 13:43:40 +01:00
José RebeloandJosé Rebelo d96b7a184c NotificationListener: Allow updates for notifications with pictures 2025-07-26 10:26:09 +02:00
Thomas KuehneandJosé Rebelo 8794e11720 ble: MTU handling in TransactionBuilder including MTUs > 515 (#5146)
This is especially relevant for Android 14
https://developer.android.com/about/versions/14/behavior-changes-all#mtu-set-to-517

AbstractBTLEDeviceSupport.calcMaxWriteChunk:
new function to properly calculate chunk size

TransactionBuilder.writeChunkedData:
if required automatically resize the chunk size

TransactionBuilder.write and TransactionBuilder.writeLegacy:
for now log an error but still attempt to write the data
2025-07-26 10:23:22 +02:00
José Rebelo 1445f35799 Update changelog 2025-07-25 23:34:14 +01:00
Colin KinlochandJosé Rebelo 6787b591c9 Xiaomi SPPv2: Add missing byte to timeout value size
This matches captured packets.
2025-07-25 01:29:12 +02:00
Thomas KuehneandJosé Rebelo 11e25b68aa log: use specific log instead of generic GB.log to streamline debugging 2025-07-25 01:25:46 +02:00
Thomas KuehneandJosé Rebelo 741aad0674 log: improve start/finish logging of essential device support threads 2025-07-24 22:40:54 +02:00
José Rebelo 0647824227 Zepp OS: Hide settings for devices without display 2025-07-24 20:10:58 +01:00
Daniele Gobbetti dbb53fbdd5 fixup! Printer: allow printing incoming text shared to Gadgetbridge
Use the correct default for the preference in the support class
2025-07-24 18:48:09 +02:00
José Rebelo b8eb3c2db5 Garmin: Fix sleep stages if no MONITOR files are received
Sometimes MONITOR files might fail to be fetched, and Gb would fail to
display sleep stages altogether.
2025-07-23 21:51:50 +01:00
José Rebelo 8015f92f28 Distinguish serial from BTBR in headphones support 2025-07-22 20:37:47 +01:00
Thomas KuehneandJosé Rebelo 556a89b9a8 ble: throw an exception in BtLEQueue.connect if this queue is so broken that it can no longer be re-used 2025-07-22 21:28:43 +02:00
Thomas KuehneandJosé Rebelo a370b00a91 settings: use central GBPrefs.syncTime() instead of custom "datetime_synconconnect" checks 2025-07-22 21:23:42 +02:00
Thomas Kuehne b2d65cce0d garmin: honour the datetime_synconconnect preference instead of hardcoding a time sync for each connection 2025-07-22 20:18:20 +02:00
Me7c7 af6b6c9704 Huawei: Swim workout pace units 2025-07-22 19:14:03 +03:00
Andreas Shimokawa 6de321239f Fossil: when fetching activity, Do not calculate CRC32C which is never used 2025-07-22 00:45:45 +02:00
Andreas Shimokawa a490288b14 Fossil Hybrid HR: some code cleanups 2025-07-21 23:36:12 +02:00
José Rebelo 62dbbea218 Garmin: Display fetch and parse progress 2025-07-21 19:54:37 +01:00
punchdeerflyscorpion a0432afd57 Initial diving support for garmin watches 2025-07-21 18:59:50 +02:00
José Rebelo 33c012e1b8 Amazfit Helio Ring: Experimental support 2025-07-21 17:06:35 +01:00
Daniele Gobbetti d33054ae54 Printer: allow printing incoming text shared to Gadgetbridge
Add a new NotificationType for received text.
Add device specific settings to the printer coordinator, also add setting to print received text (defaults to on).
2025-07-21 17:46:05 +02:00
santawhoandArjan Schrijver a919449aa1 Moyoung/Colmi P76: fix device name regex 2025-07-21 15:07:53 +02:00
santawhoandArjan Schrijver cca1b299ad Moyoung: Add support for Colmi P76 2025-07-21 15:07:53 +02:00
Colin Kinloch c6876d7d99 Mi Smart Scale: Remove duplicate builder queuing 2025-07-20 22:08:59 +01:00