[linux] Controlling a USB power supply (on/off) with Linux

PowerTOP from Intel allows you to toggle devices such as usb peripherals in real-time. These are called 'tunables'.

sudo apt install powertop
sudo powertop
  • Tab over to 'tunables'.
  • Scroll down to your device.
  • Hit enter to toggle power saving mode (Good/Bad)

enter image description here

Note that Bad means the device is always on. Toggling to Good will turn off the device after the preset inactive saving time (default is 2000ms).

See the PowerTOP docs for details on how to make these changes permanent.
It generates the config scripts for you (pretty much as described by other posters on this thread).

NOTE: These scripts do not affect USB pin power (which is always on).
These only send the driver protocol to activate and deactivate a device.

If you want to control pin power, you could use either a supported smart USB hub, or better yet a microcontroller.