こちらの記事の後編となります。

前回の記事では、PicopadをベースにRP2350で動かす自作ミニゲーム機『PicoPlay2350』の構想や設計過程、またPCBWayへ発注していた基板とケースが届いたところまでをご紹介しました。
今回はその続きとして、届いた基板のパーツ実装から組み立て、動作確認までの工程を中心にご紹介していきたいと思います。
目次
RP2350で動かす自作ゲームエミュレータ『PicoPlay2350』の製作!
パーツの実装
それでは、いよいよパーツの実装に入っていきます。
今回の基板での実装で難しくなってくる部分は、コアとなるRP2350Aチップの取り付けだと思います。(左のチップです)
QFN60パッケージ(7mm×7mm)となりピンピッチがかなり狭く、手はんだでの取り付けでは位置合わせが非常に難しくなるので、リフローやヒートガンを使った実装になります。
リフロー時にセルフアライメントにより正規の位置にさえ決まってくれれば、ブリッジする箇所が発生しても修正はそれほど難しいものではないのですが・・・
セルフアライメントによりRP2040くんが適切な位置に動く様子👀 https://t.co/8CLVW2Fmux pic.twitter.com/1ZxGXhsDcu
— ガジェット大好き!! (@smartphone_jp1) March 16, 2024
RP2350Aの実装はこれまで何度か行ったことがありRP2040と同サイズのチップなのですが、ピン数が増えているので若干ブリッジしやすい印象を受けます。
そのためチップ周辺のパスコン等の配置に少し余裕を持たせ、コテが入るクリアランスを開けています。
それではパーツを実装していきます。
ステンシルを使いはんだペーストを塗布します。
綺麗にはんだペーストを塗布することが出来ました。
RP2350のパッド部分も完璧ですね!
このレベルで塗布出来ていれば、ピッチの狭いType-C端子といったパーツもブリッジすることはあまりないと思います。
ちなみに、ステンシルを使ったはんだペーストの塗布ではいつもこれを使っています。
パーツの実装は、いつも愛用しているMHP50というミニリフロー装置を使いました。
PD電源が使えコンパクトで作業スペースの邪魔にもなりにくいため、自作基板の製作ではいつも重宝しています!
以前RP2350の実装を行った際に、はんだ付け不良があり特定のGPIOピンが正常に動いたり動かなかったりと挙動が不安定になったことがあり、原因特定に時間がかかったことがありました。
今回のリフローでは、RP2350Aのパッドがしっかりと接合されるようにリフローモードを使い実装しました。
MHP50では温度を段階的に上げていくリフロープロファイルを使った実装が行えるので便利です!

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

