Center CLR Try!開発 #17 に行ってきた。
もくもく会の方式の勉強会だ。
参加者は自分の好きなテーマを表明して作業する。
自分は、今回はNintendo Switchのリングフィットアドベンチャー用のリングコントローラー(Ring-Con)をWindowsに繋げることができないか試してみるというのをやった。(あと、BLE Sniffferの使い方の勉強もやった)
まずは、買ったばかりで開封していなかったリングフィットアドベンチャーを開封して、Nintendo Switchでソフトを起動した。
最初にコントローラーの準備をする画面になるので、画面の指示に従ってコントローラーの準備をして、リングコントローラーが動作した。
簡単なトレーニングを実行して、リングコントローラーを左右から力を入れて圧縮するのを繰り返して、回数をこなすと爆弾が爆発するというやつをやってみた。かなりの運動負荷になるようでちょっと疲れた。
リングコントローラーを圧縮すると、JoyConの振動機能でフィードバックがあり ぶるっと震えるので、反応が面白い。
次に、BLE SnifferでSwitch本体とJoyConとの通信パケットをキャプチャーできないか、Snifferを試してみることにした。
しかし、結論から言うと、このSnifferはBLEのみに対応していて、Bluetooth 2.0やBluetooth 3.0の古い規格のパケットのキャプチャーには対応していないということが分かった。
Bluetooth 4.0 / BLEはそれ以前のBluetoothとふつうに互換性がないものらしい。
というわけで勉強会の時間の途中で、もう頓挫してしまった。
残り時間でJoyConのhackの情報で新しいものがないか調べたり、Bluetoothのパケットキャプチャーの他の安い品物がないか調べたりしていた。
BLEの別のNordic Semiconductorのドングルだと、AdafruitというところがBLE Snifferのフリーソフトを出しているらしいので、そちらも試してみたくなった。こちらはWireSharkと連動させたりとか応用もいろいろ効くらしいからだ。(ただし、旧式のBluetoothに対応していないというのは一緒だ)
JoyCon hack自体は、世の中ではだいぶ進んでいるので自分も振動機能とかは結構思うように動かして音階とかを出せるようになったりした。同様に、JoyConに対して なにかのコマンドを送ればRing-Conの計測値が取れるのではないかと思う。
コマンドがなにか分からないというだけなので、絨毯爆撃みたいな方法で調べられるのではないかと思った。