前回書いたこちらの記事の追記となります。
発注していた基板と3DプリントケースがPCBWayから届いたので、パーツを実装しファームウェアを書き込み完成させました!

GP2040-CEを使って、ファミコンコントローラーをUSBゲームパッド化するためのカスタム基板とケースを設計しました。
上記前回の記事では、GP2040を使ったファミコンコントローラー用の基板設計や、Type-C端子に対応させたカスタムケースの設計、そしてPCBWayに発注するところまでをご紹介しました。
今回はその続きとして、到着した基板のパーツ実装からファームウェアの書き込みや設定、そして動作確認から完成までの製作過程をまとめていきます。
目次
- GP2040−CEに対応したファミコンコントローラー型USBゲームパッド化基板の製作
GP2040−CEに対応したファミコンコントローラー型USBゲームパッド化基板の製作
本家ファミコンコントローラーの形状や外観はそのままに、USB Type-C端子やRGB LEDを追加するなど、今風にアレンジしたUSBゲームパッドを目指してカスタム基板とケースを設計しました。
PCBWayに発注していた基板と3Dプリントケースが到着したので、早速パーツを実装し完成させてみました。
PCBWayに発注していた基板と3Dプリントケースが到着
PCBWayに発注していた基板と透明レジンによる3Dプリントケースが到着しました!
3Dプリントパーツの製造、特に今回利用した透明レジン(UTR-8100)での製造は結構時間がかかるのですが(オプションにもよりますが通常7-10日前後)、発注から9日で手元に到着しました。
はい、予想通り綺麗な仕上がりです👌
ファミコンコントローラーのカスタムケースとPCBです。色味の指定はファミコン定番カラーの赤から少し外して、今風ポップにPANTONE red 032Cで染色!
やばいね、これ🤩提供
Thank you@PCBWayOfficial https://t.co/oEXC9qybTu pic.twitter.com/ItQxN8bF2v— ガジェット大好き!! (@smartphone_jp1) July 9, 2025
コントローラー用のカスタムケースは、UTR-8100をベースに色味を指定してカラー透明スケルトンケースとして仕上げてみました。
発注の際に非常に迷ったのですが、ファミコンカラーの赤をイメージし、そして基板背面に搭載したRGB LEDの透過性なども考え、色味はPANTONE red 032Cを指定して製造してもらいました。
PCBWayでの透明レジンによる染色は、これまで数回試しているのでその仕上がりに関しては分かってはいましたが・・・
非常に綺麗な仕上がりで届きました!
本家ファミコンカラーの赤から少し外して明るめの色味を指定したのですが、ファミコンらしさを残しつつ今風で透明感がある可愛くポップな仕上がりになったと思います。
RGB LEDの透過性も良いようです。
自作でこのレベルのケースが作れてしまうのは驚きで、今後の工作の幅も広がりそうです。

ケース、そして基板ともに、本家ファミコンコントローラーと互換性を持たせた形状・サイズで設計しましたが、実際に組み込んでみるとフィット感は問題なく完璧な仕上がりでした。
そして基板の方は今回メンブレンスイッチを使っていることから表面仕上にENIGを選択したのですが、PCBWayで製造されるレジストは比較的光沢感が強い方なのでENIGとの相性もいい感じです。
以前レジストの色味確認のためにギフトショップで入手したPCB定規が役立ちました。

ボタン操作も違和感なく、オリジナルと変わらない感触でしっかり反応してくれるので、見た目も中身も満足のいくゲームパッドになりました。
基板&3Dプリントケースともに予想以上に綺麗な仕上がりなので、これは早く完成させたい・・・
パーツの実装
それではパーツの実装です。
ステンシルを使いはんだペーストを塗布します。
本基板は、今回製作したカスタムケースを使ってType-C端子で使うことや、またUSBケーブルを接続し本家コントローラーのケースとの組み合わせでも使えるようにしています。
本家ケースを活かして使いたい場合は、Type-C端子は不要となりケースと干渉してしまうので未実装としておきます。
また、R3/R5の抵抗も必要無くなるので未実装にしておいても問題く、RGB LEDは見えなくなってしまうのでこれも未実装にしておいても問題ありません!
今回はType-C端子で使えるカスタムケースとの組み合わせで使う予定なので、パーツは全て実装しました。
綺麗にはんだペーストを塗布する事が出来ました。
このレベルで塗布出来ていれば、ピッチの狭いRP2040やType-C端子といったパーツでブリッジすることはあまりないと思いますが、ブリッジ修正しやすいようにある程度パーツのクリアランスを取っているので、はんだ作業に慣れた方なら問題ないと思います。
ステンシルを使ったはんだペーストの塗布ではいつもこれを使っています。
パーツの実装は、MHP50というミニリフロー装置を使いました。
PD電源が使えコンパクトで作業スペースの邪魔にもなりにくい、自作基板製作でいつも愛用している非常に便利なホットプレートです。

