なるほどえたきちのブログじゃねーの

チラ裏雑記帳

ポケモン過去作の解析とか乱数調整とかそこら辺。不定期更新。

【カスタムGBA】電子工作初心者がGBAを組んでみた話【名取さなEdition】

はじめに

強いGBA、欲しいですよね。
マイコン内蔵のGBAは過去に組んだのですが、ボタンの押し感が悪かったり加工が雑だったりとお世辞にもクオリティの高いモノとは言えませんでした。
機能面だけ見たらこれに相当するものは中々無いはずですが個人的にはまあ微妙でした。


マイコンなんかよりマジコンの方が普段から使いまくるのでそっちを内蔵してしまう方がいいのでは?と考えた訳です。
しかし、どう考えても配線がヤバいことになる気しかしないので二の足を踏んでいました。
電子工作は全くの専門外なので中々手こずりそうです。

後はカラーリングが全く思い付かなかったのもあります。
というかそっちの方が圧倒的に大きいです。

何だかんだカラーの候補が絞れてきて、グレー統一にするかかクリア統一にするかで迷っていた所、机の上にあるフィギュアが目に留まりました。
f:id:BZL:20210803003943j:plain
………これや!
そんな訳で名取さなEditionなるGBAを組むこととなりました。(なんで?)
機能としては先に紹介したGBAのものに加えてEzFlashΩを内蔵する感じになります。
また、FunnyPlaying(IPS液晶出してるメーカー)が新しい液晶キットの取り扱いを始めたのでそちらの検証も兼ねてます。
制作過程の写真は殆どないので悪しからず。
普通に組み込んだパーツ類は個別紹介しておきます。

液晶

f:id:BZL:20210803004011j:plain
FunnyPlayingの『ITA NEW AGB TFT BACKLIGHT KIT』を使用しました。
DSiの下画面をGBAに移植するキットみたいです。
私が買った時はセールか何かで2500円くらいで買えちゃいました。
おまけに送料無料です。

国内で買ってる人あまり見ないので簡易レビュー的なものも書いておきます。

液晶の質について

発色はIPSキットと比較してもかなり綺麗でした。
スケーリング無しで表示されるので映り方はDSLiteとかAGS101みたいな感じです。
また、画面サイズもAGS101と同じなのでIPS用のガラスレンズは合わないです。
映り方も画面サイズも全然違うのでIPSキットの進化系ではなく新たな選択肢として見るのが適切ですね。
人によってはIPSキットの方がいいやと感じるかもしれません。
個人的にはITAキットの方が好みです。

DSiの下画面液晶が使えるということで、使える液晶の種類は思ったより多いです。(互換品にも色々種類があるらしい)
ただ、モノによっては相性問題で上手く映らなかったりするみたいです。
綺麗な状態の純正液晶が手元にあったので接続してみましたが、発色は付属の互換液晶の方が普通に綺麗です。
その為、液晶が基板に貼り付けられて送られてきたら基本弄らない方がいいです。
因みに私は基板に貼り付いた液晶剥がそうとしてフレキ基板にキズ入れました。

消費電力

公式サイトでは消費電力0.15Wとか書いてありますが実際の所そんなに低くないです。
IPSよりちょっと低いくらいなので省電力化を目的に組み込むことは推奨しません。
液晶変えてもほぼ変わらなかったので恐らくは基板側で電力食ってそうな気がします。

2021/08/22 追記
追加でITAキットを購入した所、基板に変更が加えられていました。
回路自体の変更に加え、輝度調節用のパッドに印字されている文字が若干見やすくなっていたりします。
また、消費電力がIPSキットの半分程度にまで下がっていました。

輝度調節

1chip液晶モジュールでお馴染み(?)のタッチ式輝度調節が使われてます。
個人的には好きじゃないので無効化しました。
画像の緑丸で囲った部分をGBA側のGNDと繋げればOKです。
f:id:BZL:20210802211251p:plain
一応IPSキットと同じ方式での輝度調節も可能です。

他Modとの相性とか

