マイコン工作実験日記

Microcontroller を用いての工作、実験記録

DUALSHOCK 4の接続

2023-05-22 22:51:34 | DoomPlayer

これまでDoomPlayer では使用するコントローラとして、DualSenseを使ってきましたが、新たにDUALSHOCK 4もサポートすべく作業中です。最近のLinuxのドライバを見たところ、DualSenseとDUALSHOCK4のコントローラはhid-playstation.c として統合されており、似たような扱いでサポートできることがわかったためです。

USB HIDクラスで取得できるレポートのデータ構造こそ異なってはいますが、DualSenseと同じような内容のデータが取得できるので、コントローラのボタン操作も同じように行うことができます。

DualSenseと違ってプレーヤ表示LEDはありませんが、ライトバー表示は前面にも大きく開いているので、音楽に合わせて光らせていると見栄えがします。まぁ、コントローラを手に持ったら自分では見えないんですが。。

購入してから気づいた残念な点は、DualSenseがUSB Audioとして48KHz, 4chをサポートしているのに対し、DUALSHOCK 4では32KHz, 2chしかサポートしていないこと。2ch出力なので、効果音による振動の発生はできません。また、音楽ももともとは44.1KHzの音源を32KHzで再生することになるので、かなりのスローテンポとなってしまい、何とも緊迫感に欠けるゲーム音楽になってしまうのが残念なところです。

こちらもBT接続できるようにするつもりです。