GoldenGate$Companion-[main] Initializing GoldenGate XP module RunLoop-[Thread-3] Starting loop from JNI FitbitGatt-[main] Starting fitbit gatt FitbitGatt-[main] Initializing the always connected scanner for one device, and that it should stop scanning when it finds one, if you wish to change this, please configure it. LowEnergyAclListener-[main] Acl listener registered, 1 times FitbitGatt-[FitbitGatt Async Operation Thread] Adding connected or bonded devices FitbitGatt-[FitbitGatt Async Operation Thread] Adding bonded device named iPhone 12 von YV@MW, with address PRIVATE-MAC-A FitbitGatt-[FitbitGatt Async Operation Thread] Adding bonded device named null, with address PRIVATE-MAC-B FitbitGatt-[FitbitGatt Async Operation Thread] Adding bonded device named iPhone 12 von YV@MW, with address PRIVATE-MAC-C FitbitGatt-[FitbitGatt Async Operation Thread] Adding bonded device named iPhone 12 von YV@MW, with address PRIVATE-MAC-D FitbitGatt-[FitbitGatt Async Operation Thread] Added all connected or bonded devices FitbitGattServer-[FitbitGatt Async Operation Thread] Trying to start the gatt server GlobalBluetoothGattInitializer$bluetoothStateListener-[FitbitGatt Async Operation Thread] add GATT services of central mode BitGattServer-[FitbitGatt Async Operation Thread] Adding GATT service abbafc00-e56a-484c-b832-8b17cf6cbfe8 GattServerConnection-[FitbitGatt Async Operation Thread] [Pixel 3a] Transitioning from state IDLE to state IDLE FitbitGattServer-[FitbitGatt Async Operation Thread] Gatt server successfully opened GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction AddGattServerServiceTransaction TransactionQueueController-[RxCachedThreadScheduler-1] Implicitly restarting queue TransactionQueueController-[RxCachedThreadScheduler-1] Starting execution thread GattStateTransitionValidator-[GATT Server Transaction Thread] [null] Current State IDLE, Success State ADD_SERVICE_SUCCESS GattServerConnection-[GATT Server Transaction Thread] [Pixel 3a] Transitioning from state IDLE to state ADDING_SERVICE GattServerCallback-[Binder:7003_3] [Pixel 3a] onServiceAdded: Gatt Response Status GATT_SUCCESS GattServerCallback-[Binder:7003_3] [Pixel 3a][Threading] Originally called on thread : Binder:7003_3 GattServerConnection-[FitbitGatt Async Operation Thread] [Pixel 3a] Transitioning from state ADDING_SERVICE to state ADD_SERVICE_SUCCESS AddGattServerServiceTransaction-[FitbitGatt Async Operation Thread] Gatt service was added to the gatt server successfully GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction AddGattServerServiceTransaction succeeded GattServerConnection-[FitbitGatt Async Operation Thread] [Pixel 3a] Transitioning from state ADD_SERVICE_SUCCESS to state IDLE PeripheralScanner-[RxCachedThreadScheduler-1] Start High priority Scan PeripheralScanner-[RxCachedThreadScheduler-1] Scan filter's size: 2 PeripheralScanner-[RxCachedThreadScheduler-1] Starting scan, scan count in this 120000 ms is 1 FitbitGatt-[RxCachedThreadScheduler-1] On scan status changed true PeripheralScanner$scanForDevices-[RxCachedThreadScheduler-1] Started Scanning: true FitbitGatt-[main] Adding scanned device [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -59, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -58, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -58, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -58, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -58, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -58, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -56, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) PeripheralScanner-[main] StopScanning requested PeripheralScanner-[main] Stopping scan, changing from true to false FitbitGatt-[main] On scan status changed false NodeMapper-[main] Looking up node with node key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) NodeMapper-[main] Building node with node key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is creating a new connection StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is saving a reference to its observable share later StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) does not have a connection StackPeer$connect-[RxCachedThreadScheduler-1] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is starting the connection BitGattPeer$connect-[RxCachedThreadScheduler-1] Connecting... PeerConnector$connect-[RxCachedThreadScheduler-1] Connecting to device: PRIVATE-MAC-S88PRO GattConnection: Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0 GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction GattConnectTransaction GattConnection-[RxCachedThreadScheduler-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattConnectTransaction TransactionQueueController-[RxCachedThreadScheduler-1] Implicitly restarting queue TransactionQueueController-[RxCachedThreadScheduler-1] Starting execution thread StackPeer$connect-[RxCachedThreadScheduler-1] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is saving a reference to its disposable to disconnect later GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State DISCONNECTED, Success State CONNECTED GattConnection-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] While this instance isn't in the cache, there is already a connection in the queue, please be careful not to create too many client_ifs #developerlove. GattConnection-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Android BluetoothGatt was null, start a new Android BluetoothGatt instance connect to device GattClientCallback-[Binder:7003_3] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS GattServerCallback-[Binder:7003_1] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS LowEnergyAclListener-[main] BT change received ! LowEnergyAclListener-[main] S88Pro Device is now connected GattServerCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 GattClientCallback-[Binder:7003_3] [S88Pro][Threading] Originally called on thread : Binder:7003_3 GattClientCallback-[Binder:7003_3] [S88Pro]Connection state: Connected GattTransaction-[FitbitGatt Async Operation Thread] [S88Pro] onServerConnectionStateChange not handled in tx: GattConnectTransaction GattServerConnectionChangeListener-[FitbitGatt Async Operation Thread] Handle ServerConnectionStateChanged call from device PRIVATE-MAC-S88PRO, result: Transaction Name: Unknown, Gatt State: IDLE - State Type: IDLE, Transaction Result Status: SUCCESS, Response Status: GATT_SUCCESS, rssi: 0, mtu: 0, Characteristic UUID: null, Service UUID: null, Descriptor UUID: null, Data: null, Offset: 0, txPhy: 1, rxPhy: 1, transaction results: [] GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattConnectTransaction succeeded PeerConnector$connect-[FitbitGatt Async Operation Thread] Successfully connected to : PRIVATE-MAC-S88PRO GattConnection: Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: CONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0 StackPeer$setupStack-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) building stack and bridge and is attaching it to the service TxSink-[FitbitGatt Async Operation Thread] Creating TxSink RxSource-[FitbitGatt Async Operation Thread] Creating RxSource RxSource-[Thread-3] Setting new tx sink StackPeer$connect-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) mtuChangedHandler ConnectionState(bridge=com.fitbit.goldengate.node.Bridge@488bfab, stack=com.fitbit.goldengate.bindings.stack.Stack@1e1e608, peer=com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer@37591a1, gattConnection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: CONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) BitGattPeer$requestMtu-[FitbitGatt Async Operation Thread] Requesting MTU of 247 MtuChangeRequester$updatePeripheralMtu-[FitbitGatt Async Operation Thread] Updating peripheral MTU: PRIVATE-MAC-S88PRO to 247 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction RequestMtuGattTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: RequestMtuGattTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State REQUEST_MTU_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro] onMtuChanged: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction RequestMtuGattTransaction succeeded MtuChangeRequester$updatePeripheralMtu-[FitbitGatt Async Operation Thread] Successfully updated peripheral MTU: PRIVATE-MAC-S88PRO to 247 StackPeer$connect-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) start link up handler BitGattPeer$discoverServices-[FitbitGatt Async Operation Thread] Discovering services... GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattClientDiscoverServices GattClientMtuChangeListener$ClientMtuChangeListener-[FitbitGatt Async Operation Thread] onClientMtuChanged from device PRIVATE-MAC-S88PRO, status: SUCCESS, mtu: 247 GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCOVERY_SUCCESS StackPeer$mtuUpdateHandler-[FitbitGatt Async Operation Thread] received new mtu: 247 MtuChangeRequester$updateStackMtu-[FitbitGatt Async Operation Thread] Updating stack MTU: 247 GattClientCallback-[Binder:7003_1] [S88Pro] onServicesDiscovered: Gatt Response Status GATT_SUCCESS Stack-[FitbitGatt Async Operation Thread] Updated stack MTU. Success?: true new stack mtu: 247 - 3 GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 MtuChangeRequester$updateStackMtu-[FitbitGatt Async Operation Thread] Successfully updated stack MTU: 247 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices succeeded DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001801-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a05-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001800-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a00-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a01-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002aa6-0000-1000-8000-00805f9b34fb found GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: SubscribeToCharacteristicNotificationsTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS SubscribeToCharacteristicNotificationsTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Notification success on 00002a05-0000-1000-8000-00805f9b34fb StrategyProvider-[S88Pro GATT Transaction Thread] The current device has properties: AndroidDevice[Google, Pixel 3a, 30, sargo, google, sargo] StrategyProvider-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Target android device does not match, no need for strategy GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction succeeded BitGattPeer$setupNotifications-[main] fail to subscribe notification... java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null PeerGattServiceSubscriber$subscribe-[main] Failed to subscribe to 00002a05-0000-1000-8000-00805f9b34fb java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null LinkupWithPeerNodeHandler$subscribeToGenericAttribute-[main] failed to subscribe service changed characteristic java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null GattCharacteristicReader$read-[main] Request to read ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic GattDatabaseValidator$readEphemeralPointerCharacteristic-[main] Reading Gatt Database Ephemeral Characteristic ac2f0145-8182-4be5-91e0-2992e6b40ebb GattCharacteristicReader$read-[pool-3-thread-1] Failed reading ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found GattDatabaseValidator$readEphemeralPointerCharacteristic-[pool-3-thread-1] Failed to read ac2f0145-8182-4be5-91e0-2992e6b40ebb com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found LinkupWithPeerNodeHandler$discoverServicesAndValidateGattDatabase-[pool-3-thread-1] delay retry by 2 seconds BitGattPeer$discoverServices-[RxComputationThreadPool-3] Discovering services... GattTransactionExtKt$runTxReactive-[RxComputationThreadPool-3] Running GattTransaction GattClientDiscoverServices GattConnection-[RxComputationThreadPool-3] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattClientDiscoverServices GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCOVERY_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro] onServicesDiscovered: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices succeeded DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001801-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a05-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001800-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a00-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a01-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002aa6-0000-1000-8000-00805f9b34fb found GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: SubscribeToCharacteristicNotificationsTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS SubscribeToCharacteristicNotificationsTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Notification success on 00002a05-0000-1000-8000-00805f9b34fb StrategyProvider-[S88Pro GATT Transaction Thread] The current device has properties: AndroidDevice[Google, Pixel 3a, 30, sargo, google, sargo] StrategyProvider-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Target android device does not match, no need for strategy GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction succeeded BitGattPeer$setupNotifications-[main] fail to subscribe notification... java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null PeerGattServiceSubscriber$subscribe-[main] Failed to subscribe to 00002a05-0000-1000-8000-00805f9b34fb java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null LinkupWithPeerNodeHandler$subscribeToGenericAttribute-[main] failed to subscribe service changed characteristic java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null GattCharacteristicReader$read-[main] Request to read ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic GattDatabaseValidator$readEphemeralPointerCharacteristic-[main] Reading Gatt Database Ephemeral Characteristic ac2f0145-8182-4be5-91e0-2992e6b40ebb GattCharacteristicReader$read-[pool-3-thread-1] Failed reading ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found GattDatabaseValidator$readEphemeralPointerCharacteristic-[pool-3-thread-1] Failed to read ac2f0145-8182-4be5-91e0-2992e6b40ebb com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found LinkupWithPeerNodeHandler$discoverServicesAndValidateGattDatabase-[pool-3-thread-1] delay retry by 4 seconds BitGattPeer$discoverServices-[RxComputationThreadPool-4] Discovering services... GattTransactionExtKt$runTxReactive-[RxComputationThreadPool-4] Running GattTransaction GattClientDiscoverServices GattConnection-[RxComputationThreadPool-4] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattClientDiscoverServices GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCOVERY_SUCCESS GattClientCallback-[Binder:7003_3] [S88Pro] onServicesDiscovered: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_3] [S88Pro][Threading] Originally called on thread : Binder:7003_3 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices succeeded DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001801-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a05-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001800-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a00-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a01-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002aa6-0000-1000-8000-00805f9b34fb found GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: SubscribeToCharacteristicNotificationsTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS SubscribeToCharacteristicNotificationsTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Notification success on 00002a05-0000-1000-8000-00805f9b34fb StrategyProvider-[S88Pro GATT Transaction Thread] The current device has properties: AndroidDevice[Google, Pixel 3a, 30, sargo, google, sargo] StrategyProvider-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Target android device does not match, no need for strategy GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction succeeded BitGattPeer$setupNotifications-[main] fail to subscribe notification... java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null PeerGattServiceSubscriber$subscribe-[main] Failed to subscribe to 00002a05-0000-1000-8000-00805f9b34fb java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null LinkupWithPeerNodeHandler$subscribeToGenericAttribute-[main] failed to subscribe service changed characteristic java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null GattCharacteristicReader$read-[main] Request to read ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic GattDatabaseValidator$readEphemeralPointerCharacteristic-[main] Reading Gatt Database Ephemeral Characteristic ac2f0145-8182-4be5-91e0-2992e6b40ebb GattCharacteristicReader$read-[pool-3-thread-1] Failed reading ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found GattDatabaseValidator$readEphemeralPointerCharacteristic-[pool-3-thread-1] Failed to read ac2f0145-8182-4be5-91e0-2992e6b40ebb com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found LinkupWithPeerNodeHandler$discoverServicesAndValidateGattDatabase-[pool-3-thread-1] delay retry by 6 seconds BitGattPeer$discoverServices-[RxComputationThreadPool-5] Discovering services... GattTransactionExtKt$runTxReactive-[RxComputationThreadPool-5] Running GattTransaction GattClientDiscoverServices GattConnection-[RxComputationThreadPool-5] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattClientDiscoverServices GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCOVERY_SUCCESS GattClientCallback-[Binder:7003_4] [S88Pro] onServicesDiscovered: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_4] [S88Pro][Threading] Originally called on thread : Binder:7003_4 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices succeeded DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001801-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a05-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001800-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a00-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a01-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002aa6-0000-1000-8000-00805f9b34fb found GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: SubscribeToCharacteristicNotificationsTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS SubscribeToCharacteristicNotificationsTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Notification success on 00002a05-0000-1000-8000-00805f9b34fb StrategyProvider-[S88Pro GATT Transaction Thread] The current device has properties: AndroidDevice[Google, Pixel 3a, 30, sargo, google, sargo] StrategyProvider-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Target android device does not match, no need for strategy GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction succeeded BitGattPeer$setupNotifications-[main] fail to subscribe notification... java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null PeerGattServiceSubscriber$subscribe-[main] Failed to subscribe to 00002a05-0000-1000-8000-00805f9b34fb java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null LinkupWithPeerNodeHandler$subscribeToGenericAttribute-[main] failed to subscribe service changed characteristic java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null GattCharacteristicReader$read-[main] Request to read ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic GattDatabaseValidator$readEphemeralPointerCharacteristic-[main] Reading Gatt Database Ephemeral Characteristic ac2f0145-8182-4be5-91e0-2992e6b40ebb GattCharacteristicReader$read-[pool-3-thread-1] Failed reading ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found GattDatabaseValidator$readEphemeralPointerCharacteristic-[pool-3-thread-1] Failed to read ac2f0145-8182-4be5-91e0-2992e6b40ebb com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found at com.fitbit.bluetooth.fbgatt.rx.GattConnectionExtKt$getRemoteGattServiceSingle$1.subscribe(GattConnectionExt.kt:26) at io.reactivex.internal.operators.single.SingleCreate.subscribeActual(SingleCreate.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleObserveOn.subscribeActual(SingleObserveOn.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSubscribe.subscribeActual(SingleDoOnSubscribe.java:41) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableResumeNext.subscribeActual(CompletableResumeNext.java:41) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableOnErrorComplete$OnError.onError(CompletableOnErrorComplete.java:64) at io.reactivex.internal.operators.completable.CompletablePeek$CompletableObserverImplementation.onError(CompletablePeek.java:95) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onError(CompletableFromSingle.java:41) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onError(SingleDoOnSuccess.java:65) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onError(SingleDoOnError.java:63) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onError(SingleFlatMap.java:116) at io.reactivex.internal.disposables.EmptyDisposable.error(EmptyDisposable.java:78) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: ac2f0045-8182-4be5-91e0-2992e6b40ebb, not found LinkupWithPeerNodeHandler$discoverServicesAndValidateGattDatabase-[pool-3-thread-1] Failed to validate the gatt service BitGattPeer$connect-[pool-3-thread-1] We are already connected, just returning the gatt GattServiceRefresher$refresh-[pool-3-thread-1] Refreshing services for Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 1 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction GattClientRefreshGattTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattClientRefreshGattTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State REFRESH_GATT_SUCCESS GattClientRefreshGattTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] refreshGatt: true GattClientRefreshGattTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Calling refresh, you will need to discover services again at least, and disconnect and reconnect at most. GattClientRefreshGattTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] The phone didn't disconnect so our state remains connected, the current connection status is ambiguous GattTransactionExtKt$runTxReactive-[S88Pro GATT Transaction Thread] Running GattTransaction GattClientRefreshGattTransaction succeeded GattServiceRefresher$refresh-[S88Pro GATT Transaction Thread] Successfully Refreshing services for Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: REFRESH_GATT_SUCCESS - State Type: IDLE state type: IDLE numConnEvtListeners 1 LinkupWithPeerNodeHandler$refreshServices-[S88Pro GATT Transaction Thread] Successfully refresh services on com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer@37591a1 BitGattPeer$discoverServices-[S88Pro GATT Transaction Thread] Discovering services... GattTransactionExtKt$runTxReactive-[S88Pro GATT Transaction Thread] Running GattTransaction GattClientDiscoverServices GattConnection-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattClientDiscoverServices GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCOVERY_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro] onServicesDiscovered: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices succeeded DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001801-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a05-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001800-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a00-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a01-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002aa6-0000-1000-8000-00805f9b34fb found PeerGattServiceSubscriber$subscribe-[FitbitGatt Async Operation Thread] Failed to subscribe to abbaff02-e56a-484c-b832-8b17cf6cbfe8 com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:35) at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:16) at io.reactivex.internal.operators.single.SingleResumeNext$ResumeMainSingleObserver.onError(SingleResumeNext.java:73) at io.reactivex.internal.operators.maybe.MaybeToSingle$ToSingleMaybeSubscriber.onComplete(MaybeToSingle.java:98) at io.reactivex.internal.operators.maybe.MaybeFromCallable.subscribeActual(MaybeFromCallable.java:59) at io.reactivex.Maybe.subscribe(Maybe.java:4290) at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.completable.CompletableFromSingle.subscribeActual(CompletableFromSingle.java:29) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableResumeNext$ResumeNextObserver.onComplete(CompletableResumeNext.java:68) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onSuccess(CompletableFromSingle.java:51) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onSuccess(SingleDoOnError.java:52) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onSuccess(SingleDoOnSuccess.java:60) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.GattClientDiscoverServicesTransaction.onServicesDiscovered(GattClientDiscoverServicesTransaction.java:84) at com.fitbit.bluetooth.fbgatt.GattClientCallback.lambda$onServicesDiscovered$10(GattClientCallback.java:280) at com.fitbit.bluetooth.fbgatt.-$$Lambda$GattClientCallback$AAzMM76l2iYoy3h68tjHmt9viCk.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.os.HandlerThread.run(HandlerThread.java:67) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found LinkupWithPeerNodeHandler$link-[FitbitGatt Async Operation Thread] Failed to subscribed to Gattlink service on Node: PRIVATE-MAC-S88PRO com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:35) at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:16) at io.reactivex.internal.operators.single.SingleResumeNext$ResumeMainSingleObserver.onError(SingleResumeNext.java:73) at io.reactivex.internal.operators.maybe.MaybeToSingle$ToSingleMaybeSubscriber.onComplete(MaybeToSingle.java:98) at io.reactivex.internal.operators.maybe.MaybeFromCallable.subscribeActual(MaybeFromCallable.java:59) at io.reactivex.Maybe.subscribe(Maybe.java:4290) at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.completable.CompletableFromSingle.subscribeActual(CompletableFromSingle.java:29) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableResumeNext$ResumeNextObserver.onComplete(CompletableResumeNext.java:68) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onSuccess(CompletableFromSingle.java:51) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onSuccess(SingleDoOnError.java:52) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onSuccess(SingleDoOnSuccess.java:60) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.GattClientDiscoverServicesTransaction.onServicesDiscovered(GattClientDiscoverServicesTransaction.java:84) at com.fitbit.bluetooth.fbgatt.GattClientCallback.lambda$onServicesDiscovered$10(GattClientCallback.java:280) at com.fitbit.bluetooth.fbgatt.-$$Lambda$GattClientCallback$AAzMM76l2iYoy3h68tjHmt9viCk.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.os.HandlerThread.run(HandlerThread.java:67) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found StackPeer-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) is detaching its service and tearing down its stack, bridge Bridge-[FitbitGatt Async Operation Thread] Stop bridge from receiving or sending new data CoapEndpoint-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) sets filter group to GROUP_1 Stack-[FitbitGatt Async Operation Thread] Closing stack RxSource-[FitbitGatt Async Operation Thread] Destroying RxSource TxSink-[FitbitGatt Async Operation Thread] Freeing tx sink StackPeer$connect-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection has thrown an error com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:35) at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:16) at io.reactivex.internal.operators.single.SingleResumeNext$ResumeMainSingleObserver.onError(SingleResumeNext.java:73) at io.reactivex.internal.operators.maybe.MaybeToSingle$ToSingleMaybeSubscriber.onComplete(MaybeToSingle.java:98) at io.reactivex.internal.operators.maybe.MaybeFromCallable.subscribeActual(MaybeFromCallable.java:59) at io.reactivex.Maybe.subscribe(Maybe.java:4290) at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.completable.CompletableFromSingle.subscribeActual(CompletableFromSingle.java:29) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableResumeNext$ResumeNextObserver.onComplete(CompletableResumeNext.java:68) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onSuccess(CompletableFromSingle.java:51) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onSuccess(SingleDoOnError.java:52) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onSuccess(SingleDoOnSuccess.java:60) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.GattClientDiscoverServicesTransaction.onServicesDiscovered(GattClientDiscoverServicesTransaction.java:84) at com.fitbit.bluetooth.fbgatt.GattClientCallback.lambda$onServicesDiscovered$10(GattClientCallback.java:280) at com.fitbit.bluetooth.fbgatt.-$$Lambda$GattClientCallback$AAzMM76l2iYoy3h68tjHmt9viCk.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.os.HandlerThread.run(HandlerThread.java:67) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found StackPeer-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) is removing the active connection AbstractHostActivity$connectToPeripheral-[main] Error connecting com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:35) at com.fitbit.bluetooth.fbgatt.rx.client.PeerGattServiceSubscriber$subscribe$1.apply(PeerGattServiceSubscriber.kt:16) at io.reactivex.internal.operators.single.SingleResumeNext$ResumeMainSingleObserver.onError(SingleResumeNext.java:73) at io.reactivex.internal.operators.maybe.MaybeToSingle$ToSingleMaybeSubscriber.onComplete(MaybeToSingle.java:98) at io.reactivex.internal.operators.maybe.MaybeFromCallable.subscribeActual(MaybeFromCallable.java:59) at io.reactivex.Maybe.subscribe(Maybe.java:4290) at io.reactivex.internal.operators.maybe.MaybeToSingle.subscribeActual(MaybeToSingle.java:46) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleDoOnError.subscribeActual(SingleDoOnError.java:35) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.completable.CompletableFromSingle.subscribeActual(CompletableFromSingle.java:29) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableDefer.subscribeActual(CompletableDefer.java:43) at io.reactivex.Completable.subscribe(Completable.java:2309) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$SourceObserver.onComplete(CompletableAndThenCompletable.java:67) at io.reactivex.internal.operators.completable.CompletableResumeNext$ResumeNextObserver.onComplete(CompletableResumeNext.java:68) at io.reactivex.internal.operators.completable.CompletableAndThenCompletable$NextObserver.onComplete(CompletableAndThenCompletable.java:99) at io.reactivex.internal.operators.completable.CompletableFromSingle$CompletableFromSingleObserver.onSuccess(CompletableFromSingle.java:51) at io.reactivex.internal.operators.single.SingleDoOnError$DoOnError.onSuccess(SingleDoOnError.java:52) at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onSuccess(SingleDoOnSuccess.java:60) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.GattClientDiscoverServicesTransaction.onServicesDiscovered(GattClientDiscoverServicesTransaction.java:84) at com.fitbit.bluetooth.fbgatt.GattClientCallback.lambda$onServicesDiscovered$10(GattClientCallback.java:280) at com.fitbit.bluetooth.fbgatt.-$$Lambda$GattClientCallback$AAzMM76l2iYoy3h68tjHmt9viCk.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.os.HandlerThread.run(HandlerThread.java:67) -com.fitbit.bluetooth.fbgatt.rx.GattServiceNotFoundException: GATT service with uuid: 0000fd62-0000-1000-8000-00805f9b34fb, not found PeripheralScanner-[RxCachedThreadScheduler-1] Start High priority Scan PeripheralScanner-[RxCachedThreadScheduler-1] Scan filter's size: 2 PeripheralScanner-[RxCachedThreadScheduler-1] Starting scan, scan count in this 120000 ms is 2 FitbitGatt-[RxCachedThreadScheduler-1] On scan status changed true PeripheralScanner$scanForDevices-[RxCachedThreadScheduler-1] Started Scanning: true ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) AbstractHostActivity-[main] Release the partial wake lock ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) PeripheralScanner-[main] Resetting scan too much counter, 120000 ms have gone by. ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: IDLE - State Type: IDLE state type: IDLE numConnEvtListeners 0) PeripheralScanner-[main] StopScanning requested PeripheralScanner-[main] Stopping scan, changing from true to false FitbitGatt-[main] On scan status changed false NodeMapper-[main] Looking up node with node key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) NodeMapper-[main] Node with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) found NodeMapper-[main] Node with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) has a different configuration than desired NodeMapper-[main] Closing the existing node with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is disconnecting CoapEndpoint-[main] Closing CoapEndpoint StackPeer$disconnectPeripheral-[RxCachedThreadScheduler-1] Disconnecting from peripheral BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) NodeMapper-[main] Building new node with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction GattDisconnectionTransaction NodeMapper-[main] Building node with node key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) GattConnection-[RxCachedThreadScheduler-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattDisconnectionTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCONNECTED StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is creating a new connection StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is saving a reference to its observable share later StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) does not have a connection GattClientCallback-[Binder:7003_4] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS StackPeer$connect-[RxCachedThreadScheduler-1] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is starting the connection GattClientCallback-[Binder:7003_4] [S88Pro][Threading] Originally called on thread : Binder:7003_4 GattClientCallback-[Binder:7003_4] [S88Pro]Connection state: Not-Connected BitGattPeer$connect-[RxCachedThreadScheduler-1] Connecting... PeerConnector$connect-[RxCachedThreadScheduler-1] Connecting to device: PRIVATE-MAC-S88PRO GattConnection: Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTING - State Type: IN_PROGRESS state type: IN_PROGRESS numConnEvtListeners 0 GattClientCallback-[Binder:7003_4] [S88Pro] Disconnection reason: GATT_CONN_UNKNOWN GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction GattConnectTransaction GattConnection-[RxCachedThreadScheduler-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattConnectTransaction GattClientCallback-[Binder:7003_4] [S88Pro] disconnected, waiting 1000ms for full disconnection StackPeer$connect-[RxCachedThreadScheduler-1] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection is saving a reference to its disposable to disconnect later GattServerCallback-[Binder:7003_4] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS LowEnergyAclListener-[main] BT change received ! GattClientCallback-[FitbitGatt Async Operation Thread] [S88Pro] Full disconnection GattServerCallback-[Binder:7003_4] [S88Pro][Threading] Originally called on thread : Binder:7003_4 LowEnergyAclListener-[main] S88Pro Device is disconnected GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattDisconnectionTransaction succeeded GattConnection-[main] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattDisconnectionTransaction StackPeer$disconnectPeripheral-[FitbitGatt Async Operation Thread] We disconnected from the device GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State DISCONNECTED, Success State CONNECTED GattTransaction-[FitbitGatt Async Operation Thread] [S88Pro] onServerConnectionStateChange not handled in tx: GattDisconnectionTransaction GattConnection-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] While this instance isn't in the cache, there is already a connection in the queue, please be careful not to create too many client_ifs #developerlove. GattServerConnectionChangeListener-[FitbitGatt Async Operation Thread] Handle ServerConnectionStateChanged call from device PRIVATE-MAC-S88PRO, result: Transaction Name: Unknown, Gatt State: IDLE - State Type: IDLE, Transaction Result Status: FAILURE, Response Status: GATT_SUCCESS, rssi: 0, mtu: 0, Characteristic UUID: null, Service UUID: null, Descriptor UUID: null, Data: null, Offset: 0, txPhy: 1, rxPhy: 1, transaction results: [] GattConnection-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Android BluetoothGatt was null, start a new Android BluetoothGatt instance connect to device GattClientCallback-[Binder:7003_1] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_ERROR GattServerCallback-[Binder:7003_4] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 GattServerCallback-[Binder:7003_4] [S88Pro][Threading] Originally called on thread : Binder:7003_4 GattClientCallback-[Binder:7003_1] [S88Pro]Connection state: Not-Connected GattTransaction-[FitbitGatt Async Operation Thread] [S88Pro] onServerConnectionStateChange not handled in tx: GattConnectTransaction GattServerConnectionChangeListener-[FitbitGatt Async Operation Thread] Handle ServerConnectionStateChanged call from device PRIVATE-MAC-S88PRO, result: Transaction Name: Unknown, Gatt State: IDLE - State Type: IDLE, Transaction Result Status: FAILURE, Response Status: GATT_SUCCESS, rssi: 0, mtu: 0, Characteristic UUID: null, Service UUID: null, Descriptor UUID: null, Data: null, Offset: 0, txPhy: 1, rxPhy: 1, transaction results: [] GattClientCallback-[Binder:7003_1] [S88Pro] The connection state may have changed in error GattClientCallback-[Binder:7003_1] [S88Pro] Disconnection reason: GATT_CONN_UNKNOWN GattClientCallback-[Binder:7003_1] [S88Pro] disconnected, waiting 1000ms for full disconnection GattClientCallback-[FitbitGatt Async Operation Thread] [S88Pro] Full disconnection GattTransaction-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] The transaction GattConnectTransaction failed, Result: Transaction Name: GattConnectTransaction, Gatt State: DISCONNECTED - State Type: IDLE, Transaction Result Status: FAILURE, Response Status: GATT_SUCCESS, rssi: -61, mtu: 0, Characteristic UUID: null, Service UUID: null, Descriptor UUID: null, Data: null, Offset: 0, txPhy: 1, rxPhy: 1, transaction results: [] GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattConnectTransaction failed, result: Transaction Name: GattConnectTransaction, Gatt State: DISCONNECTED - State Type: IDLE, Transaction Result Status: FAILURE, Response Status: GATT_SUCCESS, rssi: -61, mtu: 0, Characteristic UUID: null, Service UUID: null, Descriptor UUID: null, Data: null, Offset: 0, txPhy: 1, rxPhy: 1, transaction results: [] PeerConnector$connect-[FitbitGatt Async Operation Thread] Failed to connect to device: PRIVATE-MAC-S88PRO GattConnection: Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0 StackPeer$connect-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) connection has thrown an error com.fitbit.bluetooth.fbgatt.rx.GattTransactionException at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:27) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:354) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.GattConnectTransaction.onConnectionStateChange(GattConnectTransaction.java:85) at com.fitbit.bluetooth.fbgatt.GattClientCallback.lambda$null$3(GattClientCallback.java:216) at com.fitbit.bluetooth.fbgatt.-$$Lambda$GattClientCallback$JDsMseB_YgaygYb6mwUWfvf6J_c.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.os.HandlerThread.run(HandlerThread.java:67) -com.fitbit.bluetooth.fbgatt.rx.GattTransactionException StackPeer-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO) is removing the active connection AbstractHostActivity$connectToPeripheral-[main] Error connecting com.fitbit.bluetooth.fbgatt.rx.GattTransactionException at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:27) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:354) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.GattConnectTransaction.onConnectionStateChange(GattConnectTransaction.java:85) at com.fitbit.bluetooth.fbgatt.GattClientCallback.lambda$null$3(GattClientCallback.java:216) at com.fitbit.bluetooth.fbgatt.-$$Lambda$GattClientCallback$JDsMseB_YgaygYb6mwUWfvf6J_c.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.os.HandlerThread.run(HandlerThread.java:67) -com.fitbit.bluetooth.fbgatt.rx.GattTransactionException GattTransaction-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Halting the execution chain because tx GattConnectTransaction failed GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State DISCONNECTED, Success State DISCONNECTED GattTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] The transaction couldn't be run because the connection is in DISCONNECTED - State Type: IDLE state LowEnergyAclListener-[main] The disconnect is being handled at the callback level LowEnergyAclListener-[main] S88Pro Notifying listeners of connection disconnected PeripheralScanner-[RxCachedThreadScheduler-1] Start High priority Scan PeripheralScanner-[RxCachedThreadScheduler-1] Scan filter's size: 2 PeripheralScanner-[RxCachedThreadScheduler-1] Starting scan, scan count in this 120000 ms is 1 FitbitGatt-[RxCachedThreadScheduler-1] On scan status changed true PeripheralScanner$scanForDevices-[RxCachedThreadScheduler-1] Started Scanning: true ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) AbstractHostActivity-[main] Release the partial wake lock ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -60, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -70, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -63, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -58, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -58, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -59, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -56, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -56, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -56, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -56, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -56, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -56, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@1b92331 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO, Name: S88Pro, Rssi: -57, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) PeripheralScanner-[main] StopScanning requested PeripheralScanner-[main] Stopping scan, changing from true to false FitbitGatt-[main] On scan status changed false PeripheralScanner-[main] Resetting scan too much counter, 120000 ms have gone by. PeripheralScanner-[RxCachedThreadScheduler-1] Start High priority Scan PeripheralScanner-[RxCachedThreadScheduler-1] Scan filter's size: 2 PeripheralScanner-[RxCachedThreadScheduler-1] Starting scan, scan count in this 120000 ms is 1 FitbitGatt-[RxCachedThreadScheduler-1] On scan status changed true PeripheralScanner$scanForDevices-[RxCachedThreadScheduler-1] Started Scanning: true FitbitGatt-[main] Adding scanned device [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -61, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -62, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) ScanFragment$scan-[main] Scan result: Discovered(connection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) PeripheralScanner-[main] StopScanning requested PeripheralScanner-[main] Stopping scan, changing from true to false FitbitGatt-[main] On scan status changed false NodeMapper-[main] Looking up node with node key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) NodeMapper-[main] Building node with node key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) connection is creating a new connection StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) connection is saving a reference to its observable share later StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) does not have a connection StackPeer$connect-[RxCachedThreadScheduler-1] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) connection is starting the connection BitGattPeer$connect-[RxCachedThreadScheduler-1] Connecting... PeerConnector$connect-[RxCachedThreadScheduler-1] Connecting to device: PRIVATE-MAC-S88PRO-NO2 GattConnection: Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: false state: DISCONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0 GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction GattConnectTransaction GattConnection-[RxCachedThreadScheduler-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattConnectTransaction TransactionQueueController-[RxCachedThreadScheduler-1] Implicitly restarting queue TransactionQueueController-[RxCachedThreadScheduler-1] Starting execution thread StackPeer$connect-[RxCachedThreadScheduler-1] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) connection is saving a reference to its disposable to disconnect later GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State DISCONNECTED, Success State CONNECTED GattConnection-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] While this instance isn't in the cache, there is already a connection in the queue, please be careful not to create too many client_ifs #developerlove. GattConnection-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Android BluetoothGatt was null, start a new Android BluetoothGatt instance connect to device GattServerCallback-[Binder:7003_4] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS LowEnergyAclListener-[main] BT change received ! LowEnergyAclListener-[main] S88Pro Device is now connected GattServerCallback-[Binder:7003_4] [S88Pro][Threading] Originally called on thread : Binder:7003_4 GattClientCallback-[Binder:7003_1] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 GattTransaction-[FitbitGatt Async Operation Thread] [S88Pro] onServerConnectionStateChange not handled in tx: GattConnectTransaction GattServerConnectionChangeListener-[FitbitGatt Async Operation Thread] Handle ServerConnectionStateChanged call from device PRIVATE-MAC-S88PRO-NO2, result: Transaction Name: Unknown, Gatt State: IDLE - State Type: IDLE, Transaction Result Status: SUCCESS, Response Status: GATT_SUCCESS, rssi: 0, mtu: 0, Characteristic UUID: null, Service UUID: null, Descriptor UUID: null, Data: null, Offset: 0, txPhy: 1, rxPhy: 1, transaction results: [] GattClientCallback-[Binder:7003_1] [S88Pro]Connection state: Connected GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattConnectTransaction succeeded PeerConnector$connect-[FitbitGatt Async Operation Thread] Successfully connected to : PRIVATE-MAC-S88PRO-NO2 GattConnection: Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: CONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0 StackPeer$setupStack-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) building stack and bridge and is attaching it to the service TxSink-[FitbitGatt Async Operation Thread] Creating TxSink RxSource-[FitbitGatt Async Operation Thread] Creating RxSource RxSource-[Thread-3] Setting new tx sink StackPeer$connect-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) mtuChangedHandler ConnectionState(bridge=com.fitbit.goldengate.node.Bridge@481bb70, stack=com.fitbit.goldengate.bindings.stack.Stack@af91ee9, peer=com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer@4b3576e, gattConnection=Object.toString(): com.fitbit.bluetooth.fbgatt.GattConnection@6358451 device: [FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED] isConnected: true state: CONNECTED - State Type: IDLE state type: IDLE numConnEvtListeners 0) BitGattPeer$requestMtu-[FitbitGatt Async Operation Thread] Requesting MTU of 247 MtuChangeRequester$updatePeripheralMtu-[FitbitGatt Async Operation Thread] Updating peripheral MTU: PRIVATE-MAC-S88PRO-NO2 to 247 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction RequestMtuGattTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: RequestMtuGattTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State REQUEST_MTU_SUCCESS GattClientCallback-[Binder:7003_4] [S88Pro] onMtuChanged: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_4] [S88Pro][Threading] Originally called on thread : Binder:7003_4 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction RequestMtuGattTransaction succeeded GattServerCallback-[Binder:7003_4] [S88Pro] onDescriptorWriteRequest: [Threading] Originally called on thread : Binder:7003_4 MtuChangeRequester$updatePeripheralMtu-[FitbitGatt Async Operation Thread] Successfully updated peripheral MTU: PRIVATE-MAC-S88PRO-NO2 to 247 StackPeer$connect-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) start link up handler GattServerCallback-[Binder:7003_4] [S88Pro] You must respond to this request BitGattPeer$discoverServices-[FitbitGatt Async Operation Thread] Discovering services... GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattClientDiscoverServices GattClientMtuChangeListener$ClientMtuChangeListener-[FitbitGatt Async Operation Thread] onClientMtuChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, mtu: 247 GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCOVERY_SUCCESS StackPeer$mtuUpdateHandler-[FitbitGatt Async Operation Thread] received new mtu: 247 MtuChangeRequester$updateStackMtu-[FitbitGatt Async Operation Thread] Updating stack MTU: 247 GattClientCallback-[Binder:7003_1] [S88Pro] onServicesDiscovered: Gatt Response Status GATT_SUCCESS Stack-[FitbitGatt Async Operation Thread] Updated stack MTU. Success?: true new stack mtu: 247 - 3 GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 MtuChangeRequester$updateStackMtu-[FitbitGatt Async Operation Thread] Successfully updated stack MTU: 247 GattTransaction-[FitbitGatt Async Operation Thread] [S88Pro] onServerDescriptorWriteRequest not handled in tx: RequestMtuGattTransaction LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Handle handleLinkConfigurationServerDescriptorWriteRequest call from device PRIVATE-MAC-S88PRO-NO2, service: abbafc00-e56a-484c-b832-8b17cf6cbfe8, characteristicUuid: abbafc01-e56a-484c-b832-8b17cf6cbfe8, descriptorUuid: 00002902-0000-1000-8000-00805f9b34fb LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Device: PRIVATE-MAC-S88PRO-NO2 SUBSCRIBED to LinkConfiguration service LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Sending response with status: 0 for device: PRIVATE-MAC-S88PRO-NO2 GattServerResponseSender-[FitbitGatt Async Operation Thread] Sending response to GattServer for requestId: 1 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction GattClientDiscoverServices succeeded GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction SendGattServerResponseTransaction GattStateTransitionValidator-[GATT Server Transaction Thread] [null] Current State IDLE, Success State SEND_SERVER_RESPONSE_SUCCESS DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001801-0000-1000-8000-00805f9b34fb GattServerConnection-[GATT Server Transaction Thread] [Pixel 3a] Transitioning from state IDLE to state SENDING_SERVER_RESPONSE DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a05-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 00001800-0000-1000-8000-00805f9b34fb GattServerConnection-[GATT Server Transaction Thread] [Pixel 3a] Transitioning from state SENDING_SERVER_RESPONSE to state SEND_SERVER_RESPONSE_SUCCESS DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a00-0000-1000-8000-00805f9b34fb found GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SendGattServerResponseTransaction succeeded LinkConfigurationServiceEventListener$sendResponse-[main] Successfully sent 0 response for Gatt server write request DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002a01-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic 00002aa6-0000-1000-8000-00805f9b34fb found GattServerConnection-[main] [Pixel 3a] Transitioning from state SEND_SERVER_RESPONSE_SUCCESS to state IDLE DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID 0000fd62-0000-1000-8000-00805f9b34fb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic abbaff01-e56a-484c-b832-8b17cf6cbfe8 found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic abbaff02-e56a-484c-b832-8b17cf6cbfe8 found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Descriptor 00002902-0000-1000-8000-00805f9b34fb found DumpGattServicesKt-[FitbitGatt Async Operation Thread] Service UUID ac2f0045-8182-4be5-91e0-2992e6b40ebb DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic ac2f0145-8182-4be5-91e0-2992e6b40ebb found GattServerCallback-[Binder:7003_1] [S88Pro] onDescriptorWriteRequest: [Threading] Originally called on thread : Binder:7003_1 DumpGattServicesKt-[FitbitGatt Async Operation Thread] Characteristic ac2f0345-8182-4be5-91e0-2992e6b40ebb found GattServerCallback-[Binder:7003_1] [S88Pro] You must respond to this request GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: SubscribeToCharacteristicNotificationsTransaction GattTransaction-[FitbitGatt Async Operation Thread] [S88Pro] onServerDescriptorWriteRequest not handled in tx: GattClientDiscoverServices GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Handle handleLinkConfigurationServerDescriptorWriteRequest call from device PRIVATE-MAC-S88PRO-NO2, service: abbafc00-e56a-484c-b832-8b17cf6cbfe8, characteristicUuid: abbafc02-e56a-484c-b832-8b17cf6cbfe8, descriptorUuid: 00002902-0000-1000-8000-00805f9b34fb SubscribeToCharacteristicNotificationsTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Notification success on 00002a05-0000-1000-8000-00805f9b34fb LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Device: PRIVATE-MAC-S88PRO-NO2 SUBSCRIBED to LinkConfiguration service StrategyProvider-[S88Pro GATT Transaction Thread] The current device has properties: AndroidDevice[Google, Pixel 3a, 30, sargo, google, sargo] LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Sending response with status: 0 for device: PRIVATE-MAC-S88PRO-NO2 StrategyProvider-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Target android device does not match, no need for strategy GattServerResponseSender-[FitbitGatt Async Operation Thread] Sending response to GattServer for requestId: 2 GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction succeeded GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction SendGattServerResponseTransaction BitGattPeer$setupNotifications-[main] fail to subscribe notification... java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null GattStateTransitionValidator-[GATT Server Transaction Thread] [null] Current State IDLE, Success State SEND_SERVER_RESPONSE_SUCCESS PeerGattServiceSubscriber$subscribe-[main] Failed to subscribe to 00002a05-0000-1000-8000-00805f9b34fb java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null GattServerConnection-[GATT Server Transaction Thread] [Pixel 3a] Transitioning from state IDLE to state SENDING_SERVER_RESPONSE LinkupWithPeerNodeHandler$subscribeToGenericAttribute-[main] failed to subscribe service changed characteristic java.lang.IllegalStateException: descriptor must not be null at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:153) at com.fitbit.bluetooth.fbgatt.rx.client.BitGattPeer$writeDescriptorCharacteristic$1.call(BitGattPeer.kt:32) at io.reactivex.internal.operators.single.SingleDefer.subscribeActual(SingleDefer.java:36) at io.reactivex.Single.subscribe(Single.java:3603) at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84) at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64) at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67) at com.fitbit.bluetooth.fbgatt.rx.GattTransactionExtKt$runTxReactive$1$1.onTransactionComplete(GattTransactionExt.kt:24) at com.fitbit.bluetooth.fbgatt.GattTransaction$1.onTransactionComplete(GattTransaction.java:373) at com.fitbit.bluetooth.fbgatt.GattTransaction.callCallbackWithTransactionResultAndRelease(GattTransaction.java:334) at com.fitbit.bluetooth.fbgatt.tx.SubscribeToCharacteristicNotificationsTransaction.lambda$transaction$0$SubscribeToCharacteristicNotificationsTransaction(SubscribeToCharacteristicNotificationsTransaction.java:100) at com.fitbit.bluetooth.fbgatt.tx.-$$Lambda$SubscribeToCharacteristicNotificationsTransaction$XxolJDFBYeyzUBs_rl-S9nO1zxw.run(Unknown Source:6) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -java.lang.IllegalStateException: descriptor must not be null GattServerConnection-[GATT Server Transaction Thread] [Pixel 3a] Transitioning from state SENDING_SERVER_RESPONSE to state SEND_SERVER_RESPONSE_SUCCESS GattCharacteristicReader$read-[main] Request to read ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic GattDatabaseValidator$readEphemeralPointerCharacteristic-[main] Reading Gatt Database Ephemeral Characteristic ac2f0145-8182-4be5-91e0-2992e6b40ebb GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SendGattServerResponseTransaction succeeded GattCharacteristicReader$read-[pool-3-thread-1] Reading ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic value LinkConfigurationServiceEventListener$sendResponse-[main] Successfully sent 0 response for Gatt server write request GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction ReadGattCharacteristicTransaction GattServerConnection-[main] [Pixel 3a] Transitioning from state SEND_SERVER_RESPONSE_SUCCESS to state IDLE GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: ReadGattCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State READ_CHARACTERISTIC_SUCCESS GattServerCallback-[Binder:7003_1] [S88Pro] onDescriptorWriteRequest: [Threading] Originally called on thread : Binder:7003_1 GattServerCallback-[Binder:7003_1] [S88Pro] You must respond to this request GattTransaction-[FitbitGatt Async Operation Thread] [S88Pro] onServerDescriptorWriteRequest not handled in tx: ReadGattCharacteristicTransaction LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Handle handleLinkConfigurationServerDescriptorWriteRequest call from device PRIVATE-MAC-S88PRO-NO2, service: abbafc00-e56a-484c-b832-8b17cf6cbfe8, characteristicUuid: abbafc03-e56a-484c-b832-8b17cf6cbfe8, descriptorUuid: 00002902-0000-1000-8000-00805f9b34fb LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Device: PRIVATE-MAC-S88PRO-NO2 SUBSCRIBED to LinkConfiguration service LinkConfigurationServiceEventListener-[FitbitGatt Async Operation Thread] Sending response with status: 0 for device: PRIVATE-MAC-S88PRO-NO2 GattServerResponseSender-[FitbitGatt Async Operation Thread] Sending response to GattServer for requestId: 3 GattTransactionExtKt$runTxReactive-[RxCachedThreadScheduler-1] Running GattTransaction SendGattServerResponseTransaction GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction ReadGattCharacteristicTransaction succeeded GattStateTransitionValidator-[GATT Server Transaction Thread] [null] Current State IDLE, Success State SEND_SERVER_RESPONSE_SUCCESS GattCharacteristicReader$read-[FitbitGatt Async Operation Thread] Success reading ac2f0145-8182-4be5-91e0-2992e6b40ebb characteristic data: AC 2F 03 45 81 82 4B E5 91 E0 29 92 E6 B4 0E BB GattServerConnection-[GATT Server Transaction Thread] [Pixel 3a] Transitioning from state IDLE to state SENDING_SERVER_RESPONSE GattDatabaseValidator$readEphemeralPointerCharacteristic-[FitbitGatt Async Operation Thread] Successfully read ac2f0145-8182-4be5-91e0-2992e6b40ebb GattServerConnection-[GATT Server Transaction Thread] [Pixel 3a] Transitioning from state SENDING_SERVER_RESPONSE to state SEND_SERVER_RESPONSE_SUCCESS GattDatabaseValidator$writeEphemeralCharacteristic-[FitbitGatt Async Operation Thread] Writing to Gatt Database Ephemeral Characteristic ac2f0345-8182-4be5-91e0-2992e6b40ebb GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SendGattServerResponseTransaction succeeded LinkConfigurationServiceEventListener$sendResponse-[main] Successfully sent 0 response for Gatt server write request GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattServerConnection-[main] [Pixel 3a] Transitioning from state SEND_SERVER_RESPONSE_SUCCESS to state IDLE GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattDatabaseValidator$writeEphemeralCharacteristic-[FitbitGatt Async Operation Thread] Successfully write Gatt Database Ephemeral Characteristic ac2f0345-8182-4be5-91e0-2992e6b40ebb GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction GattConnection-[FitbitGatt Async Operation Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: SubscribeToCharacteristicNotificationsTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State ENABLE_CHARACTERISTIC_NOTIFICATION_SUCCESS SubscribeToCharacteristicNotificationsTransaction-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Notification success on abbaff02-e56a-484c-b832-8b17cf6cbfe8 StrategyProvider-[S88Pro GATT Transaction Thread] The current device has properties: AndroidDevice[Google, Pixel 3a, 30, sargo, google, sargo] StrategyProvider-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Target android device does not match, no need for strategy GattTransactionExtKt$runTxReactive-[main] Running GattTransaction SubscribeToCharacteristicNotificationsTransaction succeeded GattTransactionExtKt$runTxReactive-[main] Running GattTransaction WriteGattDescriptorTransaction GattConnection-[main] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteGattDescriptorTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_DESCRIPTOR_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro] onDescriptorWrite: Gatt Response Status GATT_SUCCESS GattClientCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteGattDescriptorTransaction succeeded PeerGattServiceSubscriber$subscribe-[FitbitGatt Async Operation Thread] Successfully subscribed to abbaff02-e56a-484c-b832-8b17cf6cbfe8 LinkupWithPeerNodeHandler$link-[FitbitGatt Async Operation Thread] Successfully subscribed to Gattlink service on Node: PRIVATE-MAC-S88PRO-NO2 StackPeer$connect-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) starting stack and bridge Bridge-[FitbitGatt Async Operation Thread] Starting bridge NodeDataReceiverProvider-[FitbitGatt Async Operation Thread] Using GattlinkService hosted from remote device for receiving data TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 80 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 80 NodeDataSenderProvider-[Thread-3] Using FitbitGattlink Service hosted from remote device for sending data Stack-[Thread-3] DTLS state change received tlsState: 1, tlsLastError: 0, pskIdentity: [B@1b2e59b GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction StackPeer$getConnectionStatusObservable-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) listening to peripheral events StackPeer$getConnectionStatusObservable-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) received connection change status: CONNECTED StackPeer$getConnectionStatusObservable-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) received connection change status: CONNECTED StackPeer$getDtlsEventObservable-[FitbitGatt Async Operation Thread] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) listening to tls events GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS StackPeer$getDtlsEventObservable-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) Tls status changed to TLS_STATE_HANDSHAKE GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 81 00 00 08 08 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 81 00 00 08 08 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 81 00 00 08 08 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 81 00 00 08 08 Stack-[Thread-3] Received StackEvent 1735160619 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction Stack-[Thread-3] Event type received: gls+ GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 00 45 00 00 81 00 17 00 00 FF 11 67 53 A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 6D BF 82 16 FE FF 00 00 00 00 00 00 00 00 00 58 01 00 00 4C 00 00 00 00 00 00 00 4C FE FD 60 F9 75 DE 89 D8 16 47 9E 09 47 01 7A 29 9F 7C BA 53 29 8C 60 75 90 15 CF 95 7A 3D F2 D8 1B D2 00 00 00 08 C0 A4 00 A8 C0 37 00 FF 01 00 00 1A 00 0A 00 04 00 02 00 17 00 0B 00 02 01 00 00 16 00 00 00 17 00 00 00 23 00 00 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 00 45 00 00 81 00 17 00 00 FF 11 67 53 A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 6D BF 82 16 FE FF 00 00 00 00 00 00 00 00 00 58 01 00 00 4C 00 00 00 00 00 00 00 4C FE FD 60 F9 75 DE 89 D8 16 47 9E 09 47 01 7A 29 9F 7C BA 53 29 8C 60 75 90 15 CF 95 7A 3D F2 D8 1B D2 00 00 00 08 C0 A4 00 A8 C0 37 00 FF 01 00 00 1A 00 0A 00 04 00 02 00 17 00 0B 00 02 01 00 00 16 00 00 00 17 00 00 00 23 00 00 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 00 45 00 00 9F 00 00 00 00 FF 11 67 4C A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 8B AB AF 16 FE FD 00 00 00 00 00 00 00 00 00 5D 02 00 00 51 00 00 00 00 00 00 00 51 FE FD 60 F9 75 DC 51 1B DA 58 F3 95 23 22 B1 F2 7C 19 91 F9 B7 D3 CD 0A 76 D2 14 A3 2F D3 B1 9E 24 ED 20 3F 0C 78 D0 42 14 67 13 BC F3 5F 23 AE 5C 6C 90 A8 3E 55 6F 23 21 2F 41 B5 B4 5C 08 A9 A9 74 66 C0 A4 00 00 09 FF 01 00 01 00 00 17 00 00 16 FE FD 00 00 00 00 00 00 00 01 00 0C 0E 00 00 00 00 01 00 00 00 00 00 00 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 00 45 00 00 9F 00 00 00 00 FF 11 67 4C A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 8B AB AF 16 FE FD 00 00 00 00 00 00 00 00 00 5D 02 00 00 51 00 00 00 00 00 00 00 51 FE FD 60 F9 75 DC 51 1B DA 58 F3 95 23 22 B1 F2 7C 19 91 F9 B7 D3 CD 0A 76 D2 14 A3 2F D3 B1 9E 24 ED 20 3F 0C 78 D0 42 14 67 13 BC F3 5F 23 AE 5C 6C 90 A8 3E 55 6F 23 21 2F 41 B5 B4 5C 08 A9 A9 74 66 C0 A4 00 00 09 FF 01 00 01 00 00 17 00 00 16 FE FD 00 00 00 00 00 00 00 01 00 0C 0E 00 00 00 00 01 00 00 00 00 00 00 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 40 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 40 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 01 45 00 00 8B 00 18 00 00 FF 11 67 48 A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 77 6B 08 16 FE FD 00 00 00 00 00 00 00 01 00 17 10 00 00 0B 00 01 00 00 00 00 00 0B 00 09 42 4F 4F 54 53 54 52 41 50 14 FE FD 00 00 00 00 00 00 00 02 00 01 01 16 FE FD 00 01 00 00 00 00 00 00 00 30 00 01 00 00 00 00 00 00 31 E5 14 CC FF 8B EA 1D 2A 61 57 96 BA C4 08 FE 1B 66 45 C3 FA 5D E7 7C AC 56 4A 23 7A AE 13 F5 15 9E 81 F5 03 D8 1E 90 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 01 45 00 00 8B 00 18 00 00 FF 11 67 48 A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 77 6B 08 16 FE FD 00 00 00 00 00 00 00 01 00 17 10 00 00 0B 00 01 00 00 00 00 00 0B 00 09 42 4F 4F 54 53 54 52 41 50 14 FE FD 00 00 00 00 00 00 00 02 00 01 01 16 FE FD 00 01 00 00 00 00 00 00 00 30 00 01 00 00 00 00 00 00 31 E5 14 CC FF 8B EA 1D 2A 61 57 96 BA C4 08 FE 1B 66 45 C3 FA 5D E7 7C AC 56 4A 23 7A AE 13 F5 15 9E 81 F5 03 D8 1E 90 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource TlsKeyResolver-[Thread-3] Resolving key for keyId: 42 4F 4F 54 53 54 52 41 50 TlsKeyResolver-[Thread-3] Resolving key for keyId: 42 4F 4F 54 53 54 52 41 50 Stack-[Thread-3] Key resolved for given keyID TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 01 45 00 00 67 00 01 00 00 FF 11 67 83 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 53 66 C8 14 FE FD 00 00 00 00 00 00 00 02 00 01 01 16 FE FD 00 01 00 00 00 00 00 00 00 30 00 01 00 00 00 00 00 00 AE B2 7B 8D ED 78 F7 70 D5 70 66 2B A6 65 C8 B1 44 82 B5 0E 3A 24 4D A2 76 7A FB 35 FB 91 CF 05 61 67 BA 30 89 3C FA 6A Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 01 45 00 00 67 00 01 00 00 FF 11 67 83 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 53 66 C8 14 FE FD 00 00 00 00 00 00 00 02 00 01 01 16 FE FD 00 01 00 00 00 00 00 00 00 30 00 01 00 00 00 00 00 00 AE B2 7B 8D ED 78 F7 70 D5 70 66 2B A6 65 C8 B1 44 82 B5 0E 3A 24 4D A2 76 7A FB 35 FB 91 CF 05 61 67 BA 30 89 3C FA 6A Stack-[Thread-3] DTLS state change received tlsState: 2, tlsLastError: 0, pskIdentity: [B@2c4d1f8 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 40 StackPeer$getDtlsEventObservable-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) Tls status changed to TLS_STATE_SESSION GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 40 StackPeer$connect-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) connection has updated its status to CONNECTED RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource StackEventHandler$dispatchEvents-[main] StackEvent received: com.fitbit.goldengate.bindings.stack.StackEvent$GattlinkSessionReady@adafb2f GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded AddHandlerHelperKt$addResourceHandler-[RxCachedThreadScheduler-1] kotlin.jvm.internal.StringCompanionObject@a4c3c72 completed AddHandlerHelperKt$addResourceHandler-[RxCachedThreadScheduler-2] kotlin.jvm.internal.StringCompanionObject@a4c3c72 completed TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 41 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 41 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 41 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 41 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource CoapActivity-[main] Sending coap message TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 02 45 00 00 54 00 02 00 00 FF 11 67 95 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 40 25 2D 17 FE FD 00 01 00 00 00 00 00 01 00 2B 00 01 00 00 00 00 00 01 99 11 C1 0D 57 36 AA FA 17 FC A0 52 FC 51 2A 2B 90 4E CF 6C D9 C4 9D 9B AF 24 61 4E 45 3F D6 14 65 16 35 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 02 45 00 00 54 00 02 00 00 FF 11 67 95 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 40 25 2D 17 FE FD 00 01 00 00 00 00 00 01 00 2B 00 01 00 00 00 00 00 01 99 11 C1 0D 57 36 AA FA 17 FC A0 52 FC 51 2A 2B 90 4E CF 6C D9 C4 9D 9B AF 24 61 4E 45 3F D6 14 65 16 35 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 02 45 00 00 57 00 19 00 00 FF 11 67 7B A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 43 19 44 17 FE FD 00 01 00 00 00 00 00 01 00 2E 00 01 00 00 00 00 00 01 25 DE 51 C2 D5 DF 94 0B 31 E9 73 5A 5F AD E5 1E 4B A7 19 3E E9 85 1A E3 17 8C C1 E5 FA 55 88 4A CE C3 89 10 D2 4D Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 02 45 00 00 57 00 19 00 00 FF 11 67 7B A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 43 19 44 17 FE FD 00 01 00 00 00 00 00 01 00 2E 00 01 00 00 00 00 00 01 25 DE 51 C2 D5 DF 94 0B 31 E9 73 5A 5F AD E5 1E 4B A7 19 3E E9 85 1A E3 17 8C C1 E5 FA 55 88 4A CE C3 89 10 D2 4D RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 42 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 42 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 42 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 42 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded PeripheralScanner-[main] Resetting scan too much counter, 120000 ms have gone by. GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 03 45 00 00 54 00 1A 00 00 FF 11 67 7D A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 40 8A 13 17 FE FD 00 01 00 00 00 00 00 02 00 2B 00 01 00 00 00 00 00 02 1E 7A 61 7D 3E 23 4D 49 F3 F9 AE 52 CD 89 9E 57 09 AC 76 DA B4 BE 73 FD AA 4C 8F 05 21 5B DD 0F 8D 1C 6A Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 03 45 00 00 54 00 1A 00 00 FF 11 67 7D A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 40 8A 13 17 FE FD 00 01 00 00 00 00 00 02 00 2B 00 01 00 00 00 00 00 02 1E 7A 61 7D 3E 23 4D 49 F3 F9 AE 52 CD 89 9E 57 09 AC 76 DA B4 BE 73 FD AA 4C 8F 05 21 5B DD 0F 8D 1C 6A RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 03 45 00 00 57 00 03 00 00 FF 11 67 91 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 43 9E E2 17 FE FD 00 01 00 00 00 00 00 02 00 2E 00 01 00 00 00 00 00 02 77 E7 2B BF F7 24 DD CA 70 39 2F E1 29 55 58 BB 28 09 0D D3 23 42 DA B0 DE C1 4A 19 39 30 62 1C 94 49 55 A0 9F F4 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 03 45 00 00 57 00 03 00 00 FF 11 67 91 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 43 9E E2 17 FE FD 00 01 00 00 00 00 00 02 00 2E 00 01 00 00 00 00 00 02 77 E7 2B BF F7 24 DD CA 70 39 2F E1 29 55 58 BB 28 09 0D D3 23 42 DA B0 DE C1 4A 19 39 30 62 1C 94 49 55 A0 9F F4 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 43 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 43 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 43 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 43 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource CoapActivity-[main] Sending coap message TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 04 45 00 00 54 00 04 00 00 FF 11 67 93 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 40 FE CA 17 FE FD 00 01 00 00 00 00 00 03 00 2B 00 01 00 00 00 00 00 03 02 71 22 83 C8 2F 73 3A 1B DB 93 C9 24 F1 8F A4 3C A3 82 B2 AF D7 E1 74 86 F1 49 A0 29 46 24 65 CF BF 37 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 04 45 00 00 54 00 04 00 00 FF 11 67 93 A9 FE 00 02 A9 FE 00 03 16 34 16 34 00 40 FE CA 17 FE FD 00 01 00 00 00 00 00 03 00 2B 00 01 00 00 00 00 00 03 02 71 22 83 C8 2F 73 3A 1B DB 93 C9 24 F1 8F A4 3C A3 82 B2 AF D7 E1 74 86 F1 49 A0 29 46 24 65 CF BF 37 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 04 45 00 00 57 00 1B 00 00 FF 11 67 79 A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 43 5C 5F 17 FE FD 00 01 00 00 00 00 00 03 00 2E 00 01 00 00 00 00 00 03 FC 10 6D 95 1F BA 25 6B 95 09 54 78 BA 16 0C 1E 72 B4 7A 52 F0 8E 20 A3 29 C3 77 E0 F7 40 17 74 58 B2 A5 09 95 07 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 04 45 00 00 57 00 1B 00 00 FF 11 67 79 A9 FE 00 03 A9 FE 00 02 16 34 16 34 00 43 5C 5F 17 FE FD 00 01 00 00 00 00 00 03 00 2E 00 01 00 00 00 00 00 03 FC 10 6D 95 1F BA 25 6B 95 09 54 78 BA 16 0C 1E 72 B4 7A 52 F0 8E 20 A3 29 C3 77 E0 F7 40 17 74 58 B2 A5 09 95 07 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource GattClientCharacteristicChangeListener$ClientCharacteristicChangeListener-[FitbitGatt Async Operation Thread] onClientCharacteristicChanged from device PRIVATE-MAC-S88PRO-NO2, status: SUCCESS, data: 44 Bridge$bridgeReceive-[FitbitGatt Async Operation Thread] Received data from connected Node(PRIVATE-MAC-S88PRO-NO2): 44 RxSource-[FitbitGatt Async Operation Thread] Receiving data on RxSource TxSink-[Thread-3] Calling into Java PutData callback Bridge$bridgeTransmit-[Thread-3] Got data for transmission to connected Node: 44 Bridge$bridgeTransmit-[Thread-3] Transmitting data to connected Node(PRIVATE-MAC-S88PRO-NO2): 44 GattTransactionExtKt$runTxReactive-[pool-3-thread-1] Running GattTransaction WriteCharacteristicTransaction GattConnection-[pool-3-thread-1] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: WriteCharacteristicTransaction GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State WRITE_CHARACTERISTIC_SUCCESS GattTransactionExtKt$runTxReactive-[FitbitGatt Async Operation Thread] Running GattTransaction WriteCharacteristicTransaction succeeded PeripheralScanner-[main] Resetting scan too much counter, 120000 ms have gone by. GattClientCallback-[Binder:7003_3] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_UNKNOWN GattServerCallback-[Binder:7003_1] [S88Pro] onConnectionStateChange: Gatt Response Status GATT_SUCCESS LowEnergyAclListener-[main] BT change received ! GattClientCallback-[Binder:7003_3] [S88Pro][Threading] Originally called on thread : Binder:7003_3 GattServerCallback-[Binder:7003_1] [S88Pro][Threading] Originally called on thread : Binder:7003_1 LowEnergyAclListener-[main] S88Pro Device is disconnected GattClientCallback-[Binder:7003_3] [S88Pro]Connection state: Not-Connected GattServerConnectionChangeListener-[FitbitGatt Async Operation Thread] Handle ServerConnectionStateChanged call from device PRIVATE-MAC-S88PRO-NO2, result: Transaction Name: Unknown, Gatt State: IDLE - State Type: IDLE, Transaction Result Status: FAILURE, Response Status: GATT_SUCCESS, rssi: 0, mtu: 0, Characteristic UUID: null, Service UUID: null, Descriptor UUID: null, Data: null, Offset: 0, txPhy: 1, rxPhy: 1, transaction results: [] GattConnection-[main] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Received transaction: GattDisconnectionTransaction GattClientCallback-[Binder:7003_3] [S88Pro] The connection state may have changed in error StackPeer$getConnectionStatusObservable-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) received connection change status: DISCONNECTED GattStateTransitionValidator-[S88Pro GATT Transaction Thread] [[FitbitBluetoothDevice Address: PRIVATE-MAC-S88PRO-NO2, Name: S88Pro, Rssi: -64, Advertising Data: 02010203 0362FD07 09533838 50726F02 0AF90000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000, Device Origin: SCANNED]] Current State IDLE, Success State DISCONNECTED StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) is detaching its service and tearing down its stack, bridge GattClientCallback-[Binder:7003_3] [S88Pro] Disconnection reason: GATT_CONN_UNKNOWN Bridge-[main] Stop bridge from receiving or sending new data LowEnergyAclListener-[S88Pro GATT Transaction Thread] Successful disconnection GattClientCallback-[Binder:7003_3] [S88Pro] disconnected, waiting 1000ms for full disconnection LowEnergyAclListener-[S88Pro GATT Transaction Thread] S88Pro Notifying listeners of connection disconnected CoapEndpoint-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) sets filter group to GROUP_1 Stack-[main] Closing stack RxSource-[main] Destroying RxSource TxSink-[main] Freeing tx sink StackPeer$connect-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) connection has thrown an error com.fitbit.goldengate.peripheral.NodeDisconnectedException: The node disconnected unexpectedly at com.fitbit.goldengate.node.stack.StackPeer$getConnectionStatusObservable$1$2.apply(StackPeer.kt:309) at com.fitbit.goldengate.node.stack.StackPeer$getConnectionStatusObservable$1$2.apply(StackPeer.kt:71) at io.reactivex.internal.operators.observable.ObservableMap$MapObserver.onNext(ObservableMap.java:57) at io.reactivex.internal.operators.observable.ObservableConcatMap$ConcatMapDelayErrorObserver$DelayErrorInnerObserver.onNext(ObservableConcatMap.java:506) at io.reactivex.internal.operators.observable.ObservableDoOnEach$DoOnEachObserver.onNext(ObservableDoOnEach.java:101) at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201) at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255) at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:124) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.goldengate.peripheral.NodeDisconnectedException: The node disconnected unexpectedly StackPeer-[main] StackPeer with key BluetoothAddressNodeKey(value=PRIVATE-MAC-S88PRO-NO2) is removing the active connection AbstractHostActivity$connectToPeripheral-[main] Error connecting com.fitbit.goldengate.peripheral.NodeDisconnectedException: The node disconnected unexpectedly at com.fitbit.goldengate.node.stack.StackPeer$getConnectionStatusObservable$1$2.apply(StackPeer.kt:309) at com.fitbit.goldengate.node.stack.StackPeer$getConnectionStatusObservable$1$2.apply(StackPeer.kt:71) at io.reactivex.internal.operators.observable.ObservableMap$MapObserver.onNext(ObservableMap.java:57) at io.reactivex.internal.operators.observable.ObservableConcatMap$ConcatMapDelayErrorObserver$DelayErrorInnerObserver.onNext(ObservableConcatMap.java:506) at io.reactivex.internal.operators.observable.ObservableDoOnEach$DoOnEachObserver.onNext(ObservableDoOnEach.java:101) at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201) at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255) at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:124) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7664) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947) -com.fitbit.goldengate.peripheral.NodeDisconnectedException: The node disconnected unexpectedly PeripheralScanner-[RxCachedThreadScheduler-1] Start High priority Scan PeripheralScanner-[RxCachedThreadScheduler-1] Scan filter's size: 2 PeripheralScanner-[RxCachedThreadScheduler-1] Starting scan, scan count in this 120000 ms is 1 FitbitGatt-[RxCachedThreadScheduler-1] On scan status changed true PeripheralScanner$scanForDevices-[RxCachedThreadScheduler-1] Started Scanning: true AbstractHostActivity-[main] Release the partial wake lock GattClientCallback-[FitbitGatt Async Operation Thread] [S88Pro] Full disconnection PeripheralScanner-[main] StopScanning requested PeripheralScanner-[main] Stopping scan, changing from true to false FitbitGatt-[main] On scan status changed false