はじまりはビープ音

ドリームキャストのことを中心にゲーム関係の気になったことを書いていくつもりです。

Raspberry Pi Pico+GP2040で薄型レバーレスを自作(試作)したお話

f:id:pomegd:20220223020102j:plain

自分が思っていた以上に反響があったRaspberry Pi Pico+GP2040のアケコン基板の記事。話題に出しておいて何もしないのもどうかと思ったので、レバーレスを作ってみました。左上のネジがないのは付け忘れです。

GP2040について

「Pico Fighting Board」のデータを活用

GP2040は、それをベースにカスタマイズされたファームウェアがいくつか公開されています。基本的なボタンやレバー操作だけであれば元々のGP2040を使えば事足りますが、今回はLEDやOLEDのボタンステータス表示設定がすでにされている「Pico Fighting Board」*1を使用することにしました。kicad用のデータも公開されているので、ありがたく活用、参考させていただきました。

基板作成

すでにBrook Universal Fighting Board(UFB)を使ってレバーレス「Mille-feuille」を自作しており流用できるので、それをベースにGP2040周りの回路を組む形にしてみました。

基本部分については以下記事で書いたので省略します。

USB Type-C

pico自体はmicroUSBですが、元の「Mille-feuille」でもType-Cを使用していたので、今回もType-Cにします。これは上下の向き関係なく挿せることやmicroUSBの強度も気にしてType-Cにしています。

VBUSとGNDは特に問題なく配線できますが、D+とD-についてはpicoの裏にあるテストポイントを使用しています。TP2,TP3が該当箇所*2です。

f:id:pomegd:20220223130703p:plain

OLEDの位置決め

UFBよりPicoの方が小さいため特にスペース確保に困ることはありませんが、OLEDを載せるための場所決めで悩むことに…。

ボタンの配置や全体サイズを変えるのはイヤだったので、最終的には手で隠れてしまう位置に配置することに。操作中に頻繁にOLEDを見るわけでもないし、最低限ステータスが確認できれば良い、ということで妥協してます。

↓今回使ったOLED。

とりあえず完成

kicadでの設計を終えたら基板発注。今回GP2040を使ってとりあえず作ってみる、が目標だったのでケースとなるアクリルについては流用する形で済ませています。

妥協したとはいえ、やはりOLEDの位置が気になります。

課題としては、OLEDの配置、ファーム書き換え(更新)時にネジ外して開けなきゃいけない(picoのBOOTSELを押さなきゃいけないので)、といったところでしょうか。どちらも「Mille-feuille」をベースにしていることが原因なので、今後picoを使って作る時はその辺りを考慮して作ってみようと思います。

ちなみにUFBを使って薄型レバーレス作る場合は各コネクタを取り外す工程が必要ですが、それに比べるとpicoはそのまま半田付けするだけなのでだいぶ楽です。

回路図もkicad用のデータもソースもファームウェアも無料で公開されているので、皆さんも自作アケコン作りに挑戦してみてはいかがでしょうか。楽しいよ。