I am upgrading to SDK 15.3.0 and SoftDevice v6.1.1 from SoftDevice v2.0.0 (S332 stack). Most of functionality has been ported (BLE and ANT) and validated. This particular functionality involves a shared channel with a single Master and multiple Slaves. The Slave channel is configured as a CHANNEL_TYPE_SHARED_SLAVE. Testing a simple case with just one Slave trying to burst response data back to the master after receiving a command.
This functionality worked fine when using the v2.0.0 SoftDevice, but frequently the first call to the sd_ant_burst_handler_request() function returns Transfer in Progress. Not much changed in the migration so I'm not sure what could be happening. I have confirmed the previous v2.0.0 implementation works with the same Master that is failing with the v6.1.1 implemenation. I am never able to deliver a complete 4 segment burst as things stand.
Perhaps I'm missing something related to the migration for v2.0.0 to v6.1.1. Any help would be appreciated.
Further Information:
The issue is that all 4 segments of the burst are submitted via the sd_ant_burst_handler_request() successfully , but that no EVENT_TRANSFER_TX_COMPLETED or EVENT_TRANSFER_TX_FAILED (or any other Txevent) is generated after the 4th segment. So when the application goes to send the next burst transfer the channel returns a Transfer In Progress error. The shared channel address in the burst is set to 0x00.
Using an ANT packet sniffer I can see the Master broadcast command, but I never seen any of the Slave burst command segments get transmitted. When using a Slave running the v2.0.0 implementation, I see the Slave burst command segments being transmitted. So this explains why there is no Tx event. Why isn't the transmission ocurring. Running the same v6.1.1 in Master mode all transmission are visible.