今回から数回にわたり、自作キーボード兼HitBox風のゲームコントローラを自作していこうと思います。初回なので、環境構築とテスト編です。
RP2040
ラズパイの互換基板です。これをベースに自作キーボード(格ゲーコントローラ)を自作していこうと思います。
RP2040
ラズパイzeroの互換基板でそれなりに安価で手に入ります
広告
環境構築-1 Thonny IDE
CやVHDLでしっかり書きこんでいった方が、遅延は少なくなりますが、動作チェック段階なので、環境構築が楽なcircuit pythonで作っていこうと思います。まずは、pythonのシリアル通信ができる環境を作ります。
Thonny IDEは、PC側でコードを書き、RP2040のシリアル通信(print出力など)を確認するためのツールです。
公式サイトからインストーラをダウンロードして環境構築します。
thonny home page
pythonでシリアル通信するIDE
thonny.org
インストーラの起動画面
環境構築2 circuit pythonをセットアップ
Thoonyは、PC側の設定だったので、RP2040の方を「Pythonが動くマイコン」にします。
1. CircuitPythonのダウンロード
公式サイトから最新の .uf2 ファイルをダウンロードします。
ダウンロードページへのリンク
circuitpythonの公式ページ
circuitpython.org
2. RP2040にインストール
RP2040をPCに接続すると F:ドライブなどで読み込まれて表示されます。

ここに先ほどダウンロードした。”.uf2ファイル”をドラッグアンドドロップします。すると自動的に、セットアップされて、再読み込みされます。読み込みが成功したら、CIRUITPY(F:)のような表示に変わります。

デモプログラムで接続チェック
RP2040のセットアップができたら、Toonyを起動して、接続チェックします。
Toonyを起動したら、”ファイルを開く”から、RP2040のcode.pyを開きます。
RP2040は起動したら自動的に “code.py”という名前のファイルを検索して実行してくれます。
ここに、とりあえずチェックとして、0ピンをGNDと短絡したら”Hit”と表示するプログラムを書きテストしてみます。
この時、画面左下のPython環境が”Circuit Python”になっていることを確認してください。ローカルのpython環境だとPCで動作させることになってしまうのでエラーが出ます。

左下で環境チェック
接続が正常にできていれば、以下の様な表示が出ます。

テスト結果
今回は簡易テストとして、ジャンパ線で短絡してチェックしてみました。

手動で短絡

出力結果

ターミナルの出力結果を見れば、(Hit!)と出ておりRP2040の出力を受け取ってPCで表示できていることが確認できます。
キーボード入力できるようにする
キーボード入力できるようにするためには、キーボード入力のハンドリングライブラリが別途必要なので、ライブラリの配布場所からダウンロードしてセットアップします。
1.配布場所からダウンロード
CircuitPython Libraries
ライブラリのライブラリページ
circuitpython.org今回ダウンロードした circuitpythonが 10.0.3だったので、10.xの方をダウンロードしました。

2. RP2040にインストール
ダウンロードしたフォルダを展開し中を見ると、libフォルダがあります。
libフォルダの中にある adafruit_hidのフォルダを探します。

これを、RP2040のlibフォルダの中にそのままコピペします。
キーボード入力テスト
キーボード入力できるように、プログラムを書き直し、とりあえず”a”と打つようにしました。

実行結果

RP2040 キー入力テスト
短絡でキー入力できました。
まとめ
RP2040のセットアップとキー入力までできました。基板自体は安い場合は500円くらいで手に入ったりするので、プログラミングと電子工作に自信があれば、自作キーボードを簡単に作れます。興味があれば作ってみてはいかがでしょうか。
RP2040
ラズパイzeroの互換基板でそれなりに安価で手に入ります
広告
次回は、スイッチと配線、配置を考えて試作機を作りたいと思います。反応速度と完全な同時入力ができる、(まあ、ロマンでしかないですが、)よくあるグリッド接続でなくダイレクトに接続してみようと思います。
次回:試作機モデリングとテスト
自作hitbox 小型マイコンで格ゲーコントローラを自作する。-その2 キー配列と試作機01-【RP2040】
自作キーボード(アケコン風)の試作機1号完成。動作検証のためZZZを自作キーボードでプレイ。
2 記事
RP2040で作る自作キーボード
RP2040(ラズパイゼロ互換)基板で自作キーボードを作ってみる。
ここまで読んでいただきありがとうございます。
では、次の記事で。 lumenHero