4 ms·
> But literally every device in the real-world just wires the port to the 5V rail with 2 A overcurrent protection Not quite. To be USB Compliant, you have to d
by indrora 2y ago
> But literally every device in the real-world just wires the port to the 5V rail with 2 A overcurrent protection
Not quite. To be USB Compliant, you have to do some work here and there. There's about six different options. The most common is overcurrent detection, such as is seen in [1]. There is a whole specification built by USB-IF on how to handle higher current ("battery charge") situations, spurred by apple [2], with all sorts of weird corner cases [3].
Now, USB-C changes that and specifically calls out that a "compliant" downstream device has to negotiate USB PD or declare yourself a USB-2.0 type-C device. [4] It's not uncommon for newer devices that conform strictly to the USB4 specification to not even power a port that hasn't negotiated USB-PD or Legacy PD -- if you encounter devices that get weird when powered via a usb-c to usb-c cable but work fine on a usb a-to-c cable, you've seen someone skimp out on $0.00001 in resistors.
[1] https://www.microchip.com/en-us/development-tool/EVB-USB2514B-FS https://www.microchip.com/en-us/development-tool/EVB-USB2514... [2] https://www.usb.org/document-library/battery-charging-v12-spec-and-adopters-agreement https://www.usb.org/document-library/battery-charging-v12-sp... [3] https://www.graniteriverlabs.com/en-us/technical-blog/usb-battery-charging-1-2-testing-introduction https://www.graniteriverlabs.com/en-us/technical-blog/usb-ba... [4] https://community.infineon.com/t5/Knowledge-Base-Articles/Termination-Resistors-for-Type-C-to-Legacy-Ports/ta-p/256004# https://community.infineon.com/t5/Knowledge-Base-Articles/Te....