CYW4343W: tx timeout connecting to Android 11/12 mobiles

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
pierluigip
Level 1
Level 1
10 sign-ins 5 sign-ins First reply posted

Dear Infineon team,

we are experiencing the following behaviors.

HW: CYW4343W (Laird Sterling LWB) within Variscite DART-6UL SoM

FW: BCM43430A1_v001.002.009.0142.0511.hcd (within Yocto Dunfull, kernel 5.4.142, bluez 5.55)

Repro Steps:

- bluetoothctl: power on

- bluetoothctl: advertise on

Connect using BLE Scanner App on phone.

- bluetoothctl: disconnect

Phone with Android 11 & 12 force an automatic reconnection.

- bluetoothctl: disconnect

Phone with Android 11 & 12 force an automatic reconnection but the kernel now notifies the following messages

[17196.416963] Bluetooth: hci0: command 0x2006 tx timeout

[17198.497135] Bluetooth: hci0: command 0x200a tx timeout

The only way to recover is stopping the hci interface and the brcm_patchram_plus binary to reload the BT firmware and restart the BT interface.

Phones with Android 11 and 12 show this behavior. Tested phones: Samsung Galaxy S20/S22, Google Pixel 3XL/4A/6 and Nokia 5.3

Phones with Android 10 or below do not show this behavior and upon disconnect, the phones don't try reconnecting.

Are you aware of any known similar behavior ?

Thanks

Best Regards

Pier

0 Likes
1 Solution
Tushar_b
Moderator
Moderator
Moderator
100 replies posted First like given 25 solutions authored

Hi Sven,

We tested SAMSUNG S22(Android 12) with nrf connect application.

Yes, we observed the erratic behaviour of reconnection however, device is getting disconnected after reconnection in few secs.  

Central device is initiating the connection since peripheral’s discoverable and advertising. Although this seems very strange since it is occurred in android 12 and not for android 10.

As far I don’t suspect any issues with BCM4343W module.

Issue related with reconnection I would suggest to write and execute a sh script which switch off the discovery, advertising and then disconnection. Let us know if it works?

We used the imx8mq kit for testing the BCM4343W module and didn’t encountered any error as reported.

[17196.416963] Bluetooth: hci0: command 0x2006 tx timeout

[17198.497135] Bluetooth: hci0: command 0x200a tx timeout

Could you please test using the other kernel version and let us know if issue exists?

Regards,

Tushar

View solution in original post

0 Likes
16 Replies
AnjanaM_61
Moderator
Moderator
Moderator
5 comments on KBA First comment on KBA 5 questions asked

Hello @pierluigip ,

Can you please let us know the firmware hcd version which you are using? 

We have not seen similar issue, this could be mobile specific issue as well.

Do you have OTA sniffer logs for the issue ?

Regards,

Anjana

0 Likes

Hi @AnjanaM_61,

I'm using BCM43430A1_v001.002.009.0142.0511.hcd from here.

How can I get the version of the current FW? Which command could I run in a Linux OS ?

Which is latest BT firmware for CYW4343W ?

Unfortunately I have no OTA sniffer.

Thanks

Best Regards

Pier

0 Likes
Tushar_b
Moderator
Moderator
Moderator
100 replies posted First like given 25 solutions authored

Hi Pier, 

Could you please share the hci logs, this will definitely help us to understand the issue and suggest better.

Regards,

Tushar

 

0 Likes
lock attach
Attachments are accessible only for community members.
sfranken
Level 1
Level 1
10 sign-ins 10 replies posted 5 replies posted

Hi Tushar,

please find a hci log file attached.

Contrary to what is stated by @pierluigip BlueZ 5.61 is used.

Best Regards

Sven

0 Likes
Tushar_b
Moderator
Moderator
Moderator
100 replies posted First like given 25 solutions authored

Hi Sven, 

I'm unable to interpret the log file, could you please share the txt format.

Regards,

Tushar

 

 

0 Likes
lock attach
Attachments are accessible only for community members.

Hi Tushar,

Yes, of course.

I generated the attached txt file using the previously attached hci log file with the following command:

hcidump -r hcidump.log --timestamp

Regards,

Sven

0 Likes

Hi @Tushar_b ,

Could you have a look at the hcidump log file?

Did you find anything?

Regards,

Sven

0 Likes
Tushar_b
Moderator
Moderator
Moderator
100 replies posted First like given 25 solutions authored

Hi Sven, 

We are analyzing and trying to reproduce the issue at our end.

Could you please share the steps/procedure for recreating the same. 

Regards,

Tushar

 

