4 ms·
You plug off-brand cables from Amazon that you know contain microcontrollers into your USB-C port? Brave!
by progrus 5y ago
You plug off-brand cables from Amazon that you know contain microcontrollers into your USB-C port? Brave!
- gumby 5y agoEssentially all* USB C cables have microcontrollers in them to negotiate power delivery and what protocols are supported. * it’s possible to have a USB C cable that’s really entirely passive, but in that case it falls back to USB 2 speed and the default USB power, as if it had a Type A connector on it.
- duskwuff 5y agoNo, this is incorrect. Most USB-C cables don't contain any parts more complicated than a resistor (used for cable direction detection). PD negotiation is handled by a microcontroller in the charger, not the cable. The only USB C cables with any sort of active components in them are electronically marked cables for >60W charging, and USB4 ("Thunderbolt") cables with active transceivers. Everything else is purely passive.
- gumby 5y agoWhen I said "entirely passive" I did mean use of resistors, which are a passive component. Electrically every USB C cable is completely backward compatible. But I am surprised by your assertion. I check every type c cable that comes into the house and have not seen one without any kind of e-marker for many years (admittedly I buy all the cables in the household, and we never had any old android phones). As I mentioned, you can't get any more than baseline power delivery over a cable that isn't e-marked with its current capacity -- this check (SPO prime) is the first thing you have to do BEFORE talking to the remote device. Also any modes from 3.1 gen1 or beyond (TBH I think it's 3.0 or beyond but I don't have the spec in front of me) need a e-marker chip to tell the endpoints what the cable is capable of. Unfortunately OSes are poor at reporting this info. I do wish that someone would make a type c charging cable that supports PD 2.0, 1.2 -- love those USB version names -- or even 3.0, but allowed no data transmission between endpoints. Basically a USB C condom cable. Haven't seen any of them.
- Melatonic 5y agoI heard you can manually disable certain pins to do this. Or there may be cables designed for digital forensics that already have this done.
- gumby 5y agoI'm not sure how that could work in USB C. You can definitely do it for USB A, and a lot of cheap charger cables do this to reduce BOM. But with USB C, the data lines are used for configuration negotiation (including PD) before being turned over to client data transmission.
- duskwuff 5y ago> But with USB C, the data lines are used for configuration negotiation (including PD) PD negotiation takes place over the CC pins, not over the USB data pins. This, and much more, is explained in TI's document "A primer on USB Type-C and USB Power Delivery Applications and Requirements": https://www.ti.com/lit/wp/slyy109a/slyy109a.pdf https://www.ti.com/lit/wp/slyy109a/slyy109a.pdf
- gumby 5y agoThanks. I lost my access to the standard itself a few months ago.
- Melatonic 5y agoThis link does not work any more - any idea if there is an updated one?
- duskwuff 5y agoLooks like TI just updated it a few days ago: https://www.ti.com/lit/wp/slyy109b/slyy109b.pdf https://www.ti.com/lit/wp/slyy109b/slyy109b.pdf
- duskwuff 5y ago
- eternityforest 5y agoIn theory, Android should be protecting us from most attacks anyway, as public charge stations are common and people are gonna use them.