This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Disconnect Reason = HCI Error Code 0x2A(Updated)

Hi,
i am using nrf51822 to develop our product. I'll try to describe more details to make you understand more clearly.

STEPS:

  1. While testing my project, I had trouble with bluetooth disconnecting too much.

  2. I turn on trace switch, and get the log that's attached.

log.txt

There I see DIFFERENT TRANSACTION COLLISION (0X2A) "The Different Transaction Collision error code indicates that an LMP transaction was started that collides with an ongoing transaction."

  1. I try to change a couple of connection parameters, and there are the 2 different results:
  1. Either the conn update event happens, the problem still exists (after random time)
  2. Or the conn update event does not happens (The current conn interval is 25ms as default when connected, update to min=25ms max=1000ms. So conn update event does not come. And the problem does not come out during testing -- at least after one hour of testing.
  1. Could it only be happening in my project? I also tested the examples
  1. Nordic\nrf51822\Board\nrf6310\s110\ble_app_proximity -- NG (Not good)
  2. an ANCS example got from FAE --NG
  1. The devices I tested against:
  1. Iphone5S(ios8.1.1) --NG(means met the disconnection for reason 0x2A)
  2. iPhone 6 (iOS 8.1.1) --NG
  3. iPhone 5 (iOS 8.1.1) --NG
  4. iPhone 4S (iOS8.1.1) --OK(means never happen disconnect reason 0x2A during test)
  5. iPad 4 (iOS7.1.2) --OK

Other information:

  1. SDK v6.1.0
  2. SoftDevice v7.0.0/v7.1.0
  3. Keil 4.71.2.0

I hope I have explained my problem clearly. How does the HCI error happen? Help me to solve it, please?

Thanks!

**Update 2014.11.28 :

sd v7.0.0

  1. Board\nrf6310\s110\ble_app_hids_keyboard -- modify conn_params to min_interval=100ms, max_interval=1000 ms, disconnect as hci_error 0x2A
  2. Board\nrf6310\s110\ble_app_hids_mouse -- modify conn_params to min_interval=100ms, max_interval=1000 ms, disconnect as hci_error 0x2A

sd v6.0.0
i modified my project to sd v6.0.0. the problem doesnt' exist any more. i have monitored the test for 1.5 hour now, and it is still OK.

Have you received the report related with this problem from anybody else?**

  • I still see this from time to time with iOS 9.3.1 on an iPad Air.

    It doesn't seem to happen until at least 90s into the connection.

    With the same central I also sometimes see BLE_HCI_CONN_TERMINATED_DUE_TO_MIC_FAILURE in the same setup. This always happens in the first few seconds of the connection.

  • I'm also observing similar behavior with iPAD (iOS version: 9.3.2). On Samsung (Android version: 4.3), I don't see this problem. I tried with suggested method of sending a dummy characteristic value from peripheral (nrf51822) to central (iPAD) and on the central side, I subscribed to this dummy notification and after that, I don't see this disconnection problem anymore.To keep the connection intact, the central has to subscribe to this particular (dummy characteristic) notification as well; subscribing only to those notification whose value do not get updated for considerable time (say 1 minute or more), will not work. Testing application used was LightBlue application for iOS.

Related