Raspberry Pi の USB ポートを制御する3

これまで2回、Raspberry Pi の USB ポートのオンオフを制御する方法について書いた。

Raspberry Pi の USB ポートを制御する(失敗) – with a Christian Wife
https://wacw.cf/2018/03/08/controlling-usb-port-on-pi/

Raspberry Pi の USB ポートを制御する2 – with a Christian Wife
https://wacw.cf/2018/03/27/controlling-usb-port-on-pi-2/

うまくいくようになったと思いきや、実際にきちんと調べてみたところ、個別でポートのコントロールすることはできないようである。

Embedded Apocalypse: How to power off Raspberry Pi 3 USB or Ethernet ports
http://embeddedapocalypse.blogspot.jp/2016/10/how-to-power-off-raspberry-pi-3-usb-or.html

環境:Raspberry Pi 3 Model B、Raspbian Jessie

すなわち、USB ポートすべてをオフにするには以下のコマンド。

$ sudo hub-ctrl -b 1 -d 2 -P 2 -p 0
あるいは
$ sudo hub-ctrl -h 0 -P 2 -p 0

USB ポートすべてをオンにするには以下のコマンド。

$ sudo hub-ctrl -b 1 -d 2 -P 2 -p 1
あるいは
$ sudo hub-ctrl -h 0 -P 2 -p 1

個別で制御できたらいろいろ遊べるんだけど、できないなら仕方ない。

以下のコマンドで一旦すべての USB ポートをオフにし、5秒経ってからオンにすることができる。これを応用すれば、LED ライトの点滅のようなこともできるね。

$ sudo hub-ctrl -h 0 -P 2 -p 0; sleep 5; sudo hub-ctrl -h 0 -P 2 -p 1;