Arduboyクローンで作る自作携帯ゲーム機 – PCB設計から実装まで
必要な部品と材料
| 部品 | 数量 | 備考 |
|---|---|---|
| Arduino Pro Micro (5V, 16MHz) / Arduino Micro | 1 | ATmega32U4搭載、USB HID対応 |
| OLEDディスプレイ 128×64 (SSD1306, SPI接続) | 1 | Arduboy互換 |
| タクトスイッチ (6mm) | 6 | 十字キー4 + A/Bボタン2 |
| ピエゾスピーカー (パッシブ) | 1 | 効果音/BGM用 |
| 共通アノードRGB LED | 1 | ステータス表示用 |
| LiPoバッテリー (3.7V, 380mAh推奨) | 1 | 携帯用電源 |
| MT3608 昇圧モジュール / 自作ブースト回路 | 1 | 3.7V→5V昇圧 |
| TP4056 充電モジュール | 1 | LiPo充電用 (保護回路付き推奨) |
| スライドスイッチ (電源ON/OFF) | 1 | |
| カスタムPCB (EasyEDA設計、JLCPCB製造) | 1 | Gerberファイル提供 |
| 3Dプリントケース (任意) | 1 | STLファイル自作/流用 |
プロジェクト概要
オープンソース携帯ゲーム機「Arduboy」のクローンを、ブレッドボード試作から自作PCB設計・製造・実装まで一気通貫で制作するチュートリアルです。ArduboyはATmega32U4ベースの8ビットゲームプラットフォームで、コミュニティ製ゲームが多数公開されています。MrBlinky氏の「Homemade Arduboy Package」を活用し、Arduino IDEから直接ゲームを書き込み可能。

ステップ1: ブレッドボードで動作確認
ピン配置 (Homemade Package標準)
| 機能 | Arduinoピン |
|---|---|
| 上 (UP) | A0 |
| 下 (DOWN) | A3 |
| 右 (RIGHT) | A1 |
| 左 (LEFT) | A2 |
| Aボタン | D7 |
| Bボタン | D8 |
| OLED SCL | D15 (SCK) |
| OLED SDA | D16 (MOSI) |
| OLED DC | D4 |
| OLED RES | D2 |
| スピーカー + | D5 |
| スピーカー - | D6 |
| RGB LED 赤 | D10 |
| RGB LED 緑 | D3 |
| RGB LED 青 | D9 |
全接続完了後、Arduino IDEでボードマネージャーに以下のURLを追加し、「Arduboy Homemade」パッケージをインストール:
https://github.com/MrBlinky/Arduboy-homemade-package/releases/download/current/package_mrblinky_arduboy_index.json
ツール設定
- ボード: Homemade Arduboy
- ブートローダー: Cathy3K
- ベース: SparkFun Pro Micro 5V - Alternate Wiring
- コア: Arduboy optimized core
- ディスプレイ: SSD1306
お好みのゲーム .ino (例: ArduboyGamesリポジトリ から) を開いてアップロード。動作確認できたら次へ。
ステップ2: EasyEDAでPCB設計


設計のポイント
- 回路図を清潔に: 全ネットにラベル付け、後でデバッグしやすく
- フットプリント確認: 実部品とパッケージが一致するか必ず確認 (特にPro Microピンヘッダー間隔、OLEDピン配列)
- ボードアウトライン: 携帯サイズ (約 90×55mm 程度) に収まるよう配置
- ラッツネスト( Ratsnest )活用: 配線前の論理接続線を見て部品配置を最適化
- トレース幅: 信号 0.254mm (10mil)、電源 0.6mm (24mil) 以上
- ビアで層跨ぎ: 配線詰まり時は V キーでビア挿入、反対層で継続
- グランドプレーン: Copper Area ツールで GND ネット選択、基板外周に引いて自動接続
- DRCチェック: 設計ルールチェックでショート/未接続を確実に検出
- Gerber出力: 「Generate Fabrication File」で製造用データ生成
電源回路の工夫
LiPo 3.7V → MT3608で 5V 昇圧。自作ブースト回路もパターン用意したが、実装は市販MT3608モジュールを採用 (自作版は負荷接続で電圧降下問題あり。データシート推奨レイアウト/トレース幅厳守が必要で、初心者にはハードル高し)。TP4056でUSB充電対応。
ステップ3: PCB実装


- JLCPCBで基板発注、LCSCで部品調達 (同梱発送で送料節約)
- SMD部品はフラックス多めではんだ付け (初回でも綺麗に仕上がる)
- IPA (イソプロピルアルコール) でフラックス洗浄
- LiPo 380mAhで約3-4時間駆動 (消費電流 50-100mA)
ステップ4: ゲームを楽しむ!
LiPo接続、お気に入りのゲームをアップロード、遊ぶだけ。レトロゲームの感覚を手のひらに。
リソース
- Homemade Arduboy Package: GitHub
- ゲームライブラリ: ArduboyGames
- 本プロジェクトのGerberファイル:
arduboy_clone_gerber.zip(チュートリアル添付)
筆者からのメッセージ
PCB設計は最初は戸惑うが、一度流れを掴めば強力なスキルになる。このプロジェクトは「ゲーム機を作る」という明確なゴールがあり、モチベーション維持に最適。皆さんもぜひ挑戦して、自分だけのArduboyを作ってみてください!
製造プロセス
- Arduino Nano RP2040で作るDIY Photoshopコントロールコンソール
- TeleBall: 自作レトロ携帯ゲーム機 – Arduinoでブロック崩し&テニス
- Bluetooth操作のArduinoスパイボットを自作する
- FlickMote:ジェスチャー操作のIRリモコンでスマートホームを制御
- 自作Arduino TV-B-Gone:全テレビ対応の万能リモコン
- 12メートル先から見える大型LEDマスタークロック(アラーム機能付き)を自作しよう
- Arduino UNOで作るLCDアニメーション&ゲーム入門
- ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
- Arduinoで作る自作デジタルペット「Tamaguino」─ 3Dプリンター製ケース付き完全ガイド
- Arduinoプロジェクトのための最適化電源ソリューション
- Arduino三目並べ:MAX7219 LEDマトリクスと段ボールケースで自作