見出し画像

アケコンのボタンとスティックを電子工作利用してみる

自作ゲーム機の開発(電子工作)でコントローラ(ゲームパッド等)をどうやって調達すべきなのかが悩ましいという問題に直面しました。

ゲームパッドやキーボードなどの入力機器はUSBインタフェースのものが一般的(=調達が容易)というか、最近ではUSB以外のものを見つける方が難しいかもしれません。

そこで当初、市販されているUSBゲームパッドをお手軽に利用できるようにしようと思っていたのですが、USBには次のような問題があり利用を断念することにしました。

  • 想像以上に複雑(参考

  • オーバーヘッドが高い

  • 消費電力が気になる

USB以外のインタフェースとしてはI2CやUARTなどが考えられます。

ただし、I2Cのゲームパッドというのはあまり多くはありません。例えば、任天堂のファミコンミニのゲームパッドがI2Cですが、USBゲームパッドのように単品で入手することは難しいと思われます。

比較的お手軽に入手できるI2Cゲームパッドとしては、M5Stack Faces II のゲームパッドパネル(ゲームボーイ風パッド)あたりがあります。

ただし、物凄くボタンが固くて押し難いです。一般的なゲームパッドはボタンとスイッチの間にスプリングが入っているのですが、このゲームパッドはプラスチックのボタンが直接タクトスイッチを押し込むメカニカル構造で、これでは遊び難くて当然です。M5Stackはゲーム機ではなくIoT機器なので、ゲームを遊ぶことを想定した設計になっていないのかもしれません。

その他にはD-SUB9ピン(いわゆるアタリ規格)が比較的シンプルですが、既にEOLの製品ばかりで、現行では廃れたインタフェースなので模造品も少ない(ニーズが多くない)という事情もあり、安定的な調達は困難だと考えられます。

D-SUB9ピンのジョイスティックですがWikipediaに各ピンの仕様が記載されていました。上下左右、トリガ1(Aボタン)、GNDについては概ね各コントローラで共通のピンアサインのようですが、トリガ2(Bボタン)については機種によりピンの割当が異なっているようです。ある機種ではトリガ2なのに別機種ではVCC(電源)の割当になっているものもあるようで、同じD-SUB9ピンのコントローラでも正しい機種に接続しなければ故障などを起こすことがありそうで、トリガ2を使うにはキケンを伴いそうです。(ちなみに、SELECTやSTARTに相当するボタンが存在するコントローラの場合、上下同時押しや左右同時押しなどの物理的に同時押しが不可能な信号で判定する仕組みのようです)

2023.11.27追記

電子工作界隈では、既製品のゲームコントローラを改造する手法がよく見受けられますが、それはメーカーが想定した使い方ではないので、若干イリーガルな手法です。もちろん、自己責任で楽しむ分には問題無いと思われますが、私のように組み立て方法をシェアする方式のゲーム機の公式な手順として採用するのは望ましくありません。

良い解決策が見つからず煮詰まっていたある日、ハードオフで中古のアケコン(リアルアーケードPro V3-SA)を購入してスティックとボタンをセイミツ工業製のものに換装するカスタムを試みたのですが、アケコン用の部品は広く一般に流通していて調達難度が低いので「これを電子工作で使うのがベストではないか?」と思い立ちました。

そこで、本書でアケコンの部品(ボタンとスティック)の電子工作での利用方法を簡潔に纏めてみました。


アケコンのボタン

アケコンのボタンには2本のファストン端子が露出しています。

アケコンのボタン

ボタンを押すと端子1と端子2が内部的に結線され、離すと断線する仕組みになっているようです。

つまり、端子1を適当なGPIO、端子2を適当なGNDに繋ぎ、端子1のGPIOをpinMode = INPUT_PULLUPにしてdigitalReadすれば、ボタンを離している時はHIGH(1)、押している時はLOW(0)になるので、プログラムでのボタン押下の検出ができるようになります。

ボタンをRaspberryPi Picoへ接続した様子

アケコンのスティック

アケコン(RAP V3-SA)のスティックは以下のように5本のピンが露出していました。

アケコンのスティックのピン露出部分

これらのピンの役割を確認するため、スティックを分解してチェックしてみることにしました。(もちろん、分解しなくても基板露出部分だけ見れば機能を想像できますが、何でもとりあえず分解したくなります)

スティック裏面のシールドを剥がすと4個のスイッチがあり、各スイッチから2本の電線(被覆線)が出ていて基板へ接続されていることが分かります。

スティック裏面のシールドを外してみた様子

黒色の被覆線が恐らくGNDです。(工業製品では一般的に黒線をGNDに使う習慣があるらしいので)

改めて基板露出部分を見てみると、下図の一番左側の導線の途中にハンダがあるので、一番左側のピンが複数の電線を集約していることが分かります。つまり、一番左側のピンがGNDの筈です。

基板部分を拡大&補足追記

露出している5本のピンそれぞれの役割は、上下左右それぞれのスイッチのGPIO(4本)とGND(1本)だと考えられるので、ボタンと同じ要領でSoCのGPIO(4つ)とGND(1つ)に繋げば、スティックの入力をdigitalReadで拾うことができる筈です。

という訳で実際にジャンパーケーブルで接続してテストしてみました。

スティックをRaspberryPi Picoへ接続した様子

テスト結果は想定通りでした。

上記ツイートの動画でテストをした時に確認したピンアサインは、上(GND)から順番にRight、Left、Up、Downという形になっていました。

ピンアサイン
(ツイートの動画でテスト時)

通常のアケコンの場合、必ず一定の向きで取り付ける必要がありますが、電子工作であればピンを入れ替えれば好きな角度(※90度単位)で回転して取り付けることもできそうです。

調達難度の低さと品質が魅力

アケコンの部品(ボタンとスティック)の主要メーカーは、三和電子とセイミツ工業の2社のようです。

これらの会社が作った品質が良い部品を、5,000円前後で買い揃えることができます。なお、三和電子製のアケコンはどちらかといえば対戦格闘ゲーム向けに特化しているので、電子工作の用途であればセイミツ工業製の方が適しているかもしれません。

三和製とセイミツ製のどちらも、(今では数は少ないかもしれませんが)ゲームセンターのビデオゲームでの商用利用(業務用)を想定して設計されいるので、操作性(遊び易さ)はもちろん、耐久性も家庭用ゲーム機の標準コントローラー以上の品質が期待でき、実際、リアルアーケードProなどのプロゲーマーのニーズにも応えられる水準(上位モデル?)のコントローラにも採用されている部品のようです。

品質に拘らなければ、アケコンのDIYキットでまとめて3,000円前後でAmazonやAliexpressなどで購入することもできるようですが、国産品と大きく値段も変わらず、輸送費やリードタイムを勘案すると正規品を使った方が良いかもしれません。

アケコンは、DIY用にケースのみの販売もされているものがあり、中国製の比較的安価なものもあるようです。何ならアクリル板やベニヤ板などでケースをDIYするのも面白いかもしれません。

アケコンの部品を使って新しい据え置きゲームを開発してみるのも面白いかもしれません。

コントローラが本体というスタイルのコンピュータとしては、キーボードが本体のMSXやSC-3000などがありますが、「アケコンが本体」というゲーム機は(私が知る限りでは)過去に無かったと思われます。

アケコンがついてくるゲーム機ならありましたが。(NEO-GEO)

アーケードゲームが全盛期だった頃、自宅でアーケードゲームが出来るのは夢のような話だったので、そこそこニーズがあるような気がしないでもないです。

とりあえず、Aliexpressで送料込みで2,000円ほどでRaspberryPi Zeroを購入でき、アケコンのDIYケース(中国製)も発注したので、届いたら妄想の具現化を試みようと思っているところです。

(追記)

vgssdk-pico を本書記載のジョイパッド(ジョイスティック)を使う方向で対応しました。


この記事が気に入ったらサポートをしてみませんか?