あと基板表面の4つのインジケーターLEDも取り付けておきます。
背面にパーツを配置していないのでリフローで実装も出来ますが、手はんだで取り付けました。(LEDカラーはお好みで!)
この後、電源スイッチやディスプレイ、拡張端子、スピーカーなどのスルーホールパーツを取り付けて完成させますが、取り付けてしまうと不具合等がある場合に再リフローするのが面倒となるので、先に動作チェックを行い問題がなければ残りパーツを取り付けて完成させたいと思います。
ディスプレイが接続されていないと最低限の動作確認が出来ないため、ひとまずテストワイヤーを使って接続しました。
テストワイヤーはスルーホールにはんだ付け無しで固定出来るので、簡易テストを行う際にあると便利です!
それではこの状態でPicoLibSDKを導入し、動作テストを行い問題がなければ残りのパーツを取り付けて完成させたいと思います。
PicoLibSDKの導入 & 動作確認
本ボードは、PicopadをベースにRP2350AをコアにしてPicoLibSDKで動作する構成となっています。
PicoLibSDKについて詳しくは、以下本家サイトをご覧下さい!
SDカードの準備
本ボード(PicoPlay2350)での動作テストがすぐに行えるように、SDカード内に格納するデータを以下からダウンロード出来るようにしておきます。
ライブラリには56のサンプルプログラムとゲームなどが含まれています。(NESおよびGBのゲームデータは含まれていません!)
上記ダウンロードしたファイル(ZIP形式で圧縮)を解凍後、フォルダ内の全ファイルをSDカードのルートへ書き込みます。
ローダー(LOADER.UF2)の書き込み
次にローダーファイルを本ボードに書き込みます。
本ボードをPCと接続し、[BOOT]スイッチを押した状態で[RESET]スイッチを押すとDFUモードで起動します。
PCにUSBマスストレージとして認識されるので、先ほどダウンロードしたファイルの中にある[LOADER.UF2]をドラッグ&ドロップして本ボードに書き込みます。(初回起動時はDFUモードで自動的に起動すると思います)
これで完了です。
先に用意しておいたSDカードを差し込むと、このようなメニュー画面が表示されます。
動作確認
まだケースに組み込んでいないので操作しにくいと思いますが、スイッチラバーを乗せて上下左右、そして他の4つのスイッチが正常に動作するか確認します。
またリポバッテリーの充電動作も確認しておきます。
USBケーブルを繋いだ状態でリポバッテリーを接続するとインジケーターLEDが点灯します。
バッテリー充電中は[CHG]LEDが点灯、充電が完了したら[FULL]LEDが点灯します。
ちなみに本ボードに搭載している4つのインジケーターLEDは、それぞれ以下機能が働いている時に点灯します。
| インジケーターLED | 機能 |
| USR | 設定したバッテリー下限電圧になると点灯 |
| SD | SDカードへのアクセス時に点灯 |
| FULL | バッテリーの充電が完了したら点灯 |
| CHG | バッテリー充電中に点灯 |
リポバッテリーの取り扱いには十分に注意して下さい!
特に1セルリポバッテリーの極性(+ / -)は間違いやすく、私も充電や稼働時間などのテストをしている際にいくつかのバッテリーを使って行っていたのですが、極性を間違えて接続してしまい・・・
幸い回路内にヒューズを入れていたので大事には至りませんでしたが、くれぐれもリポバッテリーの扱いは慎重に行って下さい!
やっちまった!
いくつかリポバッテリー使って駆動&充電テストやってて、極性間違えてボードが沈黙😓PHコネクタの極性って統一性ないよね、よくやっちゃう!
充電保護は入れてたけど、バッテリー備え付けなので極性保護までは入れてないのよ。
外部電源では動くからLDOかヒューズあたりの破損かな… pic.twitter.com/iT481spt8m
— ガジェット大好き!! (@smartphone_jp1) June 7, 2025
バッテリーは基本的にボード備え付けで使用し、頻繁に取り付け・取り外しを行うことは想定していないため極性保護までは入れていませんでしたが、今回を機に以後自作ボードでは極力入れておこうかと考えています。
当方では本記事の情報や配布データを使用したことによって生じたいかなる損害や事故についても一切の責任を負いかねますので、あらかじめご了承ください。
以上、最低限の動作テストをして問題がなければメインパーツの取り付けは大丈夫なので、残りのパーツを取り付けます。
残りのパーツを取り付ける
残りのパーツを取り付けていきます
まず基板背面(実装面)に拡張端子(ピンソケット 2×6ピン)を取り付けます。
拡張端子のパッドはディスプレイに隠れるので、先に拡張端子の方を取り付けておきます。
次にその背面(基板表面)にディスプレイを取り付けます。
ケースに乗せた状態ではんだ付けすると、真っ直ぐ取り付け出来ます。
あとは電源スイッチ、スピーカーを取り付けて基板は完成です。
スピーカーは直径16mm前後のものがサイズ的に取り付けやすいと思います。
秋月電子で扱われている縦長(短方向16mm)のスピーカーもちょうどいい感じです。
組み立て
最後にケースに組み込んで完成させます。
トップケース側にインサートナット(M2×4mm OD3.2mm)を接着し4ヶ所取り付けます。
スイッチパーツは、本家スーパーファミコンのコントローラーから流用しました。(完全にフィットするように設計しています)
AliExpressでこのような互換スイッチやラバーパーツが安価で販売されているので、これを使うのもいいかと思います。
リポバッテリーは、ボトムケースまたは基板側に両面テープで固定します。
ちなみに搭載出来るバッテリーサイズは、厚さ9.5mm以内で最大サイズが以下サイズくらいのものまでケース内に格納することが出来ます。
ディスプレイまわりのベゼルパーツを接着し、トップケースとボトムケースをM2×10mmビス(4ヶ所)で固定して完成です!
ゲームをプレイする
スイッチの操作感も良く、可愛い自作ミニゲーム機に仕上がったと思います。
ゲーム経験がほぼ無いので、すごく新鮮でハマり要素満載🎮
・・・で、動作テストがてらずっと遊んでたら、ケース底面に触れてる中指の皮が剥けてきたので、今日はここまで… pic.twitter.com/XjDu7QhxFx
— ガジェット大好き!! (@smartphone_jp1) June 8, 2025
ファミコン(NES)やゲームボーイ(GB)といったPicopad用にエミュレートされたゲームデータ(uf2)をSDカード内に入れれば、500種類以上のゲームを楽しむことが出来ます。
やり込み中・・・
超可愛いのが出来た👍Amazonからリポバッテリーの到着待ち!
それで完成させられるよ🤤 https://t.co/baWaaTYih5 pic.twitter.com/6Qss4vGWNq— ガジェット大好き!! (@smartphone_jp1) June 8, 2025
データサイズが大きいので本ブログから直接ダウンロード設定が出来なかったのですが、上記のようなクラシックゲームをプレイしたい方は、本家サイトを参考に試してみて下さい!
朝から騒がしく遊んでる🎮(音デカ注意🙇♂️)
アーケード版パックマン…最初2インチのTFTで作る予定だったんだけど、ブレッドボードのテストで遊びにくいから2.4インチにしてモデリングし直したんだけど・・・
やっぱ最低これくらいのサイズは欲しいよね👌 https://t.co/2CdlqMFhBn pic.twitter.com/F12wOGcpKo— ガジェット大好き!! (@smartphone_jp1) June 9, 2025
また、Raspberry Pi Pico(またはPico2)を使いブレッドボード上でも動かすことが出来るので、試してみると面白いと思います。
朝遊び🎮
リポバッテリーからの駆動テスト。
300mAhのバッテリーで累積2時間ほど動かして2.8VくらいでRP2350が落ちた・・・
てかRP2350ってその電圧でも動くのね😏1000mAh程度のバッテリーを想定してるので駆動時間は十分だな😏 pic.twitter.com/Pu9g4B56J6
— ガジェット大好き!! (@smartphone_jp1) May 12, 2025
バッテリー電圧のキャリブレーション
PicoLibSDKでは、バッテリー下限電圧の設定や正確な電圧レベルを取得するためのダイオードドロップ電圧の設定を、[CONFIG]ライブラリで行えるようになっています。
リポバッテリーを使用する場合、3V以下のセル電圧になると過放電となるので、3.2Vに設定して使っています。
バッテリー電圧が3.2Vを下回ると、[USR]インジケータLEDが点灯します。
また本家PicopadではバッテリーからRaspberry Piボードへの供給は、ショットキーバリアダイオードを挟んで充電時に逆流を保護する構成で組まれています。
そのため[Diode drop]電圧はデフォルトで0.3Vが設定されていますが、本ボードではドロップ電圧は発生しない構成としているので、0mVに設定して使用します。
待機時のバッテリー電圧の低下
基本動作に関しては特に問題ないのですが・・・
前回の記事でも少し触れたのですが、待機中(電源OFFの状態)でのバッテリー電圧の低下が早いようです!
ブレッドボード上で主要部分の回路を組みテストした時は問題なかったのですが・・・、どこか漏れ電流のようなものが発生しているのかな?
考えられるのは、DW01とFS8205を使ったバッテリー保護回路部分、または3.3V LDO部分だと思いうのですが。
電源のON/OFFは3.3V LDOのENピンを使っています。
MOSFETで5V(USBケーブル接続時)を優先し、通常時ではバッテリーから駆動するようにしています。
電源ON状態では、LDOのENピンを100kΩ抵抗でプルアップさせて、OFFにする際はGNDレベルに落としています。
電源OFF時、バッテリーからこの100kΩ抵抗を通りGNDに流れますが、計算上40μA程度なので実質的に問題はないかな?
以前同様な接続で製作したものでは、半年以上バッテリー電圧の低下は問題ないレベルでした。
だとするとバッテリー保護回路部分だと思うのですが、これも以前同様な回路を組みテストしたこともあるので・・・
この待機中のバッテリー電圧の低下が、想定より大きい部分がまだ未解決です!
・・・と本記事を書きながら、バッテリー直でスピーカーを鳴らしているので、電源OFF時にトランジスタのコレクタ – エミッタ間の漏れなのかなと思ったり・・・?
使用パーツ一覧
今回使用したパーツの一覧です。
| パーツ | 定数 | 入手先 |
| コンデンサ (0603) | C1/C2 15pF C3/C4/C5/C7/C20/C24 4.7μF C6/C8/C9/C10/C11/C12/C13/C14/C15/C16/C19/C21/C23/C25 100nF C17/C18 1μF C22/C26/C27 10μF | AliExpress |
| ダイオード (SOD-123) | D1/D2 1N5819W | AliExpress |
| ヒューズ (1206) | F1 500mA | AliExpress |
| 端子 | J1 Type-C端子(16P) | AliExpress / 秋月電子 |
| J2 ピンソケット L型(2×6) | 秋月電子 | |
| SDカードスロット | J3 MicroUSB(9P) | AliExpress |
| TFTディスプレイ | J4 GMT024-08-SPI8P ※2.4inch(240×320) ST7789V SPI(8P) | AliExpress |
| バッテリー端子 | J5 JST-PH2.0(2P) | AliExpress |
| インダクタ (0806) | L1 3.3μH | AliExpress |
| LED(0603) | LED1/LED2/LED3/LED4 | AliExpress |
| MOSFET | Q1 CJ2301 S1 | AliExpress |
| Q2 IRLML6344TRPBF | AliExpress | |
| トランジスタ (SOT-23) | Q3 S8050 J3Y | AliExpress |
| 抵抗 (0603) | R1/R2 5.1kΩ R3/R4 27Ω R5/R8/R9/R18/R19/R20/R27/R29/R30 1kΩ R6 33Ω R7/R11/R22/R23/R24/R25 10kΩ R10 5.6kΩ R12/R13/R14/R15/R16/R21/R28 100kΩ R17 2kΩ R26 200Ω | AliExpress |
| スイッチ | SW1/SW2 3×4×2.5mm(4P SMD) | AliExpress |
| SW11 SS12D06 | AliExpress | |
| MCU | U1 RP2350A(QFN-60) | AliExpress / 秋月電子 |
| フラッシュ | U2 U3 W25Q128JVPIQ | AliExpress |
| LDO | U3 ME6211C33 | AliExpress |
| 充電IC | U4 MCP73831(SOT23-5) | AliExpress / 秋月電子 |
| デュアルMOSFET | U5 FS8205A(SOT23-6) | AliExpress |
| バッテリー保護IC | U6 DW01A(SOT23-6) | AliExpress |
| クリスタル (3225) | Y1 12MHz | AliExpress / 秋月電子 |
| スピーカー | SP1 スピーカー ※直径16mm程度 | Amazon / 秋月電子 |
| その他 | インサートナットM2×4mm(OD3.2mm) ×4 | AliExpress |
| M2×10mmビス ×4 | ーーー | |
| リポバッテリー ※1000mAh程度 | Amazon | |
| SFC用 スイッチ & ラバー | AliExpress |
最後に!
以上、自作ミニゲーム機『PicoPlay2350』の基板実装から完成までの流れをご紹介しました。
構想から基板やケースの設計、そして最終的な組み立てまで全てを自分の手で進めることでひとつのプロダクトを形にする楽しさと達成感を感じられた、今回もとても楽しいプロジェクトになりました。
特に今回は、PCBWayの3Dプリントサービスを利用して製造したカラー透明ケースの仕上がりが非常に良く、これまでイメージしていても自宅の3Dプリンタでは造形が難しく製作に踏み切れなかったようなものでも、しっかりと形に出来るということが分かったので、今後製作するものにも大いに活かせそうです!
電源OFF時のバッテリー電圧低下の問題については今後もう少し検証を重ねる必要がありますが、それも含めて自作ならではの試行錯誤の楽しさだと感じています。
またPicopadはオープンソースで公開されているプロジェクトとなっており、今回のように基板を自作しなくても手元にあるパーツで手軽に始めることが出来る点も大きな魅力です。
興味ある方は、まずはブレッドボードで試してみるだけでも面白さを十分に体感でき楽しいと思います。
朝遊び🤤
ファミコンコントローラー(改造)のキーマップ変更のためファームを書き換えて・・・コントローラーでも遊べるようになった👌 https://t.co/SGGB9tdNrA pic.twitter.com/wlA9W38D4r
— ガジェット大好き!! (@smartphone_jp1) April 19, 2025
ここまでお読みいただき、ありがとうございました!












































コメントを残す