ルーティング発生時にUSBデバイスをON!
すごい動画を見つけてしまった。まさに雷に打たれた気分!!!!!!
ウクライナの人がどうやって実現しているか分からないので、私のできる方法で考えてみた。
- ラズパイのGPIOピンをON
- FETでUSBの電源をスイッチング
- USBのランプをON!
1.ラズパイのGPIOピンをON
#!/bin/bash
echo 4 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio4/direction
echo 1 > /sys/class/gpio/gpio4/value
sleep 0.9
echo 0 > /sys/class/gpio/gpio4/value
sleep 0.1
for((i=0;i<8;i++))
do
echo 1 > /sys/class/gpio/gpio4/value
sleep 0.1
echo 0 > /sys/class/gpio/gpio4/value
sleep 0.1
done
echo 1 > /sys/class/gpio/gpio4/value
sleep 0.5
echo 0 > /sys/class/gpio/gpio4/value
sleep 0.1
echo 4 > /sys/class/gpio/unexport
ピカ!ピカピカピカ……、ピカ!となるために無駄に長いけど、要は、
- GPIO4をON/OFFに使う。出力端子に設定。
- GPIO4に「1」を書き込んでGPIO4ピンから3.3Vを出力(ピカ!)
- GPIO4に「0」を書き込んでGPIO4ピンをGND(0V)に。(LED消える)
- それっぽく見えるようにON/OFFを繰り返し
- GPIO4ピンを使用を終了。
2.FETでUSBの電源をスイッチング
数個のLEDを点灯させるくらいなら、ラズパイからの電源供給でまかなえてしまうけど、もっと大電流を流して雷鳴を轟かせたい(?)。というわけで、ラズパイではスイッチングだけを行い、電源供給は別で行うことにした。
スイッチングにはFETを使用。3.3Vでスイッチングするので、秋月電子のラインナップの中からTK7R4A10PLを選定。Id-Vgsのグラフからゲートソース間電圧が低くてもドレイン電流が十分取れるものにした。
回路図にするとこんな感じ
3.USBのランプをON!
- 1で作成したシェルスクリプトをlogchker4.shとして保存。
- chmod a+x logchker4.sh で実行権限を付ける。
- 実行にルートの権限が必要なので、sudo ./logchker4.shで実行。
動画、うまくアップできなかったので、動作しているところは省略。
ルーティング発生のタイミングで光らせるには、前回の記事のシェルスクリプトから呼べばOK。
うーん、なんかすごいものを駆動するといい感じになりそうな予感がする。何かないかな。