Open SarthakJ10 opened 1 year ago
Happening for us too on some user devices.
May be related: https://issuetracker.google.com/issues/242755161?pli=1
Here are the sniffer logs. I have multiple attempts to try and connect to the BLE peripheral and the first one is where bonding happens. withBonding.pcapng.zip
This is being reported by more of our users!
To add more context we manufacture custom wearable, PCB of which are based on Nordic designs. On Android 13 certain devices are failing to connect with these wearables. The logs of these are mainly of two types, one where there is an instant disconnect after connection (pretty much similar to the one @SarthakJ10 has posted) the other type being services not being discovered after connection.
We initially thought this was some bond management issue happening for users who are bonded while on Android 12 and after the OS update to Android 13 the connection was failing. However this is not the case. For a user on Android 13 and trying to connect to our peripheral for the first time this happens as well. Even the blinky sample project fails to connect with the phone.
On the same device we started our test while to Android 11 -> Android 12-> Android 13. It works as expected on Android 11 and Android 12.
Tested on
Device: One plus 8T (Model KB2001)
OS: Android 13 (KB2001_11_F.13)
Library version: v2.5.1
Please let me know if you would need any more specific central or peripheral side logs.
Did you try removing preferred PHY?
Also, did you try other phones with Android 13? I'll try to acquire One Plus 8T for testing. Thank you for reporting the issue.
Did you try removing preferred PHY?
@philips77 yes. I've tried with removing preferred PHY and also experimented with other PHYs but that did not help.
Also, did you try other phones with Android 13? I'll try to acquire One Plus 8T for testing. Thank you for reporting the issue.
@philips77 Thank you! Yes I did try on Pixel 7 running Android 13 and I have no issues on that phone.
Also, did you try other phones with Android 13? I'll try to acquire One Plus 8T for testing. Thank you for reporting the issue.
Yes. We tried on Pixel 7 Pro, Pixel 6 pro and a few other phones on android 13 but they were fine.
These are the user devices on which our app seemed buggy
I am not sure if the Bose Music App uses Nordic library under the hood but I was able to connect a pair of Bose headphones using their app on One plus 8T running Android 13 I have attached the sniffer log below
I am not sure if the Bose Music App uses Nordic library under the hood but I was able to connect a pair of Bose headphones using their app on One plus 8T running Android 13 I have attached the sniffer log below
I thought headphones use Bluetooth classic protocol and not LE.
We initially thought this was some bond management issue happening for users who are bonded while on Android 12 and after the OS update to Android 13 the connection was failing. However this is not the case. For a user on Android 13 and trying to connect to our peripheral for the first time this happens as well. Even the blinky sample project fails to connect with the phone.
So we tried a sample project (based on nrf connect sdk instead of nrf softdevice) and it works as expected on the One Plus 8T device. Connection works and services are getting discovered. Although I am not sure what this means and where the solution would lies.
Related discussions on the Nordic Q&A Forum
@philips77 any updates here?
@SarthakJ10
We are in control of the peripheral and trying to build our project based on nrf sdk v16.0.0.
Sample projects running on nrf sdk v16.0.0 connect with One Plus 8T. The same is not the case with nrf sdk v17.1.0.560.
If you are in control of the firmware running can you also try some experiments?
@SarthakJ10
We are in control of the peripheral and trying to build our project based on nrf sdk v16.0.0.
Sample projects running on nrf sdk v16.0.0 connect with One Plus 8T. The same is not the case with nrf sdk v17.1.0.560. If you are in control of the firmware running can you also try some experiments?
@archie94 I checked in with the FW Engineering team, we use v17.0.2 and unfortunately downgrading a major release is not a viable option for us.
@archie94 did you try to contact One plus support team too? Curious if you had any leads there? I did and I am still yet to receive a concrete reply from them.
Hey @SarthakJ10
No. Can you point me to their developer support forum?
We are in control of the peripheral and trying to build our project based on nrf sdk v16.0.0.
Sample projects running on nrf sdk v16.0.0 connect with One Plus 8T. The same is not the case with nrf sdk v17.1.0.560. If you are in control of the firmware running can you also try some experiments?
This was mostly unsuccessful. Some very Free RTOS project connect on nrf sdk 17.0.2 and 16.0.0 but their behavior is also erratic. Projects which require Bond Management Service do not work at all. Services do not get discovered.
Hi guys, Looks like the same issue with:
At the same time works as expected with the:
I use android-ble-library v.2.2.4. @archie94 , @SarthakJ10 , do you guys have any updates on this?
Hi @philips77
Were you able to check on an One Plus 8T? Any update on this issue?
This seems to be related to phones sending Read Multiple request in service discovery, and ignoring "Not supported" response.
Do you have logs when using SDK 16 and 17? What is the difference there?
We do have the phone. Could any of you, please, send here a HEX file for any DK that can reproduce the issue using One Plus 8T? CC: @hubuhubu
hi @philips77
I have emailed you the hex on aleksander.nowakowski@nordicsemi.no Subject: Failing to connect after upgrading to Android 13 Github #448
Hi @philips77
Just checking if you have received the HEX. Also if there are any other info I can help you with please let me know.
We run the HEX on 54840 DK.
We are seeing that on certain devices after upgrade to android 13 connection is failing with
Error: (0x3b): UNKNOWN (59)
Devices that we saw this issue:
We managed to reproduce the issue on our side with OnePlus 8T and are investigating. Neither nRF5 SDk nor NCS support Read Multiple request, but the central should not continue after getting Not Supported error.
@SarthakJ10 did you have any luck in circumventing this issue?
@SarthakJ10 did you have any luck in circumventing this issue?
@archie94 Nope. No luck so far. Although Sony released an OS update and that resolved issues just for the Sony Xperia phone. The issue still persists for One plus, Asus and even Nothing phone now. We are also exploring a potential hypothesis where if you remove the Bond Management Service on the BLE peripheral, it connects successfully
Hi! We are running into very similar issue with OnePlus phones using BLE connеction with Android OS and our devices, after they upgrade to lastest OxygenOs 13.1. But we use another hardware in our devices - based on Texas Instruments. Is any news about this problem? May be any workaround?
Maybe anyone tried to write a report to the developers of OxygenOs, so that they can see from their side what could be the problem?
@archie94 @SarthakJ10 Did you have any luck in fixing this issue?
I'm having similar issues with a Samsung S21 and Android 14.
@archie94 @SarthakJ10 Did you have any luck in fixing this issue?
I'm having similar issues with a Samsung S21 and Android 14.
Our firmware team was able to resolve the issue. I do not have much idea on which parameters they changed but no change was required from application / library side.
@archie94 @SarthakJ10 Did you have any luck in fixing this issue?
I'm having similar issues with a Samsung S21 and Android 14.
We were not able to fix it with Android 13. But Sony and other OEM manufacturers released OS level fix for Android 13 which fixed the issues for some of our customers.
Thank you both! After a week of crashing my head over a wall (I tried rebooting the phone several times, turning off/on Bluetooth, resetting network settings, and clearing cache almost everywhere), the phone "unlocked" itself, and now it seems to work fine. I didn't change anything on the device side or my application side. I'm trying to reproduce the issues, but I don't have much faith.
Hi! On a One plus 8T device running Android 13, it simply won't connect to the BLE peripheral Here are the logs from
BleManager
and the app is always timing out after initiating a service discovery.Here is the
connect
code:The device was able to connect successfully while it was running Android 12 but as soon as you update it to Android 13, it fails to connect.
Details: Device: One plus 8T OS: Android 13 (KB2005_11_F.13) Library version: v2.5.1