Uhubctl – control USB power per-port on smart USB hubs
github.com
github.com
https://joeyh.name/blog/entry/usb_drives_with_no_phantom_loa... https://news.ycombinator.com/item?id=25322564
We're using the "PowerPad" hubs for mobile device hosting. Each of the ports on the USB hub will detect the device and deliver its fastest possible charge.
Isn't that how standard USB is supposed to work?
Your readme mentions hub-ctl but doesn't talk about specific improvements. Besides documentation, what are those improvements?
Also, an SSR (whether MOSFET, IGBT, triac, or SCR based) doesn't latch either. Only some esoteric mechanical relays latch.
I had a similar requirement to OP, though my USB hardware was fine, it was a third party device that would sometimes fail to connect when the system restarted. A watchdog reset of the uC trivially reconnected my hardware, but I resorted to enabling/disabling the AHCI driver to force Windows to re-enumerate USB devices to get that to be reliable.
What is a usb smart hub?
sudo lsusb -v | grep wHubCharacteristic -A 3
If you see "Ganged power switching" or "Per-port power switching" it has a chance of working.Cynically it's a hub that hasn't has its functionality impaired by cost-optimisation.
Technically it's a hub that implements per-port power control and optionally per-port over-current detection.
An example is the old Linksys USB2HUB4 hub that's nearly 20 years old but still reaches decent bids on eBay as it is sought after by many hobbyists. It uses the excellent NEC PD720110 chipset that doesn't cut any corners. It even boosts USB1.1 comms up to USB2.0 speed over the host link.
The terminology to look for is "multi-TT" (transaction translator) for this feature. Very useful for hooking up a whole bunch of serial ports to an embedded controller over USB. I made a video about doing so for my old startup like 7 or 8 years ago (though the hub in the video may have been single-TT... It was stolen so I can't go back and test it again).
Per-port power and LED control was also really useful, but really rare, for embedded hardware. The idea was that a ton of peripherals would be connected over a network of USB extenders, and a user interface would let you flash the LED next to a device you wanted to find, if you weren't sure where it was. No cloud needed.
However, I note that the last hub was shipped three years ago.
USB-C has completely changed the way that USB hubs operate.
Is this still viable?
Still, I haven't seen any real USB-C hubs. I'm assuming that they are too difficult to make.