cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WB55: Linux connection issues (dropping BLE connections)

BDowneyBSI
Associate

Hello everyone I've encountered an issue with connecting to Linux, specifically Ubuntu 22.04, while the Linux device is acting as a BLE gateway running the Bleak python library to manage connections. The firmware used was loosely based on the instructional STM32WB getting started youtube series (part 12), and then modified. The built-in sequencer was used to manage the custom functions implemented, there were issues at first with the tasks taking over the sequencer from BLE but those have been resolved.

Both nucleo dev boards and custom pcbs will experience issues using this firmware when connecting to the gateway, the gateway will timeout and disconnect from the board, or refuse to connect issuing a le-connect-abort-by-local. These issues seem to be very intermittent sometimes the BLE board will stay connectted and even trigger events to send data but eventually timeout, while other times the boards cannot be connected to at all. Both python w/Bleak and bluetoothctl were used w/Bluez version 5.66.

However, the BLE boards and firmware can connect just fine to mobile phones (ST ToolBox) and Windows w/Bleak script, send and receive data without timing out or disconnecting. I'm stuck trying to figure out if this could be a firmware issue or something with Linux. I would like to use the Linux gateway so I was curious if anyone had any suggestions?

 

I've attached some packet traces between the gateway and board using Wireshark w/

 

 

 

 

sudo btmon | sudo wireshark -k -i -

 

 

image.png

 

 

 

1 REPLY 1
STTwo-32
ST Employee

Hello @BDowneyBSI 

I'm not a Linux expert but I think it is the source issue. So, I suggest you take a look at your "BLE gateway" and maybe contact the owner of this application for more details.

Best Regards.

STTwo-32

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.