-
Hi, does anyone know of the max throughput (rough numbers are fine) you can obtain over USB Serial (CDC) on USB High Speed? We are using a STM32H7 MCU. Are we limited to classic UART baud rates like 115200, or is BAUD rate ignored for USB serial when the endpoint is a MCU? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 5 replies
-
Baud rate is ignored. So in theory, you should get close to the speed limit of high speed USB, i.e. about 30 to 40 MByte/s. Note however that it depends on your operating system's implementation of serial communication. It might not be optimized for such high speeds as the typical serial speeds max out at about 0.1 MByte/s. Why do you want to use CDC and not a vendor specific protocol? |
Beta Was this translation helpful? Give feedback.
-
I've been doing some testing on a SAMD21 running Arduino SW, and getting around 2.4Mb/sec over a 12Mb full speed link over CDC, so that seems pretty good! Another team member is still developing the tinyusb based solution on a STM32 with high-speed USB. In this application, I prefer CDC as I don't need to mess with drivers on the host side. Using COBS, packets can be framed, and nanopb is working well for encoding. (see above example). Open to other ideas as I don't have a lot of USB experience! |
Beta Was this translation helpful? Give feedback.
Baud rate is ignored. So in theory, you should get close to the speed limit of high speed USB, i.e. about 30 to 40 MByte/s.
Note however that it depends on your operating system's implementation of serial communication. It might not be optimized for such high speeds as the typical serial speeds max out at about 0.1 MByte/s.
Why do you want to use CDC and not a vendor specific protocol?