USB インタラプタをつくる

菅原 政行(ぺんた @plageoj

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

きっかけ

武村さん (@tatasuya1970) の草刈りゲームで、

「リアル草刈り機が動いていない時はゲームコントローラーを効かなくしたい」

リレーモジュールで電源線を切る対応では、信号が残り続けてしまう

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

USB の仕様を読んでみる

USB2.0 には 4 本の線がある

  1. VBUS(+5V)
  2. DATA-
  3. DATA+
  4. GND

参考: USB 概説

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

USB の仕様を読んでみる

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

USB コネクタを抜いたことにする

  • DATA- DATA+ はホスト側でプルダウンされている

  • DATA- DATA+ の両方を LOW(0.3V 未満)に落として
    一定時間(2.5μs 以上)待つと、コネクタを抜いたことになる

→ データ線を GND ににつないであげれば良い

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

USB の仕様を読んでみる

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

USB コネクタを抜いたことにする

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

できたもの

  • Grove 互換 I/F

  • 手動用スイッチ

  • 安定のフリスクサイズ

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

結局いらなくなった…

IoTLT広島特別編 with HiBiS
USBインタラプタをつくる

どう使うか

  • マイコンのリセットをかけたいときに

  • リモートでハードウェアを抜き差ししたいときに

→ 組み合わせできそうなネタ求む

IoTLT広島特別編 with HiBiS