クロックアップとの相性は良くないです。
画面がかなり荒ぶるので推奨はしません。
手持ちの互換品/純正品全て試しましたが同じような挙動になりました。
f:id:BZL:20210803021654j:plain
また、全体的にデカいので今回のような機能盛りGBAには向きません。
サイズ的にはIPSキットが何だかんだ一番扱いやすいのかな...と思います。

シェル

こちらもFunnyPlayingのものを使用しました。
前面はライトピンク、背面はベージュを使っています。

IPS液晶は無加工で入りますが、ITAキットの場合はそこそこの範囲をカットする必要があります。
ITA対応の金型が出来ているらしいのでこの作業はその内不要になりそうです。
f:id:BZL:20210803004204j:plain

RetroSixシェルにITAキットを導入する場合は画像の赤枠部分をカットします。
ちゃんと検証してる訳ではないので位置が合うかどうかは知りません。
f:id:BZL:20210803205646j:plain

ボタン

今回は白とピンクの組み合わせにしました。
色がそれっぽければ何でも良かったので昔買った中華ボタンを適当に使いました。

ラバー

昔RetroModdingで組んで貰ったGBAのボタンの感度が良かったのでこっちはまあまあ拘りました。
Start/SelectはRetroModding、AB/十字はCloudGameStoreのものを使っています。
AB/十字に関しては純正品もかなり良いです。
残念ながら私の手元にある純正ラバーは全部劣化してました。

ラバーを取り付ける前に裏面の接点部分を洗浄すると若干感度が良くなります。
リレークリーナーを吹き付けてから綿棒で適当に擦る感じです。
新品であっても結構汚れ(?)が付着しているみたいです。
f:id:BZL:20210803004232j:plain

サウンドモジュール

アンプ

RetroModdingで購入したものを使用しました。
注意点として、公式サイトで紹介されている配線方法では電源ラインの取り方に問題があります。
公式サイトの通りに導入した場合、電池の電圧降下によりアンプの最低駆動電圧を満たさなくなってしまうケースが発生します。
その為、電池残量が少なくなると音声にノイズが乗ったり音が出なくなったりします。
今回は以下の画像の通りに配線しました。
f:id:BZL:20210802220405p:plain

スピーカー

丁度東京の方に用事があったので秋葉原に寄るついでに23mmスピーカーを買ってみました。
付属スピーカーより高域の発音が若干綺麗に聞こえます。
また、サランネットが付いていたりと質感も結構良い感じでした。
f:id:BZL:20210803004310j:plain
f:id:BZL:20210803004317j:plain

組み立て

地獄の作業の始まりです。

仕様策定

まずはどんな仕様のGBAにするか予め決めておきます。
今回組むものは以下の通りとします。

  1. ITA液晶キット実装
  2. 輝度調節は外付けしたボタンで行うようにする
  3. 電源ランプのカラー変更
  4. サウンドモジュール実装
  5. ワイヤレスアダプタを内蔵、外部スイッチでON/OFFの切り替え
  6. クロックアップ実装、外部スイッチで等速/倍速の切り替え
  7. 外部接続端子は1ポートのUSB TypeC
  8. MicroSDカードスロットをUSB端子の隣に配置
  9. 充電式バッテリーを使用、充電はUSBで行う
  10. マイコン(ProMicro)を内蔵、PC経由での操作を可能とする
  11. SDカードを挿した上でUSB接続することによりSDカードリーダーとしても機能する
  12. カートリッジが何も挿入されていない時に内蔵EzFlashが起動するようにする
  13. 内蔵EzFlashはMicroSDカードスロットに繋げる
  14. 干渉防止の為、GBA起動時はSDカードリーダーの機能を停止する


………本当に組めるのこれ?

シェル加工

どう考えても普通に閉まる配線ができる訳ないので先に中をスカスカにしておきます。
電池Boxなんかは跡形も残さず切り落とします。
f:id:BZL:20210803004609j:plain

また、お馴染みUSB-Cポートの穴開けに加えてSDカードスロットの穴も開けておきます。
f:id:BZL:20210803004617j:plain

