2015年5月4日 星期一

BLE pairing issue on Android 5.0.x


This issue occurs when device request pairing on initializing. Then Android 5.0.1 and 5.0.2 will show pairing alert windows but can't input digital key number after pressing pairing button.
I change the pairing mode to waiting for request from initial pairing. In these two systems will automatically bonded device in first connection. After that, the system won't request any pairing code. In others version, such as 4.4.2 and 4.3, the system will alert to input pin code, when BLE get inefficient authentication, user still could input passkey to bonding.

The below information I collect from internet. In order to solve this problem, may need to upgrade system to 5.1 from 5.0.x. Or change F/W pairing mode to wait for request. Although it won't request any passkey, but it works. 

Problems on
5.0.1 on Moto G 1^ gen
Nexus 5


Tomtom releases and support devices:
 Samsung Galaxy S3, S4, S5
  • Samsung Note 2 & 3
  • Nexus 5 & 6
  • HTC One M7 & M8
  • Motorola Moto X
  • LG G3
  • Sony Z2 & Z3

from 44 vbo...@gmail.com
Nexus devices are declaring its IO capability on pairing request as
DisplayYesNo instead of KeyboardDisplay, which is the case with Samsung
Galaxy S5 and some other devices. I guess Samsung is using it's own BT
stack which handles this nicely while Google/Nexus is having it's own which
is causing those issues.

Since watch is declaring itself as DisplayOnly on pairing, Google's or
whoever's BT stack is the only place where fingers should be pointed at.

They've managed to fix most of the issues which were there from 4.3 (losing
LTK on disconnections, zombie paired devices, false true for GATT
operations return, etc...) but this just made it completely useless.

#47 primoz.r...@gmail.com
It seems that this issue has been resolved in Android 5.1 factory image for Nexus 5.


Next problem: Bluetooth not working Glitch: Bluetooth not working
There have been a lot of different reports about Bluetooth issues with Android 5.0 Lollipop. Some people are having trouble pairing devices, some find that the connection can be established, but not all of the functions work correctly, and some report that it disconnects, apparently at random. There are a few things you can try:
Potential solutions:
  • First of all, make sure that you are trying to pair correctly. For some accessories, you'll need to hold down a button to enter pairing mode.
  • Try deleting old Bluetooth profiles on the device or system you're trying to connect to, in case you've reached a limit.
  • Go to Settings > Bluetooth on your Android device, touch the settings icon next to it, and then Unpair it. Reboot the phone and try again.
  • If you still can't connect, then delete the profile on both devices again. Afterward, go to Settings > Apps > All > Bluetooth Share and Clear data and Clear cache. Restart the phone, and set the connection up from scratch.
  • If you're still having problems, then refer to your manufacturer and make sure that your Bluetooth device is up to date. Also, watch out for Android updates.
from http://www.appy-geek.com/Web/ArticleWeb.aspx?regionid=1&articleid=35876498


It's not work for me.


#6 jose.sal...@gmail.com
 We are having the same issue with our devices, and after looking at the packets sent over the air, we realized  the root cause of the issue. The AOSP is incorrectly reporting its capabilities and setting IO capabilities as DisplayYesNo. Since the IO capabilities of the device is set to DisplayOnly, by protocol, the pairing mechanism is switched back to just works. If the device does not support just works, then the whole pairing/bonding process fails. Please look at the following link for a detailed explanation of this process: https://community.freescale.com/thread/332191.

 We need to know from Google if there is a way to code our App to set the OS capability to KeyboardDisplay in order to get around this issue. Right now our development team is looking at reflection to work around this issue but a little help from the Android developers would help.


Another bonding issue at 4.3
 Issue 64234:Bonding issue with BLE device in Android OS 4.3 https://code.google.com/p/android/issues/detail?id=64234

Tomtom device issues:
https://en.discussions.tomtom.com/mysports-connect-389/pairing-issue-on-nexus-5-android-5-948640/index3.html
Garmin device issues:
https://forums.garmin.com/showthread.php?163340-If-you-are-having-new-problems-since-Android-5-0-please-post-here

Casio watch issues:
 http://www.bluewatcher.es/supported.php
Other devices have the same issues:
http://movescountandroidbeta.com/android-beta-pairing-tips/

Android upgrade history -

Reference:
1. Google issue: https://code.google.com/p/android/issues/detail?id=80560
2. Tomtmo devices:
https://en.discussions.tomtom.com/mysports-connect-389/lollipop-bluetooth-pairing-issue-unable-to-enter-the-passcode-955054/index2.html
3. Android version market share
https://developer.android.com/about/dashboards/index.html
4. Android version 5 detail (chinese)
http://www.kocpc.com.tw/archives/13980
5. BLE IO setting
https://community.freescale.com/thread/332191
6. The same issues from TI forum
https://e2e.ti.com/support/wireless_connectivity/f/538/p/416347/1480714
7. https://code.google.com/p/android/issues/detail?id=79668
8. https://code.google.com/p/android/issues/detail?id=80807


沒有留言:

張貼留言