0 Likes

Hi @Tushar_b ,

@pierluigip shared the steps to reproduce the issue in the first post of this thread:

Repro Steps:

- bluetoothctl: power on

- bluetoothctl: advertise on

Connect using BLE Scanner App on phone.

- bluetoothctl: disconnect

Phone with Android 11 & 12 force an automatic reconnection.

- bluetoothctl: disconnect

Phone with Android 11 & 12 force an automatic reconnection but the kernel now notifies the following messages

[17196.416963] Bluetooth: hci0: command 0x2006 tx timeout

[17198.497135] Bluetooth: hci0: command 0x200a tx timeout

The only way to recover is stopping the hci interface and the brcm_patchram_plus binary to reload the BT firmware and restart the BT interface.

Best Regards

Sven

0 Likes

Hi @Tushar_b ,

@pierluigip shared the steps to reproduce the issue in the first post of this thread:

Repro Steps:

- bluetoothctl: power on

- bluetoothctl: advertise on

Connect using BLE Scanner App on phone.

- bluetoothctl: disconnect

Phone with Android 11 & 12 force an automatic reconnection.

- bluetoothctl: disconnect

Phone with Android 11 & 12 force an automatic reconnection but the kernel now notifies the following messages

[17196.416963] Bluetooth: hci0: command 0x2006 tx timeout

[17198.497135] Bluetooth: hci0: command 0x200a tx timeout

The only way to recover is stopping the hci interface and the brcm_patchram_plus binary to reload the BT firmware and restart the BT interface.

Best Regards

Sven

0 Likes
Tushar_b
Moderator
Moderator
Moderator
100 replies posted First like given 25 solutions authored

Hi Sven,

We are able to reproduce the issue at our end.
We found that device is getting reconnected after passing disconnect command (bluetoothctl: disconnect).
I observed device is getting disconnected when controlled from BLE scanner app.
I assume this erratic behaviour may be due to central device is continuously scanning and connecting the device since advertising is in ON state.

Can you please confirm the same behavior is observed in any other third party BLE application?

Regards,

Tushar

0 Likes

Hi @Tushar_b ,

Which kind of third party application do you habe in mind? We observe the behaviour with several apps like the already mentioned BLE Scanner App, the nRF Connect App and our own app which is is in development.

In the real application we implement a application specific GATT Service which is used by our app. But the the behaviour even occurs using the default GATT services and a generic BLE GATT client on the phone.

You said, that you can reproduce the erratic reconnection. Did you also observe lhe lost connection issue to the CYW4343W? This is the main problem. No communication from the kernel to the CYW4343W is possible if that occours. The kernel log shows tx timeout messages and no more hci responses are received from the CYW4343W. The only way to recover is stopping the hci interface and the brcm_patchram_plus binary to reload the BT firmware and restart the BT interface.

Regards,

Sven

0 Likes

Hi @Tushar_b ,

Do you have any new information for us?

I found a similar issue in the raspberrypi linux project:
https://github.com/raspberrypi/linux/issues/2832

Raspberry PI doesn't use the same but similar Bluetooth module: BCM43455

Do you think the issues are related?

Regards,

Sven

0 Likes
Tushar_b
Moderator
Moderator
Moderator
100 replies posted First like given 25 solutions authored

Hi Sven,

We tested SAMSUNG S22(Android 12) with nrf connect application.

Yes, we observed the erratic behaviour of reconnection however, device is getting disconnected after reconnection in few secs.  

Central device is initiating the connection since peripheral’s discoverable and advertising. Although this seems very strange since it is occurred in android 12 and not for android 10.

As far I don’t suspect any issues with BCM4343W module.

Issue related with reconnection I would suggest to write and execute a sh script which switch off the discovery, advertising and then disconnection. Let us know if it works?

We used the imx8mq kit for testing the BCM4343W module and didn’t encountered any error as reported.

[17196.416963] Bluetooth: hci0: command 0x2006 tx timeout

[17198.497135] Bluetooth: hci0: command 0x200a tx timeout

Could you please test using the other kernel version and let us know if issue exists?

Regards,

Tushar

0 Likes

Hi Tushar,


@Tushar_b wrote:

 

Could you please test using the other kernel version and let us know if issue exists?

 


Which kernel version do you use in your setup?

Kernel v5.4.142 is used on our side.

 

Best Regards

Sven

0 Likes
Tushar_b
Moderator
Moderator
Moderator
100 replies posted First like given 25 solutions authored

Hi Sven, 

We tested using kernel v5.10.72.

Regards,

Tushar

0 Likes