Thomas Kuehne and José Rebelo
d98e51190d
ble: always use the TransactionBuilder provided to createTransactionBuilder
...
The use of initializeDevice's TransactionBuilder was inconsistent:
onServicesDiscovered used the input argument
performInitialized used the return
2025-07-01 23:04:03 +02:00
José Rebelo
cb9db98480
Garmin Venu X1: Experimental support
2025-07-01 20:35:55 +01:00
José Rebelo
52a30561fd
Mi Band 10: Experimental support
2025-07-01 20:34:09 +01:00
Thomas Kuehne
0d4e64ca85
fix: AbstractMethodError CompanionDeviceService.onDeviceDisappeared ( #5028 )
...
In older Android versions this is method is abstract.
2025-07-01 19:27:28 +02:00
Andreas Shimokawa
30ccb07698
ATC_TSLR_Paper: scan also for service, to not interfere with Mijia devices
2025-07-01 18:10:12 +02:00
Andreas Shimokawa
125dd289a3
ATC_TLSR_Paper: Support firmware update
2025-06-30 14:03:50 +02:00
Andreas Shimokawa
0c2dad6f89
ATC_TLSR_Paper: Initial support
...
This is for epaper devices with a TLSR8359 chip, running a fork of openepaperlink that enables BLE
The firmware that has to be flashed is this one:
https://atc1441.github.io/ATC_BLE_OEPL.bin
(there seems to be no source for that)
It also has to be configured already to match your screen, so you should already see the openepaperlink screen on the device before using Gadgetbridge
Works:
- getting screen configuration
- sending images to epaper displays with black/white or black/white/red/yellow
TODO:
- allow configuration of screen type and parameters through Gadgetbridge
- firmware update
2025-06-30 12:25:25 +02:00
José Rebelo
37c4972cb2
Garmin Forerunner 945: Initial support
2025-06-29 18:35:38 +01:00
José Rebelo
a844bdc37b
Amazfit Helio Strap: Enable HRV
2025-06-29 18:20:51 +01:00
José Rebelo
cb1d0c2eb0
Garmin: Split fit files per type / year
2025-06-29 16:48:20 +01:00
José Rebelo
5df1e0b467
Zepp OS: Map some unknown menu items and shortcut cards
2025-06-29 16:32:49 +01:00
José Rebelo
cb5e611fbf
Zepp OS: Make device info parsing more resilient
2025-06-29 16:23:20 +01:00
José Rebelo
ba1c9ddf2f
Zepp OS: Request only supported config groups
2025-06-29 16:23:20 +01:00
José Rebelo
c619506057
Amazfit Helio Strap: Initial support
2025-06-29 16:23:20 +01:00
Thomas Kuehne and José Rebelo
071c7529ba
use Build.VERSION_CODES instead of magic numbers
...
The available codes only depend on compileSdk.
minSdk and targetSdk are not relevant.
2025-06-29 16:32:27 +02:00
Thomas Kuehne and José Rebelo
6728e87393
DeviceCommunicationService - stress test connect/dispose ( #5020 )
...
only effective in debug builds:
Test if a DeviceSupport is ready for multiple connect triggers (manual, AutoConnectIntervalReceiver, BluetoothConnectReceiver, GBCompanionDeviceService)
Device specific debugging preferences:
1) optionally call DeviceSupport.dispose() twice
2) optionally call DeviceSupport.connect() multiple times in series or in parallel
2025-06-29 16:31:53 +02:00
José Rebelo
8c91b5dd3f
CalendarManager: Close event reminder cursor
2025-06-29 13:31:01 +01:00
Thomas Kuehne and José Rebelo
4723115356
enable StrictMode with penalty log for debug builds ( #5022 )
2025-06-29 14:26:32 +02:00
José Rebelo
75b8f7178a
Huami: Fix support class reuse
2025-06-29 13:07:12 +01:00
José Rebelo
676b861c40
Zepp OS: Fix support class reuse
2025-06-29 13:07:12 +01:00
José Rebelo
0e25d9ca81
AAWireless: Fix support class reuse
2025-06-29 13:07:12 +01:00
José Rebelo
d97177dea6
Xiaomi: Fix support class reuse
2025-06-29 11:58:19 +01:00
José Rebelo
79d9f99ed0
Update changelog
2025-06-28 18:49:46 +01:00
dependency-bot and José Rebelo
b84d282586
Update dependency org.jsoup:jsoup to v1.21.1
2025-06-28 19:43:43 +02:00
Thomas Kuehne and José Rebelo
f732ff582a
ble: add ReadPhyAction, SetPreferredPhyAction, onServiceChanged and onReliableWriteCompleted
2025-06-28 19:34:22 +02:00
Thomas Kuehne and José Rebelo
e40608dcf6
ble: enable BtLEQueue to log to-be-written values
2025-06-28 19:28:22 +02:00
Thomas Kuehne and José Rebelo
95d163e8c3
casio gbx100: distinct transaction names for better debugging ( #5008 )
2025-06-28 16:40:02 +02:00
José Rebelo
c8e34040db
Redmi Watch 5: Initial support
2025-06-28 15:36:50 +01:00
dependency-bot
7889c7fd6e
Update dependency org.robolectric:robolectric to v4.15.1
2025-06-28 08:03:07 +00:00
José Rebelo
61b8ea7c35
Renovate: Fix matchFileNames ( #5009 )
2025-06-28 08:56:49 +01:00
José Rebelo
748f3e2b7c
Garmin/Zepp OS: Fix HTTP requests on Android < 13
...
Partially reverts 79a6ee2c9
2025-06-27 21:51:44 +01:00
José Rebelo and José Rebelo
ae32b7b1e4
PebbleIoThread: Fix connection
2025-06-27 15:49:22 +02:00
José Rebelo
533ecb9ee3
CMF Watch Pro: Firmware update
...
Tested by updating to 11.0.0.57
2025-06-27 00:05:18 +01:00
Arjan Schrijver and Arjan Schrijver
d0b85358b6
Yawell Ring: Add support for Yawell R10 and R11
2025-06-26 21:24:58 +02:00
Arjan Schrijver and Arjan Schrijver
9fce6e1c8d
Colmi R0x: Rename to Yawell Ring
...
As discussed in https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/4872 , these rings and the app QRing are actually made by Yawell.
2025-06-26 21:24:58 +02:00
Thomas Kuehne and José Rebelo
868bc0bd7e
BtBR+BtLE: adjust DeviceSupport's isConnected to check the queue's status
...
DeviceSupport asks BtBRQueue/BtLEQueue for the connectivity status as the queue knows best.
This enables the queue implementation to sidestep multi-threading issues.
2025-06-26 20:42:49 +02:00
José Rebelo and José Rebelo
43116ade24
BT Classic: Fix connection
2025-06-26 20:26:27 +02:00
José Rebelo
453eaee4c1
Charts: Avoid crash if database fetch fails
2025-06-26 18:08:54 +01:00
Arjan Schrijver
a291eb1205
Fossil/Skagen Hybrids: Add calendar sending preferences
2025-06-26 10:00:10 +02:00
Arjan Schrijver
61e31229d2
Fossil/Skagen Hybrids: Add sending calendar items
2025-06-26 10:00:10 +02:00
José Rebelo
73fc8971c8
Generic Headphones: Do not suggest unbind before pair
2025-06-24 18:41:34 +01:00
José Rebelo
94c01a9b95
Amazfit Balance 2: Experimental support
2025-06-24 13:20:23 +01:00
Thomas Kuehne and José Rebelo
3d2ac05390
ble: fix BtLEQueue reconnection logic
...
Ensure that handleDisconnected uses a robust reconnection logic.
2025-06-24 14:12:28 +02:00
Thomas Kuehne and José Rebelo
ac56df52ac
ble: fix DeviceCommunicationService disposes DeviceSupport
...
When a device goes out of range and then comes back into range DeviceCommunicationService disposes DeviceSupport while trying to re-establish a connection.
This causes race conditions as there are multiple for path for reconnections that can be executed in parallel.
The DeviceService.ACTION_CONNECT path kills everything abruptly potential leaving the gadget with a broken connection.
partial backport from PR #4916
2025-06-24 09:53:50 +02:00
Thomas Kuehne and José Rebelo
7fcc879280
ble: fix BondingAction.getCurrentTarget
2025-06-24 00:09:30 +02:00
José Rebelo
fa625597ad
update changelog, bump version
2025-06-23 22:57:40 +01:00
José Rebelo
038e409d66
User ServiceCompat to start foreground services ( #4994 )
2025-06-23 22:23:16 +01:00
Arjan Schrijver
c3f0a029cd
Fossil/Skagen Hybrids: Fix NPE during connection setup
2025-06-23 23:07:05 +02:00
José Rebelo
9d4dca5d5b
Bangle.js: Fix stack overflow on initialization
...
Fix regression introduced by 280f4fc61 . We should never call
performInitialized in the initializeDevice function, as that can cause
race conditions or, in this case, a stack overflow due to the recursive
initialization.
2025-06-23 21:59:29 +01:00
José Rebelo
a16d7a18fc
Garmin Descent Mk3: Initial support
2025-06-23 08:40:53 +01:00