Translate

2018年11月21日水曜日

Dualshock4 コントローラをRaspberry Piに認識させることをカネで解決する

Dualshock4 コントローラをRaspberry Piに認識させるまでが
実は厄介だ。

一旦USB接続して、sixaxis.c というコードを使って
MACアドレスを取得し、
bluetoothctl trustさせペアリングサせるのだけど
これが面倒だし、そもそもsixaxis.cのプロダクトヘキサを修正しないと
使えない。

これは異様に面倒だ..

..というわけで大人の解決、カネでなんとかすることにした。

買ったのがコレ。


 ようはDualshock4専用ドングルだ。

ドングルにしては4000円弱と、結構な値段なのだけど、
こいつをRaspberry Piに挿して起動すると
/dev/input/js0
が既に出来上がった状態になる。

ペアリングは、このドングルを刺した方向にさらに押し込み3秒すると
青点滅が早くなる。
そうしたらDualshock4のShareボタンを押しながらPSロゴボタンを3秒以上押し
はなすと、ドングル側のLEDが青点灯状態になりペアリングが終了する。

こうなると hexdump /dev/input/js0 してDualshock4側の
ボタンやアナログスティックをいじると
コードがびろびろででくるようになる。



Donkey Carで使う場合、
あとは
PS3 Joystick Controller
https://github.com/autorope/donkeypart_ps3_controller
をインストール。

名前がPS3担っているが
この記事執筆時点で part.py をのぞくと
PS4Joystick クラスが存在しているのでこのクラスを
manage.py 上でimportして
newしてVihecleインスタンスへaddすればOK。
#このあたりはREADME.mdをよむとよい


技術ではなくカネで解決した話でした。

0 件のコメント:

既存アプリケーションをK8s上でコンテナ化して動かす場合の設計注意事項メモ

既存アプリをK8sなどのコンテナにして動かすには、どこを注意すればいいか..ちょっと調べたときの注意事項をメモにした。   1. The Twelve Factors (日本語訳からの転記) コードベース   バージョン管理されている1つのコードベースと複数のデプロイ 依存関係 ...