クロックアップ/ワイヤレスアダプタ用のスイッチも取り付けます。
f:id:BZL:20210803004624j:plain

取り敢えず大掛かりな所は以上となります。
後は配線が干渉した時にチマチマニッパーで切り落とせばいいと思います。

ボタン加工

ボタン加工ってなんだよって思われるかもしれませんがそのまんまの意味です。
輝度調節ボタンを外付けする為、バンパーに穴を開けます。
今回はゲームボーイミクロに合わせて右側のバンパーを加工しました。
f:id:BZL:20210803004633j:plain
既に色々付いちゃってますがこんな感じです。
因みに追加したボタンと基板は白のDSiから移植したものです。
音量調節ボタンがかなり丁度良さそうだったので使ってみたら結構ピッタリでした。

f:id:BZL:20210803004640j:plain
裏面はこんな感じで残してあります。
全部くり抜いてしまうと基板を押さえるものが無くなってしまうので逆に面倒な感じになります。
どちらにせよ結構大変なのでもうやりたくないですね...

電源ランプ変更

f:id:BZL:20210803004650j:plain
緑ランプを白に変更してみました。
ただ変えるだけだと光量が強すぎて目が痛くなりそうなのでLEDに挟む抵抗値を変更します。

f:id:BZL:20210803004708p:plain
画像で示したR10の抵抗を変更します。
白のLEDだと20KΩくらいが丁度良かった気がします。

ワイヤレスアダプタ内蔵

お馴染みのやつですね。
gaito0826.hatenablog.com
がいと氏の記事に大体書いてあるのでそちらを参考にどうぞ。

可変クロックアップ

これもお馴染みのやつです。

f:id:BZL:20210803004736j:plain
元々あったパッドを流用し、パターンカットを利用して基板上に実装する形にしてみました。
水晶の隣にICが置いてあるタイプの基板では難しいやり方かもしれません...

マイコン内蔵

これは多分お馴染みじゃないやつですね。
今回はトランジスタアレイを使用し、マイコンの出力信号に合わせてTP-GND間を導通させるようにしました。
これにより、PCからGBAを操作できるようになります。
自動操作以外にも色々できることがあると思うのでそこら辺は自分で色々試してみてください。
フルカラーLEDの制御とか結構面白いと思いますよ。

輝度調節ボタン

今回使用した液晶モジュールはITAキットですが、こちらもIPSキットと同様にSEL/L/Rポイントの3つが存在します。
この3つの内、SELポイントをGNDに直結し、L/Rポイントを先程加工したバンパーへ接続します。
液晶モジュール側では常にSELECTが押されている扱いとなる為、残るL/R入力信号が入ってきた時点で輝度が変更されます。
ボタンのどこにハンダ付けするかは使用するボタンによって変わるので色々試してみてください。

USB機器周りの配線準備

使ったもの
USB-Cコネクタ
MicroSDカードスロット
マイコン(ProMicro)
TP4056モジュール
1300mAhバッテリー:
1000mAhバッテリー(今回は未使用)
SDカードリーダー
USBハブ
EzFlashΩ
マイクロスイッチ

SDカードリーダーとUSBハブはダイソーに小型のものがあるらしいです。
私は見つけられなかったのでAmazonでそれっぽいのものを買いました...
カードリーダーとUSBハブは当然既製品なのでまず分解します。
f:id:BZL:20210803004751j:plain
f:id:BZL:20210803004757j:plain
SDカードリーダーは期待通りのサイズでした。
分解は容易で、基板も薄くて非常に扱いやすそうです。

f:id:BZL:20210803004805j:plain
f:id:BZL:20210803004811j:plain
USBハブの方の分解はかなり大変でした。
基板がグルーで完全にコーティングされていたのでまずはそれを全て剥がす必要があります。
ハンダごてを当てて無理矢理溶かしたので部屋が身体に悪そうな臭いで充満しました。
また、2分岐の割に基板がまあまあ大きいのであまり嬉しくないです。
そもそもこの基板自体4分岐用に見えます。
コンデンサ追加すれば更にポート拡張できそう?
どちらにせよ同じようなことがやりたい方はもう少し小さい2分岐ハブ探した方がいいかもしれません。

