REVIVE USBをアナログXY軸に対応してみた
REVIVE USBという基板をアナログXY軸のゲームパッドに対応してみました。
REVIVE USBのジョイスティック機能のXY軸は0か1の値しか送ることができませんが、-128~127の範囲の値で送るように変更しています。アナログ入力を採用しているゲーム(beatmania IIDX INFINITASなど)には需要があるでしょう。
上記の写真のようなロータリーエンコーダを使用したゲームパッドにも対応しているので、興味がある方はご覧ください。
ただし、レバーをゆっくり倒した/はじいた等の動作には対応していません。内部的にはデジタル入力として受け取ったものをファームウェアでアナログ値に変換しているためです。
ちゃんとしたアナログ入力が欲しければREVIVE USB ADVANCEをおすすめします。
まずはREVIVE USBを用意
REVIVE USBはビットトレードワン社から販売されている基板です。
価格は2500円ほど。
中身は組立キットになっていて、まずは組み立てる必要があります。実は組立済みの基板も売られているのですが、電子工作の経験がない方は自分で組み立てることをおすすめします。親切なマニュアルがありますし、結局半田付けしなければいけないのでこの時点で慣れておくべきです。
組み立てたら念のため認識されるかどうか確認するためにPCへ接続しましょう。mini-BタイプのUSBケーブルが必要です。ドライバがインストールされれば成功です。
ファームウェア書き換え
GitHubからファームウェアと設定ツールをダウンロードしてください。
リンク先に導入手順が載っているので、それに従ってファームウェアを書き換えを行うとアナログXY軸に対応したREVIVE USBが出来上がります。
書き換え済みのREVIVE USBをPCへ接続した状態で付属の設定ツールを起動すると各ピンにボタンを割り当てられるので、レバー下/レバー左等を割り当てて実際に動作するか確認してみてください。
これでアナログXY軸に対応した基盤が完成するので、あとは各ピンへ配線し、実際に使用するコントローラの中なりに入れましょう。
なお、配線作業では各ピンにマイクロスイッチ等をはんだ付けする必要があります。手順はこちらをご覧ください。
補足追記 (2021年)
この記事は、学生時代に運営していたブログの記事を書き直したものです。
REVIVE USBのインターフェイスディスクリプタの書き換え方法を模索していた時期の記事であり、スライダー入力版の副産物という意味合いが強いです。
beatmania IIDX INFINITASの公式コントローラの挙動を再現したものになりますが、実際にはPIDとVIDが異なるため、ゲーム側には認識されません。(噂によると公式ボルテコンの挙動とも同じだとか)
あまり実用的ではないかもしれませんが、参考資料にはなると思いますので記事として残しておきます。