色々と手こずってしまい、cartreaderがようやく完成しました。1つ目は何か所も失敗してしまったので、追加でパーツを発注していました(ついでにヒートガンや耐熱マットを購入)。こういうことがあるので、余裕をもって予備パーツを買っておくのを強くオススメします。
前回はこちら↓
過去回はこちらからどうぞ。
やり方を調べる
まずは公式WikiにあるHow to Build The PCBを読みましょう。原典を当たるのは重要です。読んだら作っていきます。
まずはArduino Megaに元々付いているAMS1117などを取り除きます。まだ画像の時点ではヒートガン(ホットエアーガン)を買っておらず、パターンを剥がしてしまった場所があるのですが、ヒートガンを使えば比較的簡単に取ることができます。


取ったところです。

次に、AMS1117代わりのLD1117、チップタンタルコンデンサ、220Ωの抵抗×3をハンダ付けします。チップタンタルコンデンサは極性があります。
ちなみにこういったハンダ付けでは、基本的に小さいパーツから順にハンダ付けしていきます。

前回フラッシュしたsnesCIC用のPIC12F635、100nF(0.1μF)コンデンサをハンダ付けします。

GBAスロットをハンダ付けします。

ピンヘッダを付けたところです。

クロックジェネレータ用のピンソケットです。

ここが1番難しかったのですが、ディスプレイモジュールにはじめから付いている、逆向きのピンヘッダを取るのが大変でした。熱容量の大きいハンダのようで、なかなか取れず…(何個もパターン剥がしてしまった)
AliExpressなどでもピンヘッダが付いたものばかり売っているのですが、極力ピンヘッダの付いていないものを購入したほうが良いです。これは本当に大変なので、マジでよっぽど自信のある方以外ははじめから付いていないものにするべきです。

付けるとこんな感じになります。

microSDカードスロットはピンヘッダが90°曲がっていたので、ペンチで真っ直ぐにひん曲げました。これは曲げた後の画像です。

microSDカードスロットと、ディスプレイモジュールを付けるとこのようになります。完成以降の画像以外は1回目に作った失敗した個体での画像なので、ここからこれらの間にRGBLEDを付けるのは難しいです。この順番で付けてはいけません。
microSD用のピンソケットより先にRGBLEDを付けたほうがやりやすいと思います。RGBLEDの反対側に出っ張った余りは、ペンチなどで切っておきましょう。ここにはN64スロットを付けるので、出っ張っていると干渉してしまいます。


RGBLED,OLEDディスプレイ,microSDカードモジュールを付けるとこのようになります。結構無理矢理感がありますが、3Dプリントで作れる部品があれば、また変わるのでしょうか…


各カートリッジスロットをハンダ付けしたところです。メガドライブのスロットは左右に出っ張っていて干渉する場所があるので、大きいペンチで切ったあとハンダゴテで溶かしました(強引)。
ヤニがちょっと汚いですね…


あとは電源の線がつながる場所に47μFの電解コンデンサを付けます。極性があるので注意です。
電源の線は5Vだしジャンパ線でもいいか!wとジャンパ線にしました。動いてるのでまぁ大丈夫だと思います(適当)。

完成したものがこちらです。これは3台目ですね。2台目と3台目が本当の意味で完成しました。1台目は失敗のし過ぎでダメにしてしまったので…
製作時に注意すること
私が作っているときにハマった罠を書いておきます。
・各ハードで電圧やクロックのスイッチが違うので、動作確認の際は全部正しい位置にあるか確認する
・人は正しいと思いこんでしまいがち。OLEDディスプレイなどは機種(ピン配置)によってショートさせるヘッダが異なるので、毎回確認する。
・熱の加え過ぎは厳禁。取り外しなどの際には気をつける
これくらいでしょうか。特に確認は重要です。間違いは無かったと思ってしまうとハマるので、しっかり確かめるようにしましょう。
ソフト的な準備――SDカード、ファームウェアなど
ここからはそれほど難しくありません。GitHubから最新Ver.のパッケージ({バージョン名}_Portable.zip)をダウンロードしてきて解凍します。
標準のアロケーションサイズ、exFATでフォーマットしたSDカード(今回はmicroSD)に、cartreaderのリポジトリのSDフォルダの中身をSDカードのroot(一番上)にコピーします(これは先程ダウンロードしたものの中にもあります)。V6.4以降はFAT32からexFATに変更されています。
コピーできたらcartreaderのSDカードスロットに差し込みます。
CH340Gを使った互換ボードを使っている方は、このタイミングでPCにドライバを導入しましょう。”V6.6_Portable\V6.6_Portable\CH341 Drivers\SETUP.EXE”にあるexeファイルを起動し、指示通りに進めていけばOKです。
{バージョン名}_Portable.zipにArduino IDEのポータブル版(Arduino.exe)が入っているので起動します。
電源スイッチをONにして、USB Type-BケーブルでPCに接続するとCOMポートでArduino Mega 2560が認識されるので、そのポートを指定してArduino IDEから書き込めば準備は完了です。
電源を供給すると、OPENSOURCE CARTREADERと表示され吸い出すゲームハード名が出てくれば成功です。お疲れさまでした。
操作
操作は、左側のボタン1回押しでカーソルを一段下にし、2連押しで一段上に、右のボタンで決定です。
電源を切れば最初の画面に戻るのでそこは安心してください。特に深い階層は無いですが…
吸い出しに成功するとRGBLEDがあおく光ります。逆にChecksum Errorなどだと赤く光ります。エラーが出ていると、起動できなかったり、起動できてもBGMが無かったりします(BGM無いのにソフトが動いててびっくりしました)。
かかった費用

かなりめんどくさかったですが、価格も出してみました。全体でかかった価格や、部品の最小単位の値段、1台作るのに最低限必要な数の価格、送料込みで1台作るのに最低限必要な数の価格など、ほぼ網羅しています。
全体でかかった価格は約16751円、1台作るのに最低限必要な数の価格(送料抜き)は約3235円、送料込みで1台作るのに最低限必要な数の価格は約6635円です。結構送料が痛いですね。やはり、最初から余裕を持った数を一度に購入することをおすすめします。
まとめ:これでほぼ死角は無くなった!

これでNINTENDO 64,GB,GBA,SFCなどが吸い出せるようになったので、自己満足の部分も大きいですがかなり満足しました。肝心のケツワープはまだ試せていませんが、面白そうなソフトを見つけたときに買って遊べる、というのは嬉しいですね。
一応Famicon to SNESアダプタ基板も買っているのですが、FCスロットを買い忘れていてまだ届いておらず、それはまた後日、になります。
エミュの知識がかなり遅れていたなと思わされたのですが、RetroArchというエミュのフロントエンドソフトがかなり良くてびっくりしました。モダンな外観で、様々な有名エミュが一挙に集結していて、これ1つでいろんなハードが遊べてしまうのですから。
AndroidやiOSにもあり、これからのスタンダードになるだろうなと思います。進化していてすごいですね…
過去回はこちら。
