【INFINITAS】REVIVE USBをアナログXY軸に対応してみた

beatmania IIDX INFINITASのコントローラ(プレコン、INFコン)を自作する方向けの記事です。REVIVE USBという基板を使ってINFコン互換の基板を作ることが可能です。

REVIVE USBのジョイスティック機能のX/Y軸は本来0か1の値しか送ることができませんが、-128~127の範囲の値で送るように変更しました。アナログ入力を採用しているゲームには需要があるでしょう。

INFINITASの公式コントローラはまさしく上記の仕様で動作しています。

使用しているPCがスペック不足でINFINITASを起動できずテストが行えていませんが、手元の公式コントローラを参考にしてファームウェアを制作したので動作すると思います。

まずはREVIVE USBを用意

[Amazon.co.jp] REVIVE USB

REVIVE USBはビットトレードワン社から販売されている基板です。

価格は2500円ほど。

自作のUSB入力デバイスの制作を補助するもので、12個のピンがあり、簡単に言えば12個のボタンを接続できます。

ゲーム用途も考慮されていて、1秒間に1000回の信号を送るので遅延は1ms以下とほぼ意識せずに済みます(通常のキーボードやマウスは1秒間に125回しか送りません)。

ピンごとにマウスとキーボードとゲームパッドの3つの機能を割り当てることができ、常駐ソフトウェアなどもないので自由度が高いです。

ちなみに中身はマイコンで、ArduinoやRaspberry Piを知っている方は今回のような入力デバイスを作ることに特化したものと考えて構いません。


中身は組立キットになっていて、まずは組み立てる必要があります。実は組立済みの基板も売られているのですが、電子工作の経験がない方は自分で組み立てることをおすすめします。親切なマニュアルがありますし、結局半田付けしなければいけないのでこの時点で慣れておくべきです。

組立前と組立後

組み立てたら念のため認識されるかどうか確認するためにPCへ接続しましょう。mini-BタイプのUSBケーブルが必要です。ドライバがインストールされれば成功です。

ファームウェアの書き換えと設定

まずはREVIVE USBをINFINITAS用のファームウェアに書き換える必要があります。

GitHubにベースにできるものを上げておいたので、ダウンロードしてください。

「REVIVE_USB_RENC_AL_Debounce_latest.zip」というzipファイルです。

(追記:2017/02/27)ファームウェアを更新しました。選曲画面の入力精度が向上しています。ダウンロードしていた方は再度ダウンロードしてください。なお、下記のhexファイルの書き換え内容も変わっています。


設定ツールでキーボードに設定しても使えるのでダウンロードしたファームウェアを手順通り書き替えてもいいのですが、ゲームパッドとして使いたい場合は別です。INFINITASでは公式のコントローラのみがゲームパッドとして認識されます

DAOコンのINFINITASモードも行っている方法で、VID/PIDという情報を書き換えれば対応できます。VID/PIDを偽装することになるので理解した上で実行してください。

また、バイナリエディタによる書き換え作業を伴うので失敗すると変なものができるかもしれません。自己責任でお願いします。


「REVIVE_USB_RENC_AL_Debounce_FW.hex」をテキストエディタで開く。

:0C3454001201000200000008EA224E00F5

上記の行を下記に書き換える。

:0C3454001201000200000008CF1C48809C

「REVIVE_USB_RENC_AL_Debounce_CT.exe」をバイナリエディタで開く。

FA510123 56006900 64005F00 32003200
45004100 26005000 69006400 5F003000
30003400 4500000B 4D006900 5F003000

上記の行を下記に書き換える。

FA510123 56006900 64005F00 31006300
63006600 26005000 69006400 5F003800
30003400 3800000B 4D006900 5F003000

以上の作業を行った後にREVIVE USBへファームウェアを書き込んでください。

書き込んだらドライバのインストールが始まります。

デバイスマネージャから該当するゲームコントローラを選択し、[プロパティ]-[詳細]-[ハードウェアID]の値の一部が「VID_1CCF&PID_8048」に変わっていれば成功です。

成功したら設定ツールを起動してデバイスが検出されることを確認し、ボタンの割り当てを行います。以下の画像を参考にしてください。

専用の設定ツール

【P1・P2:スクラッチ】【P3~P9:1鍵~7鍵】

INFコンにはE1~E4キーという4つのボタンもありますが、残りのピンがP10~P12の3つしかないので1つ犠牲にすることになります。

対応表もまとめておくので使いたいボタンへ設定してください。

設定INFINITASの認識
レバー下スクラッチ左
レバー上スクラッチ右
B11鍵
B22鍵
B33鍵
B44鍵
B55鍵
B66鍵
B77鍵
B9E1
B10E2
B11E3
B12E4

B8は使われていません。

LR2などで使う場合はスクラッチにレバーではなくボタンを割り当てなければいけないので、その時だけB8と犠牲にしたボタンを割り当てるといいでしょう。

設定を終えたらINFコン互換の基板の出来上がりです。

配線作業について

あとは設定の通りにREVIVE USBの各ピンに半田付けを行って配線しましょう。

スクラッチはロータリーエンコーダ(インクリメンタル形かつクリック感のないタイプ)で、A相/B相をそれぞれP1/P2に配線します。鍵盤は各マイクロスイッチのNC端子をP3から先へ配線していき、ロータリーエンコーダとマイクロスイッチのGNDを基板のGNDへ配線すれば動作します。

[Amazon.co.jp] マイクロスイッチ0.49N

すみませんが、今回コントローラ制作は行っていないので写真はございません。弐寺コンの箱作りは他の専コンと比べて難易度が高いので、中古の既製品を購入して再利用することを強くおすすめします。

注意点

公式のコントローラを接続したことがあるUSBポートに接続すると正常に動作しないことがあります。ドライバが異なるからです。その場合はインストール済みのドライバを削除してから再接続すると治ります。逆も然りです。

DP用途でも使用できるとは思いますが、何せ肝心のテストができておりませんので動作がおかしい場合はご報告いただけると幸いです。

0 件のコメント :

コメントを投稿