4

Problem

I have multiple USB devices, (multiple power-only lights, a power & serial-data camera) that I need to control power to programmatically through a single USB port.

Questions

What hardware device options are available for this application?

What would such a device be called?

Is my need fundamentally flawed in that it's not possible?

2

3 Answers 3

2

It seems the device is called either:

  • Switchable USB Hub

  • Programmable USB Hub

I'm looking for a similar thing myself and so far have come across:

01) YKUSH Yepkit USB Switchable Hub (€29.94)

Want to switch ON and OFF your USB devices? With YKUSH you can selectively control the power ON and OFF of the USB devices connected to it... or you can just use it as a "normal" USB hub.

Straightforward tutorial for YKUSH is here: (Linux) (Windows).

02) Computer Controlled Switchable USB Hub (29 second video)

03) Acroname Programmable USB Hub with 4 Charge Ports ($300)

Hopefully others can contribute some affordable, easy to implement and manage, solutions here.

1

You would need to create an external controller for such a task. My first idea would be to get an Arduino, Breadboard, and a USB hub and basically create a switch that is controlled through the Arduino. The Aruduino would need a program called Firmata loaded onto it that allows for pin control over serial (USB). Your program on the computer itself would run like this:

Turning USB hub off:

  1. Eject Camera/Other Data devices connected to hub
  2. Communicate with Arduino over Firmata and turn off necessary pins

Turning USB hub on:

  1. Communicate with Arduino over Firmata and turn on necessary pins

And your circuit flow chart would look something like this:

USB Hub>USB Cable>Breadboard Switch/Arduino>USB Cable>Computer

The only disadvantage here would be that you can not individually switch off each USB device. To achieve this you would need a fairly more customized solution that would involve building your own USB hub. That would be an awesome project though!

1
  • Note: An arduino can only supply a few mA (20mA continuous) per pin. This is barely enough for a few LEDs and even a mouse or keyboard will overload it. It is unavoidable to use a relay or transistor for switching the load. Dec 26, 2022 at 20:03
1

You can buy any cheap USB hub that supports per port power switching, and use utility uhubctl to control power per port - read more at https://github.com/mvp/uhubctl. Some compatible hubs cost as low as $20.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .