趣味TECHオンライン | 趣味のモノづくりを応援するオンラインメディア

趣味のモノづくりを応援するオンラインメディア

ワンボタンキーボードのプログラミング


f:id:tokyo_ff:20190527220900j:plain

自分だけのキーボードショートカットが持ち歩ける「ワンボタンキーボード」。Arduino IDEを用いて、コマンド登録する方法をご紹介します。

 

www.one-button-key.com

 

組み立て編はこちら

www.shumi-tech.online

 

事前準備:Arduino IDEのインストール

f:id:tokyo_ff:20190527222059j:plain

ワンボタンキーボードにはBeetleというArduino Leonardo互換のマイコンが用いられています。BeetleをArduino IDEからプログラミングすることで、自分の好きなキーの登録が可能になります。

Beetle - The Smallest Arduino / ATmega32U4搭載 / Arduino Leonardo互換
 

 

まずはArduinoのページにアクセス、DOWNLOADSからArduino IDEをダウンロードし、PCにインストールします。なおArduino IDEの利用には、Windows、Mac OS、LinuxなどのPCが必要になります。iOSやAndroidなどのスマートデバイスでは利用できませんので、ご注意ください。

f:id:tokyo_ff:20190527224039j:plain

これ1冊でできる!Arduinoではじめる電子工作 超入門 改訂第3版

これ1冊でできる!Arduinoではじめる電子工作 超入門 改訂第3版

 

 

Arduino IDEでプログラミング

1.新規ファイルの作成

f:id:tokyo_ff:20190527230333j:plain

Arduino IDEのセットアップができたら、さっそく起動しましょう。メニューの「新規ファイル」を選択し、新しいファイルを作成します。ファイル名は自由に付けていただいて構いません。

 

2.ソースコードをコピペ

こちらのGithub Gistのページから、ソースコードをコピーして、Arduino IDEに貼り付けます。Arduino IDEに元から入力されていたコードは削除してください。

gist02f89096e0a5ea5663a02d36e0ad9fff

 

3.自分の好きなキーを登録

19行目以降にキースイッチが押された際の動作が書かれています。ここを書き換えることで、自分の好きなキーボードショートカットが登録できます。

f:id:tokyo_ff:20190527231314j:plain


より詳しい説明

●キー入力の記載方法

【例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.ワンボタンキーボードに書き込む

f:id:tokyo_ff:20190530001511j:plain

プログラムの準備ができたら、ワンボタンキーボードに書き込みを行います。ワンボードキーボードをUSBで接続し、「ボード」からArduino Leonardoを選択します。

 

f:id:tokyo_ff:20190529230350j:plain

次にArduino IDEの「シリアルポート」でArduino Leonardoが選択されていることを確認してください。

 

f:id:tokyo_ff:20190529230615j:plain

最後にArduino IDEの「→」アイコンでマイコンボードに書き込みをします。これでプログラミングは完了です。あなただけのワンボタンキーボードをぜひ楽しんで下さい!

 

ワンボタンキーボードの設定例

ワンボタンキーボードはキーの設定次第で無限の可能性を秘めています。「w」を登録すれば草生やし専用ボタンに。

 

lolな時に。

 

 hahahaって笑いたい時に。

 

cmd+shift+4でMac用の指定範囲スクリーンショットに。

 

無駄の出力に。

 

最後に

TOKYO FLIP-FLOPでは、定期的にワンボタンキーボードの組み立てワークショップを実施しています。5/4-5に開催された趣味TECH祭(京都)での説明資料を共有します。詳細について、より詳しく知りたい方はご覧ください。

 

またご不明な点がございましたら、TOKYO FLIP-FLOPの公式アカウントまでお気軽にご連絡下さい。

twitter.com

speakerdeck.com

 

www.one-button-key.com