Commit Graph
14162 Commits
Author SHA1 Message Date
José Rebelo 89b5264425 Shokz OpenSwim Pro: Initial support 2025-07-30 21:31:30 +01:00
José Rebelo 620a9a3841 Zepp OS: Add activity type for indoor walking 2025-07-29 23:56:36 +01:00
Thomas KuehneandJosé Rebelo a28603be87 icons: add icons to Settings / User interface 2025-07-29 20:59:20 +02:00
Thomas KuehneandJosé Rebelo bba747cb6c ui: optionally prevent screen shots and insecure displays (#5166)
Introduce new Settings / User interface / Screenshots to optionally prevent screenshots and viewing on non-secure displays.
Toggling this setting requires a GB restart to become fully effective.
2025-07-29 20:57:27 +02:00
Thomas Kuehne 28e39edea1 settings: fix a potential resource leak 2025-07-29 08:24:50 +02:00
Thomas KuehneandJosé Rebelo b2e9a468bf log: add severity DEBUG to GB.log 2025-07-28 21:15:19 +02:00
Me7c7andJosé Rebelo e917ae44cb Huawei: debug. Save RAW files. 2025-07-28 15:39:34 +02:00
José Rebelo ad34fec706 Garmin Fenix 3 HR: Experimental support 2025-07-28 13:12:50 +01:00
José Rebelo 203407dadf Fix WeatherSpec unmarshall from Parcel 2025-07-28 12:33:46 +01:00
Thomas KuehneandJosé Rebelo ff29112eac ble: improve logging WriteAction failures when using SDK < 33 2025-07-28 10:53:05 +02:00
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