cancel
Showing results for 
Search instead for 
Did you mean: 

Non working USB CDC after LL_C1_IPCC_SetFlag_CHx(IPCC, HW_IPCC_SYSTEM_CMD_RSP_CHANNEL); call on STM32WB5MMGH6TR

TDłubis
Associate

Hi,

I have a problem with USB CDC on STM32WB, after calling LL_C1_IPCC_SetFlag_CHx(IPCC, HW_IPCC_SYSTEM_CMD_RSP_CHANNEL). The USB stops working. Data cannot be sent or received via USB and also the USB IRQ is not working. The USB does not work also after finishing MX_APPE_Process() function.

The backtrace of LL_C1_IPCC_SetFlag_CHx call:

MX_APPE_Process() -> UTIL_SEQ_Run (Mask_bm=4294967295) -> shci_user_evt_proc () -> APPE_SysUserEvtRx (pPayload=0x2002ff7c) -> APPE_SysEvtReadyProcessing () -> APP_THREAD_Init () -> SHCI_C2_THREAD_Init () -> shci_send (cmd_code=64615, len_cmd_payload=0 '\000', p_cmd_payload=0x0, p_rsp=0x2002ff1c) -> TL_SYS_SendCmd (buffer=0x0, size=0) -> HW_IPCC_SYS_SendCmd () -> LL_C1_IPCC_SetFlag_CHx(IPCC, HW_IPCC_SYSTEM_CMD_RSP_CHANNEL); 

Here is my CubeMX configuration for USB and STM32_WPAN.0693W00000GZpx8QAD.png0693W00000GZpxXQAT.png0693W00000GZpxSQAT.png

1 REPLY 1
Taxara
Associate III

Hi,

I ran into the same issue with USB and BLE not working together. It requires a semaphore which you need to set yourself.

See : Building wireless applications with STM32WB Series microcontrollers - Application note Chapter Shared peripherals (Figure 9. Algorithm to use USB on CPU1).

If you are able to get it to work i'd like to hear back from you. A workaround could be to use UART instead of USB peripheral.

Good luck!