そして今回製作した基板はMHP50のホットプレートを超えるサイズ(約113mm×43mm)だったため、このような専用スタンドを使い作業を行いました。
MHP50を使ったリフローで、大きなサイズの基板にも対応することが出来るので便利です!

実装は綺麗にでき、動作確認も問題なく一発OKでした。
ファームウェアの書き込み
本ボードは、GP2040-CEファームウェアでの使用を前提としたハードウェア構成になっています。
Webブラウザ上で各種設定が行えるWeb Configurator経由でGPIOの割り当て等の設定が可能です。
GP2040-CEの詳細に関して詳しくはこちらの本家サイトをご覧下さい!
参考 Multi-Platform Gamepad Firmware for RP2040GP2040-CEそれではファームウェアの書き込みです。
Raspberry Pi Picoで動作する標準キーマップでGPIOを割り振っています。
書き込むファームウェアは、以下本家サイトから最新のものをダウンロードすることが出来ます。(Raspberry Pi用ファームウェアを選択)
今後ファームウェアのバージョンが上がった際の動作や操作方法等が変わってくる可能性もあるので、動作確認が出来ている現在(2025.07)の最新ファームウェア(GP2040-CE_0.7.11_Pico.uf2)を以下からダウンロード出来るようにもしておきます。
それではファームウェアを書き込みます。
本基板にUSBケーブルを挿し込みPCと接続します。
[BOOT]スイッチを押した状態で[RESET]スイッチを押すとDFUモードに入ります。
PCにUSBマスストレージとして認識されるので、あとは上記ダウンロードしたファームウェアをドラッグ&ドロップして書き込めば完了です。
パーツの実装が問題なく、そしてファームウェアが正常に動作すれば、このように何かしらLEDが点灯するかと思います。
問題が無ければ、次にWeb Configuratorに接続し最低限の設定を行っていきます。
初めての火入れはいつも緊張してたけど…
この短絡チェッカー作ってからは、もう安心!
何かあればカットしてくれるので👌ファーム動いたから問題ないでしょう😆
あとは諸々設定していくよ・・・ pic.twitter.com/De4iDI9NiJ— ガジェット大好き!! (@smartphone_jp1) July 10, 2025
ちなみに、自作基板製作ではパーツ実装後の電源ラインの短絡チェックは最低限やっておかないと怖いのですが、テスター等を使い毎回確認するのは地味に手間がかかります。
以前製作した簡易短絡チェッカーとしても使える上記ボードが、最近非常に役立っています!
初めての導通時にVBUS・GNDラインの短絡チェックができるので、万が一のショートによるボードやパーツ破損を未然に防ぐことが出来る安心感があります!

