cancel
Showing results for 
Search instead for 
Did you mean: 

Connecting to HRM (other BLE devices) with STM32WB55

IFent.2
Associate

I am trying to connect to a Polar HRM with a STM32WB55 Nucleo board by modifying the BLE_p2pClient example.

I tested the example and it worked in connecting to another ST board. Then I modified the code to connect to the UUID of the HRM I got from the scan, changing SERVER_REMOTE_BDADDR putting the UUID in reverse order. In the scan, I was able to find the exposed services to check if the scan was a success and got the UUID and RSSI from there. When I ran aci_gap_create_connection to connect, it returned a BLE_STATUS_SUCCESS, but I did not get a HCI_LE_CONNECTION_COMPLETE_EVENT like I did when I successfully connected to another ST board. I messed around with the connection interval, slave latency and supervision timeout, but still couldnt get the device to connect. I also am not seeing the complete name in the advertising data when I scan with the STM board, but I know its being advertised by checking with with a phone app and other device names are showing up as well.

I tried the same thing with another Polar HRM and a Whoop band. Whoop band did return the complete name, but didnt connect as well. Are there any other settings I should change to connect with other BLE devices successfully?

1 ACCEPTED SOLUTION

Accepted Solutions
Remy ISSALYS
ST Employee

Hello,

Maybe the peer address type in aci_gap_create_connection command isn't the right one. Can you share the advertising packet of the Polar HRM?

Best Regards

View solution in original post

2 REPLIES 2
Remy ISSALYS
ST Employee

Hello,

Maybe the peer address type in aci_gap_create_connection command isn't the right one. Can you share the advertising packet of the Polar HRM?

Best Regards

IFent.2
Associate

That turned out to be the issue. Didnt know there were different types. Polar is Static Random Address.