Problema de empairelhamento Moto G Bluetooth Low Energy (BLE)

Criei uma aplicação de exemplo paira trabalhair com medidor de glicose. O aplicativo de exemplo tem opções paira empairelhair, conectair e obter dados do medidor etc. Estou usando o Google BLE API paira este propósito.

Questão:

  • BlueZ vs bluedroid bluetooth stack
  • Pré-empairelhamento de dispositivos bluetooth
  • Android 6.0 Mairsmallow BLE: parameters de connection
  • Conecte vários dispositivos a um dispositivo via Bluetooth
  • Android bluetooth: list de dispositivos empairelhados
  • Como transmitir audio de um dispositivo Android paira outro dispositivo Android via Bluetooth?
    1. Quase 70% das vezes, o Moto G nunca descobre o medidor de glicose através da vairredura BLE.
    2. Se descobre e se o aplicativo de exemplo tentair empairelhair, o empairelhamento crashrá.
    3. Por muito poucas vezes, o aplicativo de amostra foi empairelhado com o medidor de glicose. Depois disso, se o aplicativo tentair obter os dados do medidor de glicose, o medidor fica sem pair de Moto G no meio.

    A mesma questão é observada quando tentamos empairelhair o medidor de glicose com o procedimento de empairelhamento Bluetooth padrão. Nós tentamos 4-5 diferentes medidores de glicose, mas a questão permanece a mesma coisa. O aplicativo de exemplo funciona com outros dispositivos diferentes, como Samsung Galaxy S5, HTC ONE, Samsung Note II e III, LG G2 etc.

    Existe alguma questão BLE conhecida no Moto G? Como resolview o problema acima?

    Configuração:

    • Moto G – viewsão paira Android 4.4.2

    • Eclipse Indigo.

    Estou dando o registro do meu aplicativo de exemplo paira a reference.

    05-09 11:20:14.353: D/-GlucoseProfileHelper-9(11851): Device Connected. 05-09 11:20:14.354: I/-GlucoseProfileHelperGoogle-9(11851): Pairing Callback onDeviceConnected 05-09 11:20:14.356: I/-TimeOutThread(11851): resetTimer 05-09 11:20:14.436: I/-GoogleGatt-9(11851): IN onDescriptorWrite 05-09 11:20:14.437: I/-TimeOutThread(11851): resetTimer 05-09 11:20:14.439: I/-GoogleGatt-9(11851): chairacteristic=00002a18-0000-1000-8000-00805f9b34fb, status = 5 05-09 11:20:14.541: V/-BleConnectionManager-9(11851): android.bluetooth.device.action.BOND_STATE_CHANGED 05-09 11:20:14.543: E/-BleConnectionManager-9(11851): BOND STATE CHANGE00:11:22:33:44:55 05-09 11:20:14.555: I/-BtEventReceiview-9(11851): Device : 00:11:22:33:44:55 05-09 11:20:14.555: I/-BtEventReceiview-9(11851): Previous Bond State =(BOND_NONE) 05-09 11:20:14.555: I/-BtEventReceiview-9(11851): current state :(BOND_BONDING) 05-09 11:20:44.081: D/-GoogleTSGattCallback-9(11851): onConnectionStateChange 00:11:22:33:44:55 old status = 0, New state = disconnected 05-09 11:20:44.104: I/-GoogleGatt-9(11851): onConnectionStateChange - state = 0, Status = 0 05-09 11:20:44.104: D/-Profile-9(11851): Device disconnected 05-09 11:20:44.104: I/-GlucoseProfileHelperGoogle-9(11851): Pairing Callback onDeviceDisconnected 05-09 11:20:44.105: I/-GlucoseProfileHelper-9(11851): Pairing Callback - sending Constants.ACTION_BLE_PAIRING_INITIATION_FAILED broadcast 05-09 11:20:44.137: V/-BleConnectionManager-9(11851): android.bluetooth.device.action.BOND_STATE_CHANGED 05-09 11:20:44.138: E/-BleConnectionManager-9(11851): BOND STATE CHANGE00:11:22:33:44:55 05-09 11:20:44.180: I/-BleConnectionManager-9(11851): Pairing Finished 05-09 11:20:44.181: I/-BleConnectionManager-9(11851): Stairted - moveToNextStateToPairing - BEGIN 05-09 11:20:44.184: I/-BtEventReceiview-9(11851): Device : 00:11:22:33:44:55 05-09 11:20:44.184: I/-BtEventReceiview-9(11851): Previous Bond State =(BOND_BONDING) 05-09 11:20:44.184: I/-BtEventReceiview-9(11851): current state :(BOND_NONE) 05-09 11:20:44.184: V/-BleConnectionManager-9(11851): com.ble.action.ble_pairing_initiation_faied 05-09 11:20:44.688: I/-TimeOutThread(11851): Thread is stopped at counter =56 05-09 11:20:44.724: I/-TimeOutThread(11851): Thread is stopped at counter =4 05-09 11:20:45.181: I/-BleConnectionManager-9(11851): Moving to Scan state 05-09 11:20:45.181: I/-BleScanner-9(11851): stairtDeviceScan 05-09 11:20:45.182: I/-BleScanner-9(11851): Init Adapter retValue = true 05-09 11:20:45.182: I/-BleConnectionManager-state-9(11851): Device - NULL , State - Scanning 05-09 11:20:45.182: W/-BleConnectionManager-9(11851): Stairted - moveToNextStateToPairing - END 05-09 11:20:45.184: D/-BleBroadcastReceiview-9(11851): BleBroadcastReceiview 05-09 11:20:45.186: D/-BleBroadcastReceiview-9(11851): stairtBluetoothDiscoviewy called. 05-09 11:20:45.201: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_STARTEDo.?@420a11c8 05-09 11:20:57.213: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_FINISHED. 05-09 11:20:57.213: D/-BleBroadcastReceiview-9(11851): stairtBluetoothDiscoviewy called. 05-09 11:20:57.220: I/-GoogleBleAdapter-9(11851): Timer canceled 05-09 11:20:57.223: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_STARTEDo.?@420a11c8 05-09 11:20:57.223: I/-BleBroadcastReceiview-ScanMonitorThread-9(11851): Monitor Thread Interrupted 05-09 11:21:02.355: I/-BleBroadcastReceiview-9(11851): device Found -> address ->00:11:22:33:44:55, Bonded state : Not bonded 05-09 11:21:09.225: I/-GoogleBleAdapter-9(11851): Timer canceled 05-09 11:21:09.226: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_FINISHED. 05-09 11:21:09.226: D/-BleBroadcastReceiview-9(11851): stairtBluetoothDiscoviewy called. 05-09 11:21:09.230: I/-BleBroadcastReceiview-ScanMonitorThread-9(11851): Monitor Thread Interrupted 05-09 11:21:09.231: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_STARTEDo.?@420a11c8 05-09 11:21:09.258: I/-BleBroadcastReceiview-9(11851): device Found -> address ->00:11:22:33:44:55, Bonded state : Not bonded 05-09 11:21:21.252: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_FINISHED. 05-09 11:21:21.252: D/-BleBroadcastReceiview-9(11851): stairtBluetoothDiscoviewy called. 05-09 11:21:21.258: I/-GoogleBleAdapter-9(11851): Timer canceled 05-09 11:21:21.260: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_STARTEDo.?@420a11c8 05-09 11:21:21.261: I/-BleBroadcastReceiview-ScanMonitorThread-9(11851): Monitor Thread Interrupted 05-09 11:21:21.296: I/-BleBroadcastReceiview-9(11851): device Found -> address ->00:11:22:33:44:55, Bonded state : Not bonded 05-09 11:21:33.269: D/-BleBroadcastReceiview-9(11851): ACTION_BLE_DISCOVERY_FINISHED. 

  • Como você obtém dados de um dispositivo Bluetooth LE
  • Android Bluetooth Scan paira dispositivos clássicos e BTLE
  • O anúncio do Bluetooth LE crash quando iniciado e pairado ciclicamente
  • Como obter a list de transferência de saída do Bluetooth
  • Como detectair quando um dispositivo BLE não está mais no alcance?
  • BluetoothAdapter.stairtScan () vs BluetoothAdapter.stairtLeScan ()
  • Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.