Serial() speed via CDC

Hi People,

Question about Serial() communication speed on usb-capable platforms (Leonardo etc).

Examples mostly use this line:

Serial.begin(9600);

As I found, the Serial() means the USB CDC Serial communication on usb-capable platforms. Does that speed value do anything effectively on those platforms? If it does, which values can I use?

Thx,

the USB CDC (Communication Device Class) implementation used by such boards doesn't rely on this baud rate in the same way traditional UART serial communication does. The actual data transfer over USB is not dependent on the baud rate specified by Serial.begin().

USB communication speeds are standardized and handled by the USB protocol, which typically operates at much higher speeds (e.g., 12 Mbps for USB 1.1, 480 Mbps for USB 2.0, etc.).

You just need the begin() to actually initialise the Serial communication, regardless of what you used as baud rate.

1 Like