cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WL: Radio BUSY Stays High; RADIO_GET_ERROR Can't Be Executed

wanac_emb
Visitor

Hi Everyone,

We are developing a Sub-GHz/LoRa device based on STM32WLE5CCU6 and have encountered an issue related
to the Sub-GHz Radio BUSY state. We would like to ask for possible root causes and the recommended
recovery procedure.

The observed behavior is as follows:

1. After MCU peripheral initialization, we call MX_SubGHz_Phy_Init() and then Radio.Init() /
Radio.Sleep().
2. We then try to execute HAL_SUBGHZ_ExecGetCmd(&hsubghz, RADIO_GET_ERROR, ...).
3. The command keeps returning HAL_ERROR, and HAL_SUBGHZ_GetError(&hsubghz) returns 0x00000002, which
corresponds to HAL_SUBGHZ_ERROR_RF_BUSY.
4. We poll this command once per second for 10 seconds, and all attempts fail with the same error.
5. We also checked the PWR flags before. PWR_FLAG_RFBUSYS remains active, which indicates that the
current RF BUSY signal stays high.
6. PWR_FLAG_WRFBUSY can be cleared, but RFBUSYS remains high. Therefore, this does not look like a
pending wakeup/event flag issue, but rather the actual RF BUSY hardware status staying high.

Example log:

[RF_ERR] 1/10 Get_Error read failed | ret=1 hal_err=0x00000002
[RF_ERR] Meaning: command was not accepted; if hal_err has 0x00000002, RF BUSY is still active.
...
[RF_ERR] 10/10 Get_Error read failed | ret=1 hal_err=0x00000002

We would like to ask:

1. What are the typical causes for the Sub-GHz Radio BUSY signal on STM32WLE5CCU6 staying high?
2. Is there an ST-recommended software recovery sequence for this condition?
For example: HAL_SUBGHZ_DeInit() / HAL_SUBGHZ_Init(), RF reset, system reset, or any specific
initialization order.
3. If BUSY remains high, is there any way to read RADIO_GET_ERROR or other diagnostic information?
4. Is there any known errata, power/clock condition, or low-power wakeup condition that may cause the
Sub-GHz Radio BUSY line to get stuck?
5. Are there any mandatory timing requirements when using Radio.Sleep(), Stop2/Standby, or RF wakeup
related PWR settings?

Environment:

- MCU: STM32WLE5CCU6
- Radio: Embedded Sub-GHz Radio, LoRa mode, 470 MHz
- Software: STM32CubeWL / HAL SUBGHZ / SubGHz_Phy radio driver
- Issue: RF BUSY remains high, and all radio commands fail with HAL_SUBGHZ_ERROR_RF_BUSY

Please help us identify the possible causes and the recommended solution.
We can provide initialization code, full logs, and the relevant schematic section if needed.

Best regards,

0 REPLIES 0