Uhubctl – Control USB power per-port on smart USB hubs

github.com

35 points by gregsadetsky 4 hours ago


matznerd - an hour ago

Is there any way to make it so that when you plug new things in, the power doesn't renegotiate causing other things plugged in to reconnect/flicker/interrupt.

Looking for high power USB C hubs that don't do that, but seems most do as part of PD and need isolated slots that don't draw from shared potential... programmatically locking specific power to laptop hub, while others negotiate would be ideal...

redpinelabs - 3 hours ago

Super useful, just wish it was easier to find supported devices. I ended up ordering 3 from Amazon that looked like they should work from the list, but ended up not completely cutting power, or having other issues. I think especially the cheap hubs will changes the parts used overtime and not update the revision.

Using on a CI pipeline to dfu flash and devices and run some tests. If anyone has some know to work that I order today let me know!

ValdikSS - 3 hours ago

My display has USB hub with several USB ports in it.

I've taped a LED strip on the back of the display and powered it from one of the USB ports.

By running `uhubctl --vendor 0451 --action toggle --port 4` from the desktop shortcut, I can toggle LED strip on and off, Philips Ambilight-style.

EvanAnderson - 3 hours ago

Turning things on and off with a computer is always fun to me (think X10 modules, blinking LEDs with an Arduino, etc). That in itself makes this neat to me.

There's probably a way this could be used to floating batteries at around 80% on devices that support throttling their own charging.

_def - 2 hours ago

I use this to toggle power to a 3d printer. It gets it actual power from a switched socket but usb still powers the board.

fhn - 2 hours ago

nice. I was actually looking for something to control the power on the computer's ports. I have a lidar connected to Orin(running Ubuntu) and the lidar constantly turns. Being able to control power to that would be nice. I think powertop would work, haven't tried it yet.