自分だけのキーボードショートカットが持ち歩ける「ワンボタンキーボード」。Arduino IDEを用いて、コマンド登録する方法をご紹介します。
組み立て編はこちら
事前準備:Arduino IDEのインストール
ワンボタンキーボードにはBeetleというArduino Leonardo互換のマイコンが用いられています。BeetleをArduino IDEからプログラミングすることで、自分の好きなキーの登録が可能になります。
Beetle - The Smallest Arduino / ATmega32U4搭載 / Arduino Leonardo互換
- 出版社/メーカー: DFRobot
- メディア: エレクトロニクス
- この商品を含むブログを見る
まずはArduinoのページにアクセス、DOWNLOADSからArduino IDEをダウンロードし、PCにインストールします。なおArduino IDEの利用には、Windows、Mac OS、LinuxなどのPCが必要になります。iOSやAndroidなどのスマートデバイスでは利用できませんので、ご注意ください。
これ1冊でできる!Arduinoではじめる電子工作 超入門 改訂第3版
- 作者: 福田和宏
- 出版社/メーカー: ソーテック社
- 発売日: 2018/06/16
- メディア: 単行本
- この商品を含むブログを見る
Arduino IDEでプログラミング
1.新規ファイルの作成
Arduino IDEのセットアップができたら、さっそく起動しましょう。メニューの「新規ファイル」を選択し、新しいファイルを作成します。ファイル名は自由に付けていただいて構いません。
2.ソースコードをコピペ
こちらのGithub Gistのページから、ソースコードをコピーして、Arduino IDEに貼り付けます。Arduino IDEに元から入力されていたコードは削除してください。
gist02f89096e0a5ea5663a02d36e0ad9fff
3.自分の好きなキーを登録
19行目以降にキースイッチが押された際の動作が書かれています。ここを書き換えることで、自分の好きなキーボードショートカットが登録できます。
より詳しい説明
●キー入力の記載方法
【例1】[Ctrl]+[v]の場合
Keyboard.press(KEY_LEFT_CTRL); // [Crtl]を押す
Keyboard.press('v'); // [v]を押す
delay(10); // 10ms待つ
Keyboard.releaseAll(); // すべて放す
Keyboard.press(xxx) で好きなキーが押せます。キー名は下記一覧を参照。次の行に別のキーを書くと同時押しになります。すべてのキーを押し終わったら必ず10ms待ってから、Keyboard.releaseAll() でキーを放す動作を行います。
【例2】"Hello World" と入力する場合
Keyboard.print("Hello World"); // "Hello World"と入力
好きな文章を一気に入力したい場合は、Keyboard.print("xxx") を使います。この場合は、delay(10) や Keyboard.releaseAll() を書く必要はありません。
●制御キー名一覧
制御キー名一覧です。例えば「BACKSPACE」を使いたい場合は、
Keyboard.press(KEY_BACKSPACE);
と入力して下さい。
CTRL | KEY_LEFT_CTRL または KEY_RIGHT_CTRL |
SHIFT | KEY_LEFT_SHIFT または KEY_RIGHT_SHIFT |
ALT | KEY_LEFT_ALT または KEY_RIGHT_ALT |
WIN | KEY_LEFT_GUI または KEY_RIGHT_GUI |
スペース | 0x20 |
上 | KEY_UP_ARROW |
下 | KEY_DOWN_ARROW |
左 | KEY_LEFT_ARROW |
右 | KEY_RIGHT_ARROW |
BACKSPACE | KEY_BACKSPACE |
TAB | KEY_TAB |
RETURN | KEY_RETURN |
ESC | KEY_ESC |
INSERT | KEY_INSERT |
DELETE | KEY_DELETE |
PAGE UP | KEY_PAGE_UP |
PAGE DOWN | KEY_PAGE_DOWN |
HOME | KEY_HOME |
END | KEY_END |
CAPS LOCK | KEY_CAPS_LOCK |
F1 | KEY_F1 |
F2 | KEY_F2 |
F3 | KEY_F3 |
F4 | KEY_F4 |
F5 | KEY_F5 |
F6 | KEY_F6 |
F7 | KEY_F7 |
F8 | KEY_F8 |
F9 | KEY_F9 |
F10 | KEY_F10 |
F11 | KEY_F11 |
F12 | KEY_F12 |
F13 | KEY_F13 |
F14 | KEY_F14 |
F15 | KEY_F15 |
F16 | KEY_F16 |
F17 | KEY_F17 |
F18 | KEY_F18 |
F19 | KEY_F19 |
F20 | KEY_F20 |
F21 | KEY_F21 |
F22 | KEY_F22 |
F23 | KEY_F23 |
F24 | KEY_F24 |
※Macの場合
cmd | KEY_LEFT_GUI |
option | KEY_LEFT_ALT |
4.ワンボタンキーボードに書き込む
プログラムの準備ができたら、ワンボタンキーボードに書き込みを行います。ワンボードキーボードをUSBで接続し、「ボード」からArduino Leonardoを選択します。
次にArduino IDEの「シリアルポート」でArduino Leonardoが選択されていることを確認してください。
最後にArduino IDEの「→」アイコンでマイコンボードに書き込みをします。これでプログラミングは完了です。あなただけのワンボタンキーボードをぜひ楽しんで下さい!
ワンボタンキーボードの設定例
ワンボタンキーボードはキーの設定次第で無限の可能性を秘めています。「w」を登録すれば草生やし専用ボタンに。
草生やし専用ボタン🌱🌱🌱 pic.twitter.com/kPcJz2BnKV
— タナゴ@チームタナゴ/サイバーおかん (@1_design) May 8, 2019
lolな時に。
草専用ボタンにlolバージョンが仲間入りしました🌱
— タナゴ@チームタナゴ/サイバーおかん (@1_design) June 21, 2019
1クリックで「lol」、続けてクリックすると「lololol…」と続きます。
"Grass w" dedicated button lol version.
A dedicated button for lol. One click "lol", continuous click "lololol ..." pic.twitter.com/c8U6KShpWF
hahahaって笑いたい時に。
なんと!hahahaバージョンもあります!There is also a "hahaha" version… pic.twitter.com/IIFKXgOtwW
— タナゴ@チームタナゴ/サイバーおかん (@1_design) June 21, 2019
cmd+shift+4でMac用の指定範囲スクリーンショットに。
#趣味TECH祭 で初出しのワンボタンキーボード。cmd + shift + ctrl +4(MacOSだと指定範囲スクリーンショットをクリップボードへ)で作って、どうせあまり使わないだろうとか思ってたけど、資料作りの時すごく便利。ワンボタンだからこそブラインドタッチできる。 https://t.co/EqyGcz0UMy pic.twitter.com/6lT42CDWw6
— クム@くむ組む (@kumajoi) May 13, 2019
無駄の出力に。
無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄無駄!! pic.twitter.com/E2ns8helVK
— あんこ♪ (@ancojp) June 11, 2019
もし動かない場合は?
動かないというお問い合わせを頂きますが、大半ははんだ付けの不良と充電専用ケーブルの利用が原因です。こちらのページにはんだ付けの失敗例があります。失敗していないかご確認ください。またケーブルはデータ通信が利用できる物をご使用ください。
※ワンボタンキーボードの組み立てには、はんだ付けの知識・経験が必要になります。もしはんだ付けのご経験がない場合は下記の本などで、学習・練習することをオススメします。
はんだ付け、ケーブルともに問題がない場合、ケーブルを挿した状態(通電した状態)でピンセットなどで下記画像が示す赤色の部分に触れていただくと、ArduinoIDEで認識される場合があります。
ご不明な点がございましたら、TOKYO FLIP-FLOPの公式アカウントまでお気軽にご連絡下さい。