【ArduinoUNO】HID USBキーボードシミュレータ?を作ってみた。(その1)
会社では、業務以外に課のIT委員担当っていうのに任命されている。
何をするのかと言えば、課内で所有するPCの設定が、会社の基本設定になっているかどうか(「スクリーンセーバは5分。かつパスワード付き。」「フォルダの共有は禁止」「ウイルスバスターは最新のパターンファイルになっているか」等)のチェックを目視で行う役を担っている。
課では13人がいて、各人約2台保有。
なもんで30台弱のPC設定チェックを半期に一度行う。
が検査項目も24個もあって、これがまぁ〜時間がかかって結構面倒な作業。
さらにXPやら7やらまちまちのOSなPCらだから、それぞれOS別にチェックする場所が違ってきて手間ばっかりかかる。(;ω;)
なので、Arduinoを使って…
- マスターPCからシリアル通信でArduinoを経由して検査対象(スレーブ)PCへキーボードの信号を送り、PC操作をマスター側からバッチ処理を行って、検査時間の短縮化を謀ろうと考えてArduinoの購入をしたのであった。
まぁ。「(HID)USBキーボードシミュレータ」というべきかな。
購入したArduino UNOには「ATMega16U2」、「ATMega328P」2つのチップが乗っていて、I/F部分を担当しているのが「16U2」というチップ。
コレは普段、シリアル通信処理を行っている。
これも「プログラマブルIC」なわけで、
FWを書換えることでHIDのUSBキーボードにとして振る舞う |
ただ、面倒なことにHIDのUSBキーボードのFWに書換えると今度はシリアル通信機能ができなくなるので、Arduinoのメイン側(328P側)のFWを書き込むことが出来なくなってしまう。その時は元のFWに書き戻して使わなければならない。
ってことで、手始めにインターネットからそれぞれのFWをダウンロード。
- USBキーボード用FW
Arduino-keyboard-0.3.hex - UNO用シリアル通信FW
Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex
で、この2つのFWを書き込むための環境を整える。
どうすりゃ簡単か、ネットで調べてあれこれ考えたあげく…
やり方にした。秋月でその昔に買っていたAE-UM232RをICSP書き込み治具として使う
- 治具と言っても線を引っ張っただけだし、書き込みソフト(Windows)も既に「ardude-GUI」がある。
いろんな人がこの方法で、運用しているのでまず壁に打ち当たることもないでしょう。
- 案の定書込むことが出来て、「16U2」のFW書換が可能となった。
お次は、制御ソフトする側を作らねば…。>つづく
| 固定リンク | 0
コメント