USB機器の接続

f:id:BZL:20210803004822j:plain
f:id:BZL:20210803004828j:plain
f:id:BZL:20210803222158j:plain
完全にすっ飛ばしました。
反省はしていません。
途中経過の画像なので未配線だったり上手く動いてない箇所が結構あります。
参考にはしないでください。

f:id:BZL:20210803004836p:plain
超雑ですが配線図はこんなんです。
コレ見て何をどこに繋げるのか微塵も分からないって人は多分真似しない方がいいと思います。
GBAマイコン間の接続はやりたいことに合わせて各自適当に変えてみてください。
マイコンいらないよって人はそもそもUSBハブもいらないのでカードリーダーに直結してしまって問題ないです。
注意点として、SDカードへの電源ラインを普通に繋げると上手く動かないので別の所から適当に引っ張ってきてください。
EzFlashへの電源ラインを通すマイクロスイッチはカートリッジが挿入された時にONになるように配置します。
これがちゃんと閉まれば本体側は完成となります。


動かすとこんな感じです。

f:id:BZL:20210803004848j:plain
f:id:BZL:20210803004854j:plain
SDカードリーダーもしっかり機能しています。

外観を整える

中身が完成したので後はガワを整えていきます。
公式素材使えばそこまで手間は掛からんやろ...と思ってましたが公式ガイドラインに以下の記述が。

・当方に帰属する素材(動画や写真、イラスト、音声等)を引用の範囲を超えて利用することを禁止します。

・「名取さなの公式写真や公式イラストを○○に使いたいので許可をください。」
公式のものと誤解される可能性がある為お断りしています。
素材はご自身で用意してください。

規約についてのお問い合わせについては基本的にお答えしかねます。
確認しないとわからないものはだめだと思ってください

………まあ多分使っちゃダメなんだろうなと思います。
久々のお絵描き作業が確定しました。

レンズ

早速デザインを決めます。
f:id:BZL:20210803011002p:plain

作りました。
これを適当に印刷してガラスレンズに貼り付けます。
接着にはゴリラグルークリアを使いました。
一回貼り付いたらデザインナイフで力一杯削らないと取れません。
Retro○ixのUVレンズより強度高くなる気がします。

f:id:BZL:20210803010352j:plain
画像はロゴがズレた失敗作ですが割と綺麗に作れます。
かなり大変ですが...

ぶっちゃけBluish Squirrel辺りに頼む方がいいです。

ステッカー

こっちは普通にイラスト使いたいのでお絵描きします。


普段絵描かない割にはそこそこちゃんと描けた気がします。
これを上手いこと使ってステッカーもデザインします。
f:id:BZL:20210803011405p:plain
できました。
これを適当に印刷してカッティングマシンでそれっぽい形にカットします。

f:id:BZL:20210803011637j:plain
貼りました。(印刷したシートの写真は撮ってませんでした)

こっちもレンズと同様Bluish Squirrelでオーダー可能ですが、プリントが剥がれ落ちるという話も聞くので安定択かどうかは分かりません。
カッティングマシンと良いプリンターを持ってる方は多分自作する方がいいですね。

おわりに


f:id:BZL:20210803012419j:plain
f:id:BZL:20210803012529j:plain
f:id:BZL:20210803012734j:plain
というわけで完成です!
恐らく初めて真面目に組もうと思って組んだGBAですが、中々良い感じの出来になったのではないでしょうか。(自画自賛)
少なくともEzFlash内蔵は他にやっている人を見たことがないので、機能面に関しては十分な水準かと思います。
何だかんだでまともに使えるGBAは昔RetroModdingで組んで貰った個体だけだったりするので実質2台目ですね。

かなり大変だったのでもう二度と組みたくないです。
基板上に生やした配線の数は約100本、ハンダ付けポイントは約220箇所となります。

馬鹿じゃねぇの(嘲笑)
f:id:BZL:20210803013532j:plain