スーパーちっちゃいSFCコントローラー基板を作ってみました。
自作SFCコントローラーとかアケコンとか、あとArduinoやラズパイにつないで遊んだり電子工作したりするためとか。
サイズは約2cm x 5cm。
私調べによると世界最小です。
この記事はサターンパッドUSB化基板の製作日記のようなものです。
完成品の紹介ページはこっちです。
geekyfab.com
作るよ編
SFCコントローラーはどう動いてるの?
SFCコントローラの回路って次の写真のように、ICが一つのタイプと二つのタイプがあります。
どちらの回路もただの16bitのParralel-in Serial-out(PISO)のシフトレジスタとして動作するようです。
ICが二つ乗ってるほうは、8bitのシフトレジスタをつなげて16bitにしてる感じですね。
ただ、回路のどこにも抵抗が実装されていないところを見ると、普通のシフトレジスタとは違って、内部でプルアップしてるっぽいです。
Mouserとかで探した感じだと、そのようなシフトレジスタは見つからなかったので、結構特殊なICのようです。
低コスト化の気迫を感じる。
SFCコントローラーの回路を描いてみます
ということで、実物とネットで調べた情報をもとに作れる回路を描くと、こんな感じになりました。
8bitのシフトレジスタを二個接続して、各ラインにプルアップ抵抗をつけただけの簡単な回路です。
各ボタン端子とGND端子をショートさせると各ボタンが押される感じですねー
参考URL
SFCのコントローラを調べてみる(の続き) | 懐古主義者の暇つぶし
Arcade style controller for Snes, NES and PC
DIY Super Nintendo Breadboard Controller
基板を描いてみます
基板の形状ですが、小型なのはもちろん、ブレッドボードにさして遊べるようにArduino Microと同形状にしました。
できた基板図はこんな感じ。
裏面がまるまる空いたので、ロゴとメッセージを入れときました。
基板を製造してみます
基板のガーバーデータをメーカーに出図して基板を製造してもらいます。
今回はJLCPCBに依頼しました。
ここらへんのオーダーの仕方はググったら無限に出てくるので割愛します。
今回は特殊な設定もしてませんし。
部品実装もお願いしてみます
JLCPCBでは部品実装サービスもやってるので、今回はお願いしてみることにしました。
ここらへんの(以下略
一点、困ったことにKicadの実装用ファイルをそのままアップロードしただけだと実装位置めっちゃずれてたんですよね。
↓は違う基板だけど、こんな感じ。
JLCPCBAで実装位置めっちゃずれてるのなんでなの…
— たくさん ⊆ GEEKY Fab. (@takusanToIssho) August 26, 2022
KiCAD6のせい? pic.twitter.com/nhbI5ARCLi
ファイルを直接いじっていい感じに修正したんですが、結局JLCPCBでの最終チェック時に「ずれてるから直したよ」的なメッセージが来たんで別に修正する必要なかった気がします。
よくわからん。
できたよ編
基板がやってきました
で、待ってたら基板がやってきました。
めっちゃちっちゃいです。
だいたい2cm x 5cmですからねー。
これは組み込みやすそう。
動かしてみます
では早速動かしてみます。
まずはケーブルをはんだ付けします。
そこらへんに転がってるSFCコントローラー基板からケーブルをチョッキンして、ワイヤーストリッパーで被覆を剥いであげます。
ワイヤーストリッパーがなければニッパーでも剥げますし、100均でも売ってた気がします。
ちなみに私が使ってるワイヤーストリッパーはエンジニア製のこれ。
エンジニア製の工具が好きなので。
はんだ付けしたのがこんな感じ。
ケーブルは1pin(GNDピン側)から茶、赤、オレンジ、黄色、白の順ではんだ付けです。
もとの並びと同じですね。
一緒にピンヘッダーもはんだ付けしてます。
ピンヘッダーは2.54mmピッチのよくあるやつがささるようにしてます。
どこでも売ってると思いますけど、うちではAliexpressで大量に買ってます。
多分これかな。
こんなんなんぼあってもいいですからね。
では早速動かしてみましょう。
ジャンパーケーブル使って簡単に動かしてる様子がこれです。
GND端子と各ボタン端子をショートさせることでちゃんとマリオが動いてますねー
動いたときはかなり感動しました
めっちゃはしゃぎながらやってました
ブレッドボード上でコントローラーを作ってみます
ブレッドボードにさせるようにしたので、ブレッドボード上で簡単に遊べるようになってます。
一部ボタンだけつないだだけですけど、こんな感じです。
一気にコントローラーぽさが出てきましたね
サターンパッドに組み込んでみます
もうここまででかなり満足しましたが、せっかくなんでサターンパッドに組み込んで、サターンパッドをSFCパッド化してみることにします。
なぜか我が家にいっぱいありますからね、サターンパッド。
作り方は簡単!
サターンパッドの中の基板を取り出してSFCコントローラー基板を貼り付け、
ワイヤーをはんだ付けし、
元通り組みなおして完成!
ちゃんと動きました!
いいですねー
この時のケーブルはAliexpressで買ったこのケーブル使ってます。
各内部ケーブルの色が純正のものと違い、どの色がどの信号か分からんかったのでテスターで調べました。
参考までですが、私が購入したものは茶=GND、赤=DATA、黄色=P/S、青=CLK、緑=5Vになってました。
最後に
今回はちっちゃいSFCコントローラー基板を作りました。
形はArduino Microと同じで、約2cm x 5cmです。
ちっちゃいですねー
それにしても、スーファミのコントローラー基板って意外と簡単に作れるもんなんですね
マリオが動いたときは本当に感動しました
準備ができたら配布もやっていこうと思うので、みなさんよろしければどうぞです。
自作コントローラーやアケコンにはもちろんですが、子どもの電子工作入門とかにもいいんじゃないかなーって気がしてます。
自分が作ったコントローラーでキャラが動くって最高ですし。
親子でSFCコントローラーを作ろうってワークショップとかどっかでやりたいですねー。
今回はこれで終わります。