自分が思っていた以上に反響があった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です。
OLEDの位置決め
UFBよりPicoの方が小さいため特にスペース確保に困ることはありませんが、OLEDを載せるための場所決めで悩むことに…。
— ぽめ (@pomegd) February 6, 2022
ボタンの配置や全体サイズを変えるのはイヤだったので、最終的には手で隠れてしまう位置に配置することに。操作中に頻繁にOLEDを見るわけでもないし、最低限ステータスが確認できれば良い、ということで妥協してます。
↓今回使ったOLED。
とりあえず完成
kicadでの設計を終えたら基板発注。今回GP2040を使ってとりあえず作ってみる、が目標だったのでケースとなるアクリルについては流用する形で済ませています。
ボタンLEDの確認と手のポジションで見えなくなるOLED pic.twitter.com/aouYO5bV41
— ぽめ (@pomegd) February 22, 2022
妥協したとはいえ、やはりOLEDの位置が気になります。
課題としては、OLEDの配置、ファーム書き換え(更新)時にネジ外して開けなきゃいけない(picoのBOOTSELを押さなきゃいけないので)、といったところでしょうか。どちらも「Mille-feuille」をベースにしていることが原因なので、今後picoを使って作る時はその辺りを考慮して作ってみようと思います。
ちなみにUFBを使って薄型レバーレス作る場合は各コネクタを取り外す工程が必要ですが、それに比べるとpicoはそのまま半田付けするだけなのでだいぶ楽です。
回路図もkicad用のデータもソースもファームウェアも無料で公開されているので、皆さんも自作アケコン作りに挑戦してみてはいかがでしょうか。楽しいよ。