Web Configuratorを使って各種設定
ファームウェアの書き込みが完了したら、Web Configuratorを使って基本設定だけ行っておきます。
まだケースに組み込んでいない状態なのでスイッチを押しにくいと思いますが、ラバーを重ねて[START]スイッチを押せる状態にしておきます。(面倒であればケースに組み込んで下さい)
Web Configuratorを立ち上げる
Web Configuratorを立ち上げて各種設定を行っていきます。
Web Configuratorの立ち上げは、基板の[START]スイッチを押した状態でUSBケーブルを差し込み通電するか、または[START]スイッチを押した状態で[RESET]スイッチを押します。
そしてWebブラウザーで以下アドレスにアクセスするとWeb Configuratorが立ち上がります。
ここから最低限の設定だけ行っておきます。
入力モード & ホットキーの設定
まず[設定]の[入力モード設定]を[標準HID]に変更します。
次に[ホットキー設定]です。
ファミコンコントローラーなのでスイッチの数が[↑] [↓] [←] [→] [SELECT] [START] [B] [A]と8個しかないため、ホットキーを割り当ててLEDの点灯輝度やパターンを変更出来るようにしてみました。
設定方法はいろいろと出来ると思いますが、一例としてこんな感じに設定して私は使っています。
キー数少なくてもホットキー割り当ててLEDの点灯パターンや輝度変えたりは出来るなと…😏 https://t.co/xKyXPo3MAZ pic.twitter.com/aOpExEneO4
— ガジェット大好き!! (@smartphone_jp1) June 26, 2025
この設定では、以下のようにスイッチを複数同時押しすることにより、LEDの点灯を変更出来るようにしています。
| キーの組み合わせ | 動作 |
| [START] + [SELECT] + [↑] | LEDの明るさを上げる |
| [START] + [SELECT] + [↓] | LEDの明るさを上げる |
| [START] + [SELECT] + [→] | 次のエフェクト |
| [START] + [SELECT] + [←] | 前のエフェクト |
| [START] + [SELECT] + [B] | 静的色の前の色 |
| [START] + [SELECT] + [A] | 静的色の次の色 |
GPIO端子割り当て設定
次に[構成設定]から[GPIO割り当て設定]へ進みます。
基本的に標準で割り当てられている設定からハードウェア構成は変えていないので変更する必要はありませんが、ファミコンで使う8キー以外(使用していないGPIO)を削除しておきました。
LED設定
最後にLEDの設定です。
[構成設定]から[LED設定]へ進みます。
データ端子を28にしておきます。(デフォルトで設定されてたかな?)
最大輝度やステップはお好みで!
最後に、[ケースRGB LED]をこのように設定します。
RP2040の読み取り専用メモリ内に設定内容が保存されます。
以上で設定完了です。
ブラウザを閉じ、再起動すればゲームパッドとして使えます。
朝活!
GP2040を使ったファミコンコントローラー型USBゲームパッドくん完成👌超可愛く仕上がったぜ🤩 https://t.co/3d44VxVah1 pic.twitter.com/MgKUoCEH4D
— ガジェット大好き!! (@smartphone_jp1) July 10, 2025
甥っ子くんオーダーのやつ完成したのでテストしながら遊んでる。
操作感も全く問題なくいい感じ👌そして可愛いコントローラーくん🎮
やっぱ自作っていいよねー😘 https://t.co/7mxCS3L3xE pic.twitter.com/VXdwTxcJBS— ガジェット大好き!! (@smartphone_jp1) July 11, 2025
カスタムケースで使用
今回PCBWayで製作した3Dプリント製のカスタムケースは、Type-C端子で使えるように設計しています。
ファミコンカラーを意識して染色したスケルトンケースは、ファミコンの雰囲気を残しながらも今風な感じが良いですね。
LEDの光を程よく透過して視覚的なアクセントを加えてくれ、とても可愛く仕上がりました!
そして復刻版のアルミプレートが販売されていたので、これを取り付けて完成させました。
Yahoo!オークションなどでも安価で販売されているようです。
動作確認ができ基板&3Dプリントケースともに問題がなかったので、基板データ(ガーバーファイル)とカスタムケースデータ(STL)をダウンロード出来るようにしておきます。
興味ある方は使ってみて下さい。
また、PCBWayへの発注方法などは前回の記事を参考にして下さい!

本家ケースで使用
本家ファミコンコントローラーのケースにもそのまま組み込めるように基板サイズやネジ穴の位置なども最適化しています。
本家ケースのケーブル穴から4ピンUSBケーブルを引き出す構成で、外観はそのままに中身だけをアップデートしたUSBゲームパッドとして使うことも出来ます。
お手持ちのType-Aケーブルをカットして接続するか、市販されているUSB4芯ケーブルを使います。
USBの4芯ケーブルは、赤(VBUS) / 黒(GND) / 緑(D+) / 白(D-)となっているのが一般的です。
対応するパッドにそれぞれをはんだ付けします。
本家ケースを使うとLEDの点灯が見えなくなってしまうので、LEDを活かしたい場合は透明ケースで作ってみるのもいいかと思います。
以前こちらの記事で本家コントローラーの形状を正確にモデリングしたSTLファイルを公開しました。

