Higher speed communications with stm32wl55jc
Hi There,
I am developing an RF link application where I need to transmit 64 bytes of data at 20-50 Hz over a range of 5-10m with some obstacles in the way. For robustness, I was looking at sub GHz devices, such as the STM32WL55. I purchased some NUCLEO-WL55JC1 for testing, and have been testing the example applications provided in the STM32Cube_FW_WL_V1.3.1, such as STM32Cube_FW_WL_V1.3.1\Projects\NUCLEO-WL55JC\Applications\SubGHz_Phy\SubGHz_Phy_LrFhss. However, the radio sending is far too slow for my application. I removed the dependancy on the sequencer and call Radio.Send from my main loop (see below). It takes 1900ms for the TX to be done, see screenshot below.
My question is can this chip even send 64 bytes at 20 Hz? Am I just using the wrong example code, or is this chip just designed for a different application than mine (much longer range, lower datarate) and I am wasting my time here? Thanks for taking the time to read this and I hope to hear from you soon :)

void my_app_loop(void)
{
while(1)
{
// APP_PRINTF("%u\r\n", (current_tick - previous_tick));
HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin);
RadioTxDone_flag = 0;
if (Radio.Send(my_payload, payloadLen) == RADIO_STATUS_OK)
{
uint32_t radio_send_complete_tick = HAL_GetTick();
while(!RadioTxDone_flag) // Wait for tx to be complete
{
continue;
}
uint32_t radio_tx_done = HAL_GetTick();
APP_PRINTF("%u\r\n", (radio_tx_done - radio_send_complete_tick));
}
HAL_Delay(1000);
}
}
Edited to apply source code formatting - please see How to insert source code for future reference.
