Bluetooth LE connection timeout on Verdin iMX8M Plus (AzureWave AW-CM276NF)

  • Verdin iMX8M Plus on Dahlia V1.1A carrier
  • With u.FL antenna (Unictron AA222) connected to AUX connector on the AW-CM276NF module
  • TorizonCore 5.4.154-5.5.0+git.c65f1622951c

I am unable to maintain a Bluetooth LE connection (peripheral role / GATT server) for more than a few minutes. I have used a variety of central devices (iPhone, iPad, nRF52840 dongle).

The simplest steps to reproduce:

sudo systemctl start dbus
sudo systemctl start bluetooth
bluetoothctl
> power on
> discoverable on
> advertise.name Toradex
> advertise.discoverable on
> advertise on

Then connect using e.g. nRF52840 Dongle via nRF Connect v3.7.1 and wait a few seconds/minutes.

The btmon logs show:

> HCI Event: Disconnect Complete (0x05) plen 4                                                                                                  #258 [hci0] 225.133844
        Status: Success (0x00)
        Handle: 128
        Reason: Connection Timeout (0x08)
@ MGMT Event: Device Disconnected (0x000c) plen 8                                                                                           {0x0001} [hci0] 225.133883
        LE Address: FE:55:64:9B:DF:85 (Static)
        Reason: Connection timeout (0x01)
> HCI Event: Vendor (0xff) plen 67                                                                                                              #259 [hci0] 225.134240
        72 80 00 87 17 00 00 7e 17 00 00 a3 17 00 00 7d  r......~.......}
        17 00 00 f3 17 00 00 00 00 00 00 00 00 00 00 00  ................
        00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
        00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04  ................
        00 00 00                                         ...

I inevitably get the HCI disconnect event (0x05) with reason ā€˜Connection Timeoutā€™ (0x08). The time seems to vary between different centrals. On my iOS devices I get a few minutes, whereas the disconnect happens in a few seconds with the nRF52840 dongle.

What Iā€™ve tried so far:

  • Iā€™ve checked that the disconnect is not being initiated by the central in all cases.
  • Tested using a different BLE adapter (nRF52840 dongle running Zephyr HCI USB sample). The problem does not occur, I can maintain a connection indefinitely. This makes me pretty sure the issue is either with the module or the driver.
  • Tested in both Torizon and in Debian container ( torizon-samples/debian-container)
  • Tested both the version of bluez that ships with Torizon (5.55) as well as latest (5.63, via debian container)
  • Tested disabling Wi-Fi first (sudo nmcli radio wifi off); this did not solve it

Any advice is greatly appreciated!

Greetings @jwright,

Just to confirm you are on our TorizonCore software offering correct?

If this is the case, then there are known issues with Bluetooth on TorizonCore. This is due to the Bluetooth feature not being fully tested/complete yet on TorizonCore.

As a sanity check could you try the following. Try flashing our BSP reference images and see if you can reproduce the same results there with your setup. Iā€™m asking this because the current driver for that Bluetooth chipset has some odd issues and quirks.

I want to see if the issue is due to the incomplete feature on TorizonCore, or if itā€™s due to the underlying driver.

Best Regards,
Jeremias

1 Like

Hi @jeremias.tx ,

Yes, I was using TorizonCore. Today I tested using the Toradex minimal reference image (5.5.0+build.15) and observed the same behavior.
What is the difference between TorizonCore and the BSP reference image for the purposes of Bluetooth? Is there a different driver being used?
Is there any documentation available about the known issues with Bluetooth on TorizonCore?

Thanks,
Jason

TorizonCore and the BSP reference images should use the same set of drivers. The full difference between TorizonCore and the reference images are a bit unknown at the moment. It comes down to bluetooth not being fully tested yet with TorizonCore (due to lack of interest historically). But there have been previous known issues with TorizonCore and bluetooth that arenā€™t observed with the reference BSP. Which is why I said what I said.

However, since you observed the same behavior I doubt itā€™s due to one of these differences. Let me check internally what we can provide you with here.

Best Regards,
Jeremias

Hi @jwright,

Sorry for the delay, but our team got around to looking into this issue of yours. Is this something youā€™re still having issues with and are interested in?

Best Regards,
Jeremias

Hi @jeremias.tx ā€“ yes, I am still interested in further updates on this.
Jason

Ok so in short it seems the issue can be resolved by using an updated driver for the WiFi/Bluetooth chipset. This driver is proprietary and may require some legal red-tape. But, Iā€™ll see all that is required on our side.

In case we need to continue this discussion over private email is the email on your account here the best email to contact you with?

Best Regards,
Jeremias

Yes it is, thank you.

Just a heads up I sent you an email with further information on how to proceed from here.

Best Regards,
Jeremias

Are there any updates on this?

Iā€™m currently evaluating the Verdin IMX8M Mini for our application and am having similar issues with our sensors, which communicate over BLE. The longest Iā€™ve seen one of our sensors be able to stay connected is a little over an hour, but usually it disconnects in a few minutes. Both the sensor and our application report a timeout as the reason for the disconnect. I have not seen these problems with other platforms.

Hi @abferm,

Bluetooth is still not fully supported yet on TorizonCore. We have already released our LTS for 5.7. So this means a new feature like Bluetooth will only come on our current 6.X.Y releases which are in development right now. I unfortunately donā€™t have any timeline I can provide on this though.

Best Regards,
Jeremias

Are there any updates on when Bluetooth drivers will be fixed for the IMX8QM Azurewave module?

Hi @theguybieber,

Since this thread is quite old could you please make a new thread with your information and details. Please include the version of software you are using as well as what issue you are referring to here regarding that you would like to be ā€œfixedā€.

Best Regards,
Jeremias