このデータを使い、上記写真のような本家コントローラーと完全互換の透明ケースを作ったりするのも面白いと思います。
GPIO割り当てを変更しWeb Configuratorに入れなくなった場合の対処
以上でファミコンコントローラー型のUSBゲームパッドの完成です!
カスタムケースを使い今風にType-C端子&ケーブルで使うか、または本家ケースを活かして使うか・・・
お好みで選択することが出来ます。
あと製作前のテスト段階でハマった部分があったので書いておきます。
GP2040では各種設定をWeb Configurator経由で設定出来るので便利なのですが、先述の通りWeb Configuratorに入るには[START]ボタンを押した状態で通電(またはリセット)する必要があります。
そしてGPIOの割り当てを変更するなどして使う場合、例えば[START]ボタンのGPIO割り当てを変更してWeb Configuratorに入れない・・・といった場面に遭遇することがありました。
RP2040でWebコンフィグだか立ち上げるためのピンを変更しちゃって入れなくなり…
ファーム書き直しても設定データは残ってるから入れず・・・
確かラズパイ公式さんのどっかにフラッシュ消去するuf2ファイルがあったような?
起きたら探せメモ📝
— ガジェット大好き!! (@smartphone_jp1) June 20, 2025
そのような場合は、一度RP2040を初期化(設定情報を消去)してから再度ファームウェアを書き込む必要があります!
- flash_nuke.uf2を書き込み、設定情報を消去 する
- 新たにGP2040ファームウェアを書き込む
本ボードの[BOOT]スイッチを押した状態で[RESET]スイッチを押すとUSBマスストレージとしてPCに認識されるので、ドラッグ&ドロップで以下ファイル(flash_nuke.uf2)を書き込み、まずRP2040を初期化しておきます。
続いて同様の操作で上記GP2040ファームウェア(GP2040-CE_0.7.11_Pico.uf2)を書き込めば、設定情報がデフォルト状態に戻るのでWeb Configuratorに入ることが出来ます。
そして再度上記手順に従い設定を行って下さい!
使用パーツ一覧
今回使用したパーツの一覧です。
| パーツ | 定数 | 入手先 |
| コンデンサ (0603) | C1 10μF C2/C3/C4/C5/C6/C7/C12/C14/C16/C17/C18/C19/C20/C21/C22 100nF C13/C15 1μF C9/C10 15pF | AliExpress |
| コンデンサ (0805) | C8/C11 1μF | AliExpress |
| ヒューズ (1206) | F1 500mA | AliExpress |
| USB端子 | J1 Type-C端子 ※本家ケースで使用する場合不要 | AliExpress / 秋月電子 |
| RGB LED | LED1~LED6 WS2812B(5050) | AliExpress / 秋月電子 |
| MOSFET | Q1 BSS138(SOT23) | AliExpress / 秋月電子 |
| 抵抗 (0603) | R1/R4/R7/R8 10kΩ R2 470Ω R6/R9 1kΩ R10/R11 27R R3/R5 5.1kΩ ※本家ケースで使用する場合R3/R5不要 | AliExpress |
| タクトスイッチ | SW9/SW10 3mm×4mm×2.5mm(4P SMD) | AliExpress |
| ESD | U1 USBLC6-2SC6(SOT23-6) | AliExpress |
| LDO(3.3V) | U2 XC6206-3.3V(SOT23-3) | AliExpress |
| フラッシュ | U3 W25Q128JVPIQ() | AliExpress |
| MCU | U4 RP2040 | AliExpress / 秋月電子 |
| クリスタル (3225) | Y1 12MHz | AliExpress / 秋月電子 |
また、抵抗R3/R5(5.1kΩ)も不要となるので未実装でも問題ありません。
【追記】スーファミコントローラー版も製作してみました!
GP2040-CEで動かす同構成で、スーファミコントローラー版も製作してみました。
こちらもカスタムケースを使いType-Cが使え、また本家コントローラーのケースもそのまま活かせる構成としています。
あわせて見て頂ければと思います。

最後に!
以前、ATmega32U4を使ってファミコンコントローラーをUSBゲームパッド化するカスタム基板を製作したことがありましたが、今回はあらためてGP2040-CEを使った構成で再度製作してみました。

当時はまだGP2040-CEの存在を知らず、普段使い慣れていたArduino環境での製作でしたが、今回はファームウェアとしての評価の高いGP2040にも触れてみたいという思いもあり、その活用も一つの目的として製作を進めていきました。
また、以前モデリングしていたファミコンコントローラーの正確なCADモデルを活かし、そして最近よく利用しているPCBWayの3Dプリントサービスと組み合わせることで、Type-C端子対応・RGB LED搭載といった構成でカスタムケースとの組み合わせでも使える、今風のファミコンコントローラー型ゲームパッドとして形にすることが出来た、個人的に非常に楽しいプロジェクトにもなりました。


PCBWayでの3Dプリントパーツ製造の精度や仕上がりありきでの製作開始だったという事もあるのですが、個人の製作物でここまで綺麗なケースが作れるとなると製作の幅も広がり、また今後作ってみたいものもいろいろと思い浮かびます・・・
そしてこっちは、UTR-8100透明レジンにカラー指定して染色したやつ!
この色付き透明ケースはすごくいいっす!これもPantoneカラーから指定できるので、お好みの色の透明ケースが作れる👍️
ゲーム機のスケルトンケースとか作れちゃうよなぁ🤤 pic.twitter.com/LxDX6ZosNZ
— ガジェット大好き!! (@smartphone_jp1) March 3, 2025
何かの参考になれば・・・











































コメントを残す