我有一个 Android 应用程序,它使用 RxAndroidBLE 库连接到蓝牙设备(带有 RN4020 蓝牙模块的 PCB)。
在我的三星 Galaxy Tab SM-T310 (Android 6.0.1) 上运行良好。
在我的摩托罗拉 Moto G3 (Android 7.1.2) 上,它可以连接,但随后会立即断开连接并出现一些错误。
我这样连接:
private void BLE_connect() {
BLE_Device.observeConnectionStateChanges()
.compose(bindUntilEvent(DESTROY))
.observeOn(AndroidSchedulers.mainThread())
.subscribe(this::onConnectionStateChange,
throwable -> {
Timber.e("observeConnectionStateChanges error %s", throwable.toString());
});
BLE_ConnectionObservable = BLE_Device
.establishConnection(false)
.compose(bindUntilEvent(PAUSE))
.doOnUnsubscribe(this::clearSubscription)
.compose(new ConnectionSharingAdapter());
BLE_ConnectionObservable
.flatMap(RxBleConnection::discoverServices)
.first()
.compose(bindUntilEvent(PAUSE))
.observeOn(AndroidSchedulers.mainThread())
.doOnUnsubscribe(this::statusChange)
.subscribe(this::receivedUUIDScanResult, this::onConnectionFailure);
}
在“receivedUUIDScanResult”方法中,我订阅了一些私有特征。
日志:
08-14 11:42:59.968 13879-13879/com.ccd.trm V/DeviceFragment: -> BLE_connect()
08-14 11:42:59.996 13879-13879/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationConnect(205253843)
08-14 11:42:59.996 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationConnect(205253843)
08-14 11:42:59.998 13879-13879/com.ccd.trm V/DeviceFragment: <- BLE_connect [30ms]
08-14 11:43:00.007 13879-13879/com.ccd.trm V/DeviceFragment: -> onConnectionStateChange(newState=RxBleConnectionState{CONNECTING})
08-14 11:43:00.010 13879-13879/com.ccd.trm V/DeviceFragment: <- onConnectionStateChange [2ms]
08-14 11:43:00.182 13879-13879/com.ccd.trm V/DeviceFragment: -> onConnectionStateChange(newState=RxBleConnectionState{DISCONNECTED})
08-14 11:43:00.186 13879-13879/com.ccd.trm V/DeviceFragment: <- onConnectionStateChange [3ms]
08-14 11:43:00.186 13879-13879/com.ccd.trm V/DeviceFragment: -> onConnectionStateChange(newState=RxBleConnectionState{CONNECTING})
08-14 11:43:00.189 13879-13879/com.ccd.trm V/DeviceFragment: <- onConnectionStateChange [2ms]
08-14 11:43:00.197 13879-13879/com.ccd.trm D/BluetoothGatt: connect() - device: 00:1E:C0:4A:C8:15, auto: false
08-14 11:43:00.197 13879-13879/com.ccd.trm D/BluetoothGatt: registerApp()
08-14 11:43:00.197 13879-13879/com.ccd.trm D/BluetoothGatt: registerApp() - UUID=5ff83f71-a66b-4ab9-b368-7617bfc5aa82
08-14 11:43:00.203 13879-13892/com.ccd.trm D/BluetoothGatt: onClientRegistered() - status=0 clientIf=5
08-14 11:43:01.364 13879-13891/com.ccd.trm D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=5 device=00:1E:C0:4A:C8:15
08-14 11:43:01.367 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onConnectionStateChange newState=2 status=0
08-14 11:43:01.393 13879-13879/com.ccd.trm V/DeviceFragment: -> onConnectionStateChange(newState=RxBleConnectionState{CONNECTED})
08-14 11:43:01.394 13879-13879/com.ccd.trm V/DeviceFragment: <- onConnectionStateChange [0ms]
08-14 11:43:01.400 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationServicesDiscover(201174716)
08-14 11:43:01.406 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationConnect(205253843)
08-14 11:43:01.407 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationServicesDiscover(201174716)
08-14 11:43:01.414 13879-13879/com.ccd.trm D/BluetoothGatt: discoverServices() - device: 00:1E:C0:4A:C8:15
08-14 11:43:02.136 13879-13892/com.ccd.trm D/BluetoothGatt: onSearchComplete() = Device=00:1E:C0:4A:C8:15 Status=0
08-14 11:43:02.137 13879-13892/com.ccd.trm D/RxBle#BluetoothGatt: onServicesDiscovered status=0
08-14 11:43:02.138 13879-13879/com.ccd.trm V/DeviceFragment: -> receivedUUIDScanResult(services=com.polidea.rxandroidble.RxBleDeviceServices@57276c0)
08-14 11:43:02.140 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDisconnect(174800889)
08-14 11:43:02.141 13879-13879/com.ccd.trm D/DeviceFragment: service uuid: 00001800-0000-1000-8000-00805f9b34fb
08-14 11:43:02.142 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a00-0000-1000-8000-00805f9b34fb
08-14 11:43:02.143 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationServicesDiscover(201174716)
08-14 11:43:02.145 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDisconnect(174800889)
08-14 11:43:02.146 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a01-0000-1000-8000-00805f9b34fb
08-14 11:43:02.147 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a04-0000-1000-8000-00805f9b34fb
08-14 11:43:02.149 13879-13879/com.ccd.trm D/DeviceFragment: service uuid: 00001801-0000-1000-8000-00805f9b34fb
08-14 11:43:02.150 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a05-0000-1000-8000-00805f9b34fb
08-14 11:43:02.151 13879-13879/com.ccd.trm D/DeviceFragment: service uuid: 0000180a-0000-1000-8000-00805f9b34fb
08-14 11:43:02.151 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a25-0000-1000-8000-00805f9b34fb
08-14 11:43:02.151 13879-13879/com.ccd.trm V/DeviceFragment: -> readCharacteristicSerialNumber()
08-14 11:43:02.161 13879-13879/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationConnect(168844760)
08-14 11:43:02.164 13879-13879/com.ccd.trm V/DeviceFragment: <- readCharacteristicSerialNumber [12ms]
08-14 11:43:02.165 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a27-0000-1000-8000-00805f9b34fb
08-14 11:43:02.166 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a26-0000-1000-8000-00805f9b34fb
08-14 11:43:02.167 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a28-0000-1000-8000-00805f9b34fb
08-14 11:43:02.168 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a29-0000-1000-8000-00805f9b34fb
08-14 11:43:02.169 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a24-0000-1000-8000-00805f9b34fb
08-14 11:43:02.170 13879-13879/com.ccd.trm D/DeviceFragment: service uuid: ccd00000-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:02.171 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: ccd00001-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:02.172 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: ccd00002-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:02.174 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: ccd00003-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:02.175 13879-13879/com.ccd.trm V/DeviceFragment: -> readCharacteristicCalibration()
08-14 11:43:02.176 13879-13879/com.ccd.trm V/DeviceFragment: <- readCharacteristicCalibration [1ms]
08-14 11:43:02.178 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: ccd00004-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:02.178 13879-13879/com.ccd.trm V/DeviceFragment: -> subscribeCharacteristicData()
08-14 11:43:02.180 13879-13879/com.ccd.trm V/DeviceFragment: <- subscribeCharacteristicData [1ms]
08-14 11:43:02.181 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: ccd00005-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:02.181 13879-13879/com.ccd.trm V/DeviceFragment: -> readCharacteristicState()
08-14 11:43:02.183 13879-13879/com.ccd.trm V/DeviceFragment: <- readCharacteristicState [0ms]
08-14 11:43:02.183 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: ccd00006-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:02.185 13879-13879/com.ccd.trm D/DeviceFragment: service uuid: 0000180f-0000-1000-8000-00805f9b34fb
08-14 11:43:02.187 13879-13879/com.ccd.trm D/DeviceFragment: characteristic uuid: 00002a19-0000-1000-8000-00805f9b34fb
08-14 11:43:02.187 13879-13879/com.ccd.trm V/DeviceFragment: <- receivedUUIDScanResult [48ms]
08-14 11:43:02.187 13879-13879/com.ccd.trm V/DeviceFragment: -> onConnectionStateChange(newState=RxBleConnectionState{DISCONNECTED})
08-14 11:43:02.194 13879-13879/com.ccd.trm V/DeviceFragment: <- onConnectionStateChange [6ms]
08-14 11:43:02.195 13879-13879/com.ccd.trm V/DeviceFragment: -> onConnectionStateChange(newState=RxBleConnectionState{CONNECTING})
08-14 11:43:02.203 13879-13879/com.ccd.trm V/DeviceFragment: <- onConnectionStateChange [8ms]
08-14 11:43:02.204 13879-13879/com.ccd.trm D/BluetoothManager: getConnectionState()
08-14 11:43:02.204 13879-13879/com.ccd.trm D/BluetoothManager: getConnectedDevices
08-14 11:43:02.218 13879-13879/com.ccd.trm D/BluetoothGatt: cancelOpen() - device: 00:1E:C0:4A:C8:15
08-14 11:43:02.221 13879-13891/com.ccd.trm D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=5 device=00:1E:C0:4A:C8:15
08-14 11:43:02.222 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onConnectionStateChange newState=0 status=0
08-14 11:43:02.225 13879-13879/com.ccd.trm D/BluetoothGatt: close()
08-14 11:43:02.225 13879-13879/com.ccd.trm D/BluetoothGatt: unregisterApp() - mClientIf=5
08-14 11:43:02.228 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDisconnect(174800889)
08-14 11:43:02.229 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationConnect(168844760)
08-14 11:43:02.235 13879-13879/com.ccd.trm D/BluetoothGatt: connect() - device: 00:1E:C0:4A:C8:15, auto: false
08-14 11:43:02.235 13879-13879/com.ccd.trm D/BluetoothGatt: registerApp()
08-14 11:43:02.236 13879-13879/com.ccd.trm D/BluetoothGatt: registerApp() - UUID=6fb84ba0-bcc1-455c-b859-bc02d06c3a6c
08-14 11:43:02.239 13879-13892/com.ccd.trm D/BluetoothGatt: onClientRegistered() - status=0 clientIf=5
08-14 11:43:02.244 13879-13891/com.ccd.trm D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=5 device=00:1E:C0:4A:C8:15
08-14 11:43:02.244 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onConnectionStateChange newState=2 status=0
08-14 11:43:02.250 13879-13879/com.ccd.trm V/DeviceFragment: -> onConnectionStateChange(newState=RxBleConnectionState{CONNECTED})
08-14 11:43:02.250 13879-13879/com.ccd.trm V/DeviceFragment: <- onConnectionStateChange [0ms]
08-14 11:43:02.257 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationServicesDiscover(263970833)
08-14 11:43:02.267 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationConnect(168844760)
08-14 11:43:02.268 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationServicesDiscover(263970833)
08-14 11:43:02.271 13879-13879/com.ccd.trm D/BluetoothGatt: discoverServices() - device: 00:1E:C0:4A:C8:15
08-14 11:43:03.043 13879-13892/com.ccd.trm D/BluetoothGatt: onSearchComplete() = Device=00:1E:C0:4A:C8:15 Status=0
08-14 11:43:03.045 13879-13892/com.ccd.trm D/RxBle#BluetoothGatt: onServicesDiscovered status=0
08-14 11:43:03.057 13879-14100/com.ccd.trm D/BluetoothGatt: setCharacteristicNotification() - uuid: ccd00006-ccd0-ccd0-ccd0-ccd0ccd0ccd0 enable: true
08-14 11:43:03.064 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDescriptorWrite(41150467)
08-14 11:43:03.067 13879-14100/com.ccd.trm D/BluetoothGatt: setCharacteristicNotification() - uuid: ccd00002-ccd0-ccd0-ccd0-ccd0ccd0ccd0 enable: true
08-14 11:43:03.073 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDescriptorWrite(147383306)
08-14 11:43:03.077 13879-14100/com.ccd.trm D/BluetoothGatt: setCharacteristicNotification() - uuid: ccd00004-ccd0-ccd0-ccd0-ccd0ccd0ccd0 enable: true
08-14 11:43:03.083 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDescriptorWrite(10163501)
08-14 11:43:03.086 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationCharacteristicRead(254815408)
08-14 11:43:03.088 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationCharacteristicRead(114622543)
08-14 11:43:03.091 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationCharacteristicRead(241853370)
08-14 11:43:03.096 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationServicesDiscover(263970833)
08-14 11:43:03.099 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDescriptorWrite(41150467)
08-14 11:43:03.201 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onDescriptorWrite descriptor=00002902-0000-1000-8000-00805f9b34fb status=0
08-14 11:43:03.210 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onCharacteristicChanged characteristic=ccd00006-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:03.219 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDescriptorWrite(41150467)
08-14 11:43:03.220 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDescriptorWrite(147383306)
08-14 11:43:03.297 13879-13892/com.ccd.trm D/RxBle#BluetoothGatt: onDescriptorWrite descriptor=00002902-0000-1000-8000-00805f9b34fb status=0
08-14 11:43:03.302 13879-13892/com.ccd.trm D/RxBle#BluetoothGatt: onCharacteristicChanged characteristic=ccd00002-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:03.303 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDescriptorWrite(147383306)
08-14 11:43:03.304 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDescriptorWrite(10163501)
08-14 11:43:03.306 13879-14100/com.ccd.trm D/DeviceFragment: TRM2APP: [100, 0]
08-14 11:43:03.308 13879-14100/com.ccd.trm D/DeviceFragment: Status(Notify): 0
08-14 11:43:03.396 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onDescriptorWrite descriptor=00002902-0000-1000-8000-00805f9b34fb status=0
08-14 11:43:03.404 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onCharacteristicChanged characteristic=ccd00004-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:03.404 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDescriptorWrite(10163501)
08-14 11:43:03.405 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationCharacteristicRead(254815408)
08-14 11:43:03.407 13879-14100/com.ccd.trm V/TRMFileUtils: -> addData(count=3366, temperatures=[25.1, 25.1, 25.1, 25.1, 25.1, 25.1, 25.1, 0.0, 0.0], arraySize=7) [Thread:"pool-1-thread-1"]
08-14 11:43:03.407 13879-14100/com.ccd.trm V/TRMFileUtils: <- addData [0ms]
08-14 11:43:03.408 13879-14100/com.ccd.trm D/DeviceFragment: Data:Count:6732-25.1-25.1-25.1-25.1-25.1-25.1-25.1-
08-14 11:43:03.491 13879-13892/com.ccd.trm W/BluetoothGatt: onCharacteristicRead() - Device=00:1E:C0:4A:C8:15 handle=32 Status=0
08-14 11:43:03.493 13879-13892/com.ccd.trm D/RxBle#BluetoothGatt: onCharacteristicRead characteristic=ccd00003-ccd0-ccd0-ccd0-ccd0ccd0ccd0 status=0
08-14 11:43:03.495 13879-14100/com.ccd.trm D/DeviceFragment: readCharacteristicCalibration(15): [1, 94, 2, 38, 3, 82, 25, -21, 11, -23, 4, 91, 7, 8, 17]
08-14 11:43:03.504 13879-13892/com.ccd.trm D/RxBle#BluetoothGatt: onCharacteristicChanged characteristic=ccd00006-ccd0-ccd0-ccd0-ccd0ccd0ccd0
08-14 11:43:03.512 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationCharacteristicRead(254815408)
08-14 11:43:03.514 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationCharacteristicRead(114622543)
08-14 11:43:03.514 13879-14100/com.ccd.trm V/DeviceFragment: ? receivedCurrentTemperature(bytes=[0x2C, 0xDC, 0x1C, 0x22, 0x1C, 0x20, 0x00, 0x02, 0x00, 0x01, 0x11, 0x07, 0x0B, 0x0A, 0x1C, 0x00, 0x02]) [Thread:"pool-1-thread-1"]
08-14 11:43:03.525 13879-14100/com.ccd.trm D/DeviceFragment: Sample 3601 of 3600, Interval:2
Time: 02:00:02 of 02:00:00
NTC Temperature: 22.3°C (11484 ?)
Status: 0
Date: 11-08-2017, Time: 10:28
08-14 11:43:03.526 13879-14100/com.ccd.trm V/DeviceFragment: ? receivedCurrentTemperature [11ms]
08-14 11:43:03.588 13879-13891/com.ccd.trm W/BluetoothGatt: onCharacteristicRead() - Device=00:1E:C0:4A:C8:15 handle=14 Status=0
08-14 11:43:03.590 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onCharacteristicRead characteristic=00002a25-0000-1000-8000-00805f9b34fb status=0
08-14 11:43:03.592 13879-14100/com.ccd.trm D/DeviceFragment: DEVICE_INFORMATION_SERIAL_NUMBER(8): [49, 55, 86, 55, 48, 48, 49, 53]
08-14 11:43:03.593 13879-14100/com.ccd.trm D/DeviceFragment: Serial number: 17V70015
08-14 11:43:03.598 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationCharacteristicRead(114622543)
08-14 11:43:03.599 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationCharacteristicRead(241853370)
08-14 11:43:03.686 13879-13892/com.ccd.trm W/BluetoothGatt: onCharacteristicRead() - Device=00:1E:C0:4A:C8:15 handle=37 Status=0
08-14 11:43:03.686 13879-13892/com.ccd.trm D/RxBle#BluetoothGatt: onCharacteristicRead characteristic=ccd00005-ccd0-ccd0-ccd0-ccd0ccd0ccd0 status=0
08-14 11:43:03.687 13879-14100/com.ccd.trm V/DeviceFragment: ? setCurrentStatus(status=0) [Thread:"pool-1-thread-1"]
08-14 11:43:03.687 13879-14100/com.ccd.trm V/DeviceFragment: ? setCurrentStatus [0ms]
08-14 11:43:03.688 13879-14100/com.ccd.trm D/DeviceFragment: Status(Read): 0
08-14 11:43:03.689 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationCharacteristicRead(241853370)
08-14 11:43:04.718 13879-13891/com.ccd.trm D/BluetoothGatt: onClientConnectionState() - status=22 clientIf=5 device=00:1E:C0:4A:C8:15
08-14 11:43:04.719 13879-13891/com.ccd.trm D/RxBle#BluetoothGatt: onConnectionStateChange newState=0 status=22
08-14 11:43:04.722 13879-13879/com.ccd.trm V/DeviceFragment: ? onConnectionStateChange(newState=RxBleConnectionState{DISCONNECTED})
08-14 11:43:04.726 13879-13879/com.ccd.trm V/DeviceFragment: ? setCurrentStatus(status=-1)
08-14 11:43:04.728 13879-14100/com.ccd.trm E/DeviceFragment: Temperature received error BleGattException{macAddress=00:1E:C0:4A:C8:15, status=22 (0x16 -> https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/android-5.1.0_r1/stack/include/gatt_api.h), bleGattOperationType=BleGattOperation{description='CONNECTION_STATE'}}
08-14 11:43:04.728 13879-13891/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDisconnect(158893031)
08-14 11:43:04.729 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDisconnect(158893031)
08-14 11:43:04.731 13879-13879/com.ccd.trm V/DeviceFragment: ? setCurrentStatus [4ms]
08-14 11:43:04.731 13879-13879/com.ccd.trm V/DeviceFragment: ? onConnectionStateChange [8ms]
08-14 11:43:04.732 13879-14100/com.ccd.trm D/BluetoothGatt: setCharacteristicNotification() - uuid: ccd00006-ccd0-ccd0-ccd0-ccd0ccd0ccd0 enable: false
08-14 11:43:04.732 13879-13891/com.ccd.trm E/DeviceFragment: TRM2APP received error BleGattException{macAddress=00:1E:C0:4A:C8:15, status=22 (0x16 -> https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/android-5.1.0_r1/stack/include/gatt_api.h), bleGattOperationType=BleGattOperation{description='CONNECTION_STATE'}}
08-14 11:43:04.734 13879-13891/com.ccd.trm D/BluetoothGatt: setCharacteristicNotification() - uuid: ccd00002-ccd0-ccd0-ccd0-ccd0ccd0ccd0 enable: false
08-14 11:43:04.738 13879-14100/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDescriptorWrite(31591986)
08-14 11:43:04.740 13879-13884/com.ccd.trm I/art: Do full code cache collection, code=102KB, data=125KB
08-14 11:43:04.742 13879-13891/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDescriptorWrite(212789561)
08-14 11:43:04.743 13879-13884/com.ccd.trm I/art: Starting a blocking GC JitCodeCache
08-14 11:43:04.743 13879-13884/com.ccd.trm I/art: After code cache collection, code=92KB, data=101KB
08-14 11:43:04.744 13879-13879/com.ccd.trm D/BluetoothManager: getConnectionState()
08-14 11:43:04.744 13879-13879/com.ccd.trm D/BluetoothManager: getConnectedDevices
08-14 11:43:04.747 13879-13891/com.ccd.trm E/DeviceFragment: Data received error BleGattException{macAddress=00:1E:C0:4A:C8:15, status=22 (0x16 -> https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/android-5.1.0_r1/stack/include/gatt_api.h), bleGattOperationType=BleGattOperation{description='CONNECTION_STATE'}}
08-14 11:43:04.750 13879-13879/com.ccd.trm D/BluetoothGatt: close()
08-14 11:43:04.750 13879-13879/com.ccd.trm D/BluetoothGatt: unregisterApp() - mClientIf=5
08-14 11:43:04.751 13879-13891/com.ccd.trm D/BluetoothGatt: setCharacteristicNotification() - uuid: ccd00004-ccd0-ccd0-ccd0-ccd0ccd0ccd0 enable: false
08-14 11:43:04.755 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDisconnect(158893031)
08-14 11:43:04.757 13879-13891/com.ccd.trm D/RxBle#Radio: QUEUED RxBleRadioOperationDescriptorWrite(46786860)
08-14 11:43:04.759 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDescriptorWrite(31591986)
08-14 11:43:04.760 13879-13891/com.ccd.trm E/DeviceFragment: readCharacteristicCalibration -> onReadFailure BleGattException{macAddress=00:1E:C0:4A:C8:15, status=22 (0x16 -> https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/android-5.1.0_r1/stack/include/gatt_api.h), bleGattOperationType=BleGattOperation{description='CONNECTION_STATE'}}
08-14 11:43:04.763 13879-13891/com.ccd.trm E/DeviceFragment: readCharacteristicSerialNumber -> onReadFailure BleGattException{macAddress=00:1E:C0:4A:C8:15, status=22 (0x16 -> https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/android-5.1.0_r1/stack/include/gatt_api.h), bleGattOperationType=BleGattOperation{description='CONNECTION_STATE'}}
08-14 11:43:04.764 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDescriptorWrite(31591986)
08-14 11:43:04.765 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDescriptorWrite(212789561)
08-14 11:43:04.765 13879-13891/com.ccd.trm E/DeviceFragment: readCharacteristicState -> onReadFailure BleGattException{macAddress=00:1E:C0:4A:C8:15, status=22 (0x16 -> https://android.googlesource.com/platform/external/bluetooth/bluedroid/+/android-5.1.0_r1/stack/include/gatt_api.h), bleGattOperationType=BleGattOperation{description='CONNECTION_STATE'}}
08-14 11:43:04.771 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDescriptorWrite(212789561)
08-14 11:43:04.772 13879-13897/com.ccd.trm D/RxBle#Radio: STARTED RxBleRadioOperationDescriptorWrite(46786860)
08-14 11:43:04.776 13879-13897/com.ccd.trm D/RxBle#Radio: FINISHED RxBleRadioOperationDescriptorWrite(46786860)
08-14 11:43:16.935 13879-13879/com.ccd.trm V/DeviceFragment: ? onPause()
08-14 11:43:16.936 13879-13879/com.ccd.trm V/DeviceFragment: ? triggerDisconnect()
08-14 11:43:16.936 13879-13879/com.ccd.trm V/DeviceFragment: ? setCurrentStatus(status=-1)
08-14 11:43:16.938 13879-13879/com.ccd.trm V/DeviceFragment: ? setCurrentStatus [1ms]
08-14 11:43:16.938 13879-13879/com.ccd.trm V/DeviceFragment: ? triggerDisconnect [2ms]
08-14 11:43:16.938 13879-13879/com.ccd.trm V/DeviceFragment: ? onPause [2ms]