-
Notifications
You must be signed in to change notification settings - Fork 8.3k
Fix a disconnection 0x23 issue encoutered with new Intel meteor lake chip #81088
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Hello @SebastienRabaudPaCotte, and thank you very much for your first pull request to the Zephyr project! |
Fixed comments from CI check and commit format. Signed-off-by: SebastienRabaudPaCotte <[email protected]>
|
Without an air-trace I cannot really comment on anything. The modified code block handles this part of the specification: BLUETOOTH CORE SPECIFICATION Version 6.0 | Vol 6, Part B | Page 3212
|
This is their trace they provided on discord: |
Unfortunately that's a HCI trace, so it will not show the relevant LL procedure details. |
Please find the full trace (with LL Proc), always with the same adapter but with the device de:1f:86:ad:c6:b4, but can't find protocol error. Hope this helps |
Fixed a trailling space from CI check. Signed-off-by: SebastienRabaudPaCotte <[email protected]>
|
@nashif Hi, is there a possibility to involve someone from Intel Bluetooth Controller team to help resolve this interoperability discussions? |
The trace doesn't contain any relevant connection information, only ADV and SCAN, are you sure this isn't an "Only advertising packets" trace? |
Sorry for the bad capture, but no filtering set except ble address for my nRf device (de:1f:86:ad:c6:b4), trace realized from wireshark 4.2.2. I've done the same trace from another pc with wireshark 3.2.3 and get much more data (with exactly same setting, profile and dongle) but no error observed on the trace. Hope this helps |
|
Much better trace. Packet SummaryUsing "C" for central device (NUS) Packet 116 (event 2): P->C: ExplanationThis is a case of procedure collision. P starts a PHY Update procedure in packet 116 (event 2) with a C responds in packet 117 (event 3) with a C starts another PHY Update procedure in packet 125 (event 6).
From the point of P's view the last paragraph is read like: If device (P) initiates a procedure A (1st PHY Update) and, while that procedure (1st PHY Update) is not complete, receives a PDU (LL_PHY_REQ) from its peer (C) that initiates an incompatible procedure B (2nd PHY Update), then: |
|
Previously used workarounds #13396 (comment) |
Thanks for the analysis, seems faulty intel chip. |
Thanks for the workaround, seems to work. Wait to confirm before close the PR. |
|
Many thanks for the support, working fine disabling BT_AUTO_PHY_UPDATE, I close the pull request. |
Disabling the BT_AUTO_PHY_UPDATE is only a workaround for the symptom. We are observing many products in market with the observed symptoms. For better interoperability, which is a reasonable workaround?:
Any thoughts? |
|
This pull request has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 14 days. Note, that you can always re-open a closed pull request at any time. |
From an improved BLE project on nRF5340, switch to new gen ULTRA7 (Meteor Lake soc integrating the bluetooth 5.4) and get issue on ble connections: disconnection with reason 35 (BT_HCI_ERR_LL_PROC_COLLISION) following the connection.
From BLUETOOTH CORE SPECIFICATION Version 5.3, seems that the central should reject instead of disconnect. This fixs the disconnection issue.