ゲームパッド (背面多ボタン)
電子工作
2024-04-13 (23 months ago)

モチベーション
フロム・ソフトウェアのゲームの アーマード・コア6 や エルデンリング をプレイする際、通常のゲームパッドだと同時操作するボタンが足りなくなる場合があります。
通常のコントローラーの場合、親指でスティック操作をしながら 十字キーやABXYを同時に操作できないため。
十字キーやABXYを人差し指で操作する、いわゆる「モンハン持ち」でしばらく操作していましたが、人指し指が痛くなり健康上問題がありそうなため、専用のゲームパッドが欲しくなり作ることにしました。
概要
- フレームを3Dプリンタで作成。
- プロトタイプのため、配線はむき出し。
- ボタンは、Amazon で買った12mmのタクトスイッチを使用。安いやつ。
- アナログスティックは DualShock 風のスティックのモジュールを Amazon で買ってたのでそれを使う。
- マイコンは Raspberry Pi Pico を使う。
- コードは CircuitPython で書く。
Raspberry Pi のアナログ入力
通常の Raspberry Pi Pico は アナログ入力が3本しかない。 RP2040は4本のアナログ入力が可能だが、 Pico は3本しか配線されていない。
RP2040を使ったサードパーティー製のマイコンボードは、4本のアナログ入力が可能なものがある。 例えば Waveshare RP2040-Zero など。
今回は、AliExpress で 紫色の基盤の Raspberry Pi Pico 互換機を購入した Raspberry Pi Pico Purple とか言われているもの。
ファームウェア
CircuitPython を使うが、 CircuitPython のサイトから 通常の Pico用のファームウェア をダウンロードして使うと、アナログが3本しか使えない。
そのため、4本のアナログ入力が可能なマイコンボード用にビルドされたファームウェアを使うと良い。私は Waveshare RP2040-Zero 用のファームウェア を使った。


