cancel
Showing results for 
Search instead for 
Did you mean: 

STM32U5A9J-DK1 USB Device as mass storage standalone via sdmm1 emmc

tod
Associate II

I want to use the EMMC as USB storage space, but I encountered another issue: I am trying to access the EMMC via SDMM1, and after implementing the MSC-related functions (read, write, USBD_STORAGE_GetMediaLastLba, USBD_STORAGE_GetMediaBlocklength) in ux_device_msc.c, the formatting operation on the PC side fails. The error message says: "Please insert a disk into the removable disk."
I have already verified that after initializing SDMM1, the EMMC can be accessed and read/write operations are successful.

What could be the reason for this issue?

The attached file is my project.

tod_0-1757730569995.png

ux_device_msc.c:

tod_2-1757730678625.png

tod_4-1757730856986.png

 

tod_3-1757730698364.png

 

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
FBL
ST Employee

Hi @tod 

Honestly it took me sometime to realize to never use status = UX_SUCCESS; and use  status = UX_STATE_NEXT; instead !

Now, here is a working example for eMMC ! 

FBL_1-1758287868323.png

FBL_4-1758292949434.pngFBL_5-1758292963529.png

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.


View solution in original post

10 REPLIES 10
tod
Associate II

Hi @FBL 

Please help me analyze.

Thank you very much!

tod
Associate II

Hi @FBL 

I can see an unallocated Disk 3 in Disk Management(3.64GB), but when trying to format it(FAT,size=512), I get the error: "The request could not be performed because of an I/O device error."

tod_0-1757834287000.png

tod_1-1757834357167.png

tod_2-1757834398785.png

 

 

FBL
ST Employee

Hi @tod 

I will try to replicate the issue on my end. But, first, let me suggest you check this thread. It could be helpful.

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.


tod
Associate II

Hi @FBL 

You can use the project I provided (attachment: MSC_FIN.7z) to reproduce the issue.

I will check and try according to your suggestions and provide feedback.

Thank you very much!

tod
Associate II

Hi @FBL 

I modified the read and write functions in ux_device_msc.c, but the formatting still cannot be performed correctly. Through GDB debugging, I found that during formatting, write operations are executed and the data is written correctly, but the formatting still fails.

tod
Associate II

Hi @FBL 

Did you reproduce the issue? Is it a problem with my configuration or a bug in the code?

tod
Associate II

Hi @FBL 

Has there been any progress on this issue? 

 I really do need your help!

Thank you so much!

 

tod
Associate II

Hi @FBL 

I've tried different USB ports, replaced the data cable, and even used a different computer, but I still can't format it properly.
Please help me ! Thank you so much!

FBL
ST Employee

Hi @tod 

Honestly it took me sometime to realize to never use status = UX_SUCCESS; and use  status = UX_STATE_NEXT; instead !

Now, here is a working example for eMMC ! 

FBL_1-1758287868323.png

FBL_4-1758292949434.pngFBL_5-1758292963529.png

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.