EVK-ODIN-W2: Not getting callback after cbBSL_write()

22 Jun 2017

I am attempting to send serial data to a device via the built-in Serial Port Service functions provided by the ODIN-W2 driver libraries.

I am able to successfully connect to the device, but when I call cbBSL_write() to send data over the connection, I do not get the expected callback indicating the write was completed, even though I see the data printed out by my receiving device. Since the BLE driver is not thread-safe, I cannot safely make any further BLE stack calls until that callback has been received.

What might prevent the callback from getting triggered? I am passing the cbBSL_Callback structure with appropriate function pointers to cbBSL_open(), and that is not returning any errors, so I do not see any reason for it to not get called.