Showing results for 
Search instead for 
Did you mean: 

USBx Device MSC support on non-OTG capable devices




There is no Ux_Device_MSC examples in x-cube-azrtos-wb/g4.

All MSC available examples run on OTG_HS capable platforms such as h7.


I have tried to port one example to STM32WB55 but face issue with it (more information at the bottom of the post). I'd like to get your feedback about the following questions:


Could USBX Device Mass Storage Class be supported on platforms that are USB_FS-only such as wb/g4?

If yes,

  • Trying to port it myself, is there any technical limitations/recommendations I should consider?
  • Will there be Ux_device_MSC examples in furture releases on non-OTG_HS platforms?



I have tried to port Ux_Device_MSC on STM32WB55. To get it running the main noticeable adaptation I implemented relates to the PMA configuration. No OTG_HS so no PMA Fifos, I used the following config sequence:

    HAL_PCDEx_PMAConfig(&hpcd_USB_FS, 0x00, PCD_SNG_BUF, 0x18);
    HAL_PCDEx_PMAConfig(&hpcd_USB_FS, 0x80, PCD_SNG_BUF, 0x58);
    HAL_PCDEx_PMAConfig(&hpcd_USB_FS, 0x81, PCD_SNG_BUF, 0x98);
    HAL_PCDEx_PMAConfig(&hpcd_USB_FS, 0x01, PCD_SNG_BUF, 0xD8);

I am able to enumerate properly but get some incorrect data on the SCSI Inquiry transaction as shown in the attached zip file (20220519-02-Z2.pcap).