BLOG

社内ブログ
  • TOP
  • EVENT
  • 古いアーケードコントローラーをRaspberry Pi Picoで改造した話  後編

2022/08/05 社員の日常

古いアーケードコントローラーをRaspberry Pi Picoで改造した話  後編

オールドルーキーのカッキーです。

前回の続き、ヤフオクで手に入れた中古アケコン(ゲームセンターの機械に近い操作形式のゲームコントローラー)の心臓部をRaspberry pi Pico(以下ラズピコ)に差し替えて、高性能にしてしまう、その具体的な内容です。

ラズピコをゲームコントローラーとして使用する、
そのためのファームウェアはGitHub上で公開されています。

https://github.com/FeralAI/GP2040

書き込んで簡単な動作検証をしました。

ラズピコとPCをUSBにて接続するとUSBjoypad(PC用のゲームコントローラー、ですね)として認識されたのを確認しました。
ボタン用の端子とGND端子……本来「ここにボタンを配線します」の部分をちょっと生でつなげてみます。するとちゃんとPC上でコントローラーのボタンを押したことになります。なりました。もうコントローラーですね。

要はこれらの端子に一通りボタンやレバー(レバーも内部的にはスイッチの集合体になっています)をつなげてしまえば、ゲームコントローラーとして使えものになる、ということです。

こまごました部分をざっくり設計していきます。
手に入れたアケコンをさっそく分解してしまいます。「このシールを開けると保証が無効になりますよ」のシールを遠慮なく剥がしていきます。
もともとヤフオクで中古3000円くらいで手に入れた10年位前のアケコンに保障もなにもないため、内部の配線を好きに切り刻み、ゼロベースで配線してしまってもよいのですが、今回はボタンの配線に使われているコネクタを流用できるかどうか確認してみます。
少しお金がかかってしまいますが(数百~千数百円程度)なんだかんだで配線はコネクタを使ったほうが良いことが多いため、すでにあるものを流用してしまうのが一番良いと考えています。あとで元に戻すことができるというのは安心感がありますしね。
見た目の特徴やピンの間隔をヒントに調べると、どうやらネットなどで普通に入手できるコネクタだったため、仕入れてしまいました。

使用するコネクタが大方決まったところで、用意したコネクタ等の部品をブレッドボード(設計などに使われる電子部品を簡易に配線する板)に刺してみます。

きれいに無駄なく配線しようと思うと意外と考えることが多いため、ここで試行錯誤しておくのは大事なようです。(コネクタは同じピン数のものを使わないようにしておくと、後々刺し間違えなくていい、とか……)
とくにUSBケーブル部分を流用できたのは楽になりました。

さらに配線のためのケーブルを作ります。
専用の工具などを用いてケーブルにコネクタをつけていきます。

無理やり作ったため見た目が汚いものもあり……これは何かトラブルがあったら別のやり方で作り直すかもしれませんが、ゆうてそれなりに動くはずなのでこの辺はゆるくしていきます。

ユニバーサル基板(電子部品を自由に配線できる板)に実際の配線を行います。
ブレッドボードでざっくり設計した内容を反映させていきます。
思っていたよりこまごました配線が必要になっておりました。
真隣の穴同士なら配線が楽だったのですが、1つ空くだけで大違いなものです。ある意味設計ミスですが、力業で解決していきます。

実際に配線し、自作した基板をいい感じにアケコンの中に固定してしまいます。写真では仮止めにしていますね。いくつか方法が考えられるので迷っているところです。

ケーブル等を挟まないよう気を付けながらコントローラーの裏ブタを閉める。
というわけで完成です。

正直に言うと、遅延についてはよくわかりません。
数ミリ秒~数十ミリ秒レベルの時間差を見た目や触感で検証するのは現実的ではありません。
今回みたいにいろいろ手をかけてたら特に。例えば仮に少し遅くなっていたとしても、認めたくない気持ちでいっぱいなので。うん、駄目ですね。
検証するためには何らかの装置を使って、感覚に頼らない検証が必要です。

それはそれとして、作ったものを実際にPCにつないで機器として認識させる、操作通りに反応する。これを体験できるというのは大変に面白い、意義のあることであると感じます。
あくまでIoTについての勉強がてらの工作で、今回はPCにつなぐゲームコントローラーだったのですが、多少応用すればPCの操作機器……たとえばキーボードやマウスなども作れてしまいますし、単純なボタンを使ったものだけでなく様々なセンサ、赤外線センサや圧力センサ、加速度センサ、カメラなども数百円から手に入り、様々な情報をPCに送ることができます。

さらにさらに、PC側と双方向にやり取りさせ、外部の装置を動作させることもできる。直接つながっているものに限らず、遠隔地のものだって動く、さあどうなってしまうのか、どんなことができてしまうのか……これらはまさしくIoTの可能性ということを実感できます。

……黙ってましたけど「遅延」が発生する要因は別にコントローラーだけに限ったことでは全然なく、
PCの性能は当然影響が大きく、特にモニタはやり取りするデータも多くて大変なんですよね……ゲーミングモニタはそのためのモニタですし……

これはむり あきらめます【完】

RECRUIT採用情報

弊社はまだまだ小さな会社ですが、3年以内の急成長を狙っています。
なので、受動的ではなく「能動的」な人材を求めています。
また、様々な業種/サービスを取り扱っているクライアント様と
お付き合いをさせていただいているので、
「明るく」「元気で」「誠実」な人材であることも大切であると考えています。

求人エントリーフォームはこちら