cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F769I USB-HS MSC gives low read/write speed

amit_kotal
Associate II

Hi,

I am using a STM32F769I Disco board for testing the speeds of the High Speed USB as a MSC. At present, the system is working as expected as a MSC over uSD. However, my concern is with respect to the read write speed of 2.5MB/s which seems to be very low for High Speed Applications. I have used the HAL Libraries and ST provided Examples for the firmware.

At the uSD side, I am able to get a speed of 6 MB/s, but when the read write is over HS-USB as MSC, the speed I get is around 2.5MB/s.

Would be very helpful if any one can provide any insights.

Thank You,

Amit K

3 REPLIES 3
YKorc.1
Associate II

I have similar issue with UVC class devices.

In my project I met the same bandwidth limit

In my case this limit 10 megabit per second ( same as 2.5 megabyte per second )

USB HS has 125 uS microframe duration

isochronous max packet size is 1024 bytes

If to send one packet per microframe - we exactly meet the limit 2.5 MB/s

USB HS protocol has an option to send up to 3 packets per microframe which can increase bandwidth up to 3 times

However, it requires some additional coding ( i think )

amit_kotal
Associate II

Hi YKorc,

So as per your analysis, the speed issue is at the USB side of the device? If I am not wrong, then this will be the same speed one can achieve if writing directly to a Pen drive as a Host.?

hi @YKorc.1​ 

I am interested in implementing UVC device on STM32F7- that is, I need my device to act as a web cam.

CubeMx doesn't seems to support UVC and I wasn't able to find any examples.

Can you please give me some pointers how you did it?

thanks,

Arnon