NERP Tonite! [20250428]

Hacker News says today is the 25th Birthday of USB2, the “finally got it right” version of USB.
Before 2000, serial ports were recognized by the DB-9 male connector on the back of a PC or laptop. Makers and hackers used the serial port for connecting microcontrollers to PCs or laptops. Programming the serial (RS232) port used to be bare metal coding, or very close to it. RS232 UART serial isn’t an earlier version of USB – it only pushes unformatted bytes through a wire. But it’s cheap and easy i/o. USB2 gradually displaced the RS232 UART and parallel printer ports on PCs, making it much, much harder for hobbyists to connect their experiments to their computers. USB aimed to be plug-n-play for connecting almost anything to a computer (printers, modems, audio, etc.). A single USB port can carry many different hardware protocols simultaneously. One is called, simply “serial”. The RS232 UART serial interface was invented as an open standard in the late 1960’s for teleprinters and modems. In 2000, a license to manufacture official USB devices cost kilobucks. To access the USB ports on their PCs, hackers and makers had to pay a “tax” to the manufacturers of the CP2102 or FTDI232 USB-to-serial UART interface chips. The interface chip often cost more than the rest of the circuit. USB, being a closed source protocol, is protected by licenses, NDAs, and the USB Consortium. Gradually ways were found to legally work around the license requirements for makers and hackers, and we got back our UART ports (now emulated) for “free”. The UART interface is still around, usually wrapped in frameworks and APIs. If you encounter “ttyUSB0” or “ACM0” in a config, you’re seeing an abstraction of an emulation of an old protocol that’s still with us.

This is my own personal view, and nobody else’s, from memories of long ago. “USB” is a trademark of the USB Consortium.
-Ed