March 20, 2025

Black Pill boards - F411 USB -- Sharks and ttyUSB

Our USB system enumerates as a VCP (virtual console port), which is one form of a CDC class called an ACM - hence linux uses an ACM driver and calls us /dev/ttyACM0 or such. Many USB to serial devices enumerate differently, thus getting a different driver and appearing as /dev/ttyUSB0. My idea is to enumerate like and act like one of these. Things like the Sil Labs CP2104 I am using right this minute act like this. Of course they must support some scheme for setting baud rates and dealing with serial handshake lines, but those things could be ignored or emulated.

Just the exercise of modifying our VCP/ACM class would be educational.

I did some looking into this 4 years ago (back in 2020). Back then I discovered that Wireshark (which I use now and then to examine ethernet packets) can also be used to monitor USB connections.
Here are some links to my notes on this:


Feedback? Questions? Drop me a line!

Tom's Computer Info / tom@mmto.org