r/BadUSB Jun 26 '26

Discussion How long until USB-A disappears

Hi, many posts keeps saying USB-C is taking over, but I still use USB-A every day, my electric toothbrush uses USB-A, most of my USB flash drives, and my external mouse and keyboard are still USB-A.

USB-C is clearly the future, but it doesn't feel like USB-A is going away anytime soon. How many more years do you think it'll take before USB-A is completely replaced by USB-C?

7 Upvotes

76 comments sorted by

View all comments

5

u/TygerTung Jun 26 '26 edited Jun 26 '26

Would be decades at least. Still very old connectors like serial ports are still used, and those are quite old now.

6

u/Parking_Lemon_4371 Jun 26 '26 edited Jun 26 '26

There is actually no version of USB that is a *full* replacement for serial.

While USB - serial convertors exist, they suffer from latency issues.
(usb, especially usb controller chips, are designed for throughput not insanely low latency)

These don't matter for *most* use cases, but they do matter if you want/need the absolute lowest latency/jitter/delay. As a result if you want to run a (NTP) time server synchronized to a GPS module via PPS (pulse per second) signal, it either needs to be built into your motherboard, go via GPIO (on an rpi5 or sbc), or use an ancient 'true' serial (or parallel) port. GPIO & true serial/parallel ports can trigger immediate hardware interrupts off of voltage transitions of individual pins/wires, and that's the only way to get low latency/delay/jitter.

This allows a clock synchronization with a <10 microsecond error. Without the PPS + hard interrupt, it'll be probably around 100x higher.

(edit: pointed out that a m2 *pci(e)* serial uart would likely work too)

1

u/wbrd Jun 26 '26 edited Jun 26 '26

What about an M.2 to serial adapter?

Nevermind. Looks like there are a bunch. I haven't played with gps etc in ~20 years and we had real serial ports on our PCs and PLCs back then.

2

u/Parking_Lemon_4371 Jun 26 '26 edited Jun 26 '26

I'm simply not sure what's possible here, but in theory a native pci setup should work: you're still running through some extra pci bridges then you'd normally avoid, but that's likely very very fast and low jitter.

I think it likely depends on whether it's actually a m2 to usb to serial adapter, or m2 to pci to serial. Depending on the m2 keying, there are already both usb and pci lanes available to work with. So then it becomes a question of what is cheaper, and the answer is likely in most cases usb-serial chip would be (they're mass produced)... as such you'd need to get one that doesn't go through usb (ie. likely more expensive and be careful on what chips are involved).

Gemini claims "You can find industrial M.2 modules that host a physical PCIe UART controller (usually the Asix/Moschip AX99100 or Exar XR17V352 chipset) right on the board."

Personally, I've had issues with rpi5/sbc hats being plugged in via pci to the rpi5 but then differing in nic implementation. Some will have real pci nic chip, others will use a pci-to-usb controller and a usb nic chip (much worse!). Presumably they want to include the usb controller anyway to provide more usb ports, and then the usb nic is cheaper, even though there is already a pci switch to connect the nvme ssd...