Raspberry Pi の USB ポートを制御する2
以前 Raspberry Pi で USB ポートを制御し、USB LED ライトのコントロールに挑戦したことについて書いた。その時はうまくいかなかった。
Raspberry Pi の USB ポートを制御する(失敗) – with a Christian Wife
https://wacw.cf/2018/03/08/controlling-usb-port-on-pi/
次に USB ファンの制御を試してみた。
環境:Raspberry Pi 3 Model B、Raspbian Jessie
改めてインストール方法についてメモしておく。
$ sudo apt-get install libusb-dev
$ wget http://www.gniibe.org/oitoite/ac-power-control-by-USB-hub/hub-ctrl.c
$ gcc -O2 hub-ctrl.c -o hub-ctrl-armhf-static -lusb -static
$ sudo cp hub-ctrl-armhf-static /usr/local/bin/hub-ctrl
最初 Raspbian Stretch でやろうとしたら、libusb のインストール段階でエラーが出てしまう。
ということで、Raspbian Jessie にインストール(前回も Jessie でやっていた)。
USB ポートの名前は、左に LAN ポートがある状態で、左上が Port2、左下が Port3、右上が Port 4、右下が Port5 だ。
指定する USB ポート(PortX とする)をオフにするには以下のコマンド。
$ sudo hub-ctrl -b 1 -d 2 -P X -p 0
オンにするには以下のコマンド。
$ sudo hub-ctrl -b 1 -d 2 -P X -p 1
つまり、Port2 をオフにする場合、以下のコマンドを実行する。
$ sudo hub-ctrl -b 1 -d 2 -P 2 -p 0
オンにするには以下のコマンド。
$ sudo hub-ctrl -b 1 -d 2 -P 2 -p 1
USB ファンの制御に関してはうまくいった。
試しに再度 USB LED ライトでもやってみたら、今度はうまく制御できた。コマンドを間違っていたのかな。
参考:
Raspberry PiにUSB扇風機を接続してUSBポートをON/OFF制御する方法 | きのこタイムズ
http://kinokotimes.com/2017/03/07/usb-control-method-by-raspberry-pi/
RaspberryPI 3 Model B で USBポートの電源をON/OFFする:パソコン鳥のブログ
http://s.webry.info/sp/vogel.at.webry.info/201711/article_2.html
LinuxからUSB HUBの電源のON/OFFを制御してみる – memoメモ
http://atotto.hatenadiary.jp/entry/linux-sugoi-usb-hub-power-ctrl