ATmega 32u4はArduino互換マイコンの一つだが、USBデバイスとして動作する特殊機能がある。USBキーボードやUSBマウス等として動作させる事が簡単に出来る。
Aideepen Beetle BadUSBキーボードプロマイクロATMEGA32U4モジュール Mini開発拡張ボードArduinoレオナルドR3用
コンパクトなタイプもあり、使い方によっては悪い方にも良い方にも使える。公共の場でパスワード入力時他人にキー操作を見られずにパスワードを自動入力する、と言った事にも使う事が出来る(紛失に注意)。
使い方は奥が深いが、単に疑似USBキーボードとしてテキスト入力するだけであれば非常に簡単なスケッチで実行できる。
ボードはArduino Microに設定、ライブラリはNicoHoodのHID-Projectを使用する。ライブラリはArduino IDEのライブラリマネージャからインストール可能。
下記スケッチを書き込んだ後、32u4をPCに接続後(スケッチ開始後)、5秒後にキーボードで自動的に「Hello」と入力するのと同等の動作になる。スケッチ書き込み直後も再起動してスケッチ動作するので、スケッチ書き込み後Arduino IDEにHelloと打ち込まれる。
#include <HID-Project.h> //HID-Project by NicoHood
void setup() {
delay(5000);
BootKeyboard.begin();
BootKeyboard.print("Hello");
}
void loop() {
}