Wireshark
USB
キャプチャ

【雑記】XON LOG-1 Angular Rate Z 不具合調査

XON LOG-1と言う6軸センサ(3軸加速度+3軸回転角)で遊び始めました。
取り付け対象の運動を記録して色々と解析などしてみようかと。
当面は動画に合成して表示させるのが目的です。

で、どうもAngular Rate Z[dps]の値がおかしい。

メーカーサポートに連絡したら故障かもしれないから送り返せと。
代品を送るから、と。

承諾して代品を受け取り、動作確認。
やはりAngular Rate Zの値がおかしい。

なんかやたら小さい。

・・・!!!
Accelerration(X)[g]の値の‐1倍と等しい!!

こりゃなんか変換ミスじゃねーの?

と疑い、USBキャプチャしました。

キャプチャはWireshark ⁺ USBPcap
いつの間にかWiresharkに同梱でインストールされるようになったんですね。
(そういえば本格的に使ってたのはもう10年近く前だった・・・)

//USB通信キャプチャ データ部
0000   01 15 80 01 40 3d 64 01 32 3d 08 c1 83 bf 39 41  ....@=d.2=....9A
0010   9c bf f4 01 7a bf 8c 3f 46 41 33 33 b5 41 7a 09  ....z..?FA33.Az.
0020   7f 44 00 00 00 00 00 00 00 00 00 00 00 00 00 00  .D..............
0030   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

適当な値を適当に変換してみます。

有意な値っぽい数値を2byteや4byteビッグエンディアン、リトルエンディアンでやってみた結果以下のような推測が一番自然と思われます

//データ分解
01 15 ?
//以下リトルエンディアンで浮動小数点変換してみた結果
80 01 40 3d = 0x3d400180 = Decimal: 0.04687643051147461
64 01 32 3d = 0x3d320164 = Decimal: 0.04345835745334625
08 c1 83 bf = 0xbf83c108 = Decimal: -1.0293283462524414
39 41 9c bf = 0xbf9c4139 = Decimal: -1.2207404375076294
f4 01 7a bf = 0xbf7a01f4 = Decimal: -0.9765923023223877
8c 3f 46 41 = 0x41463f8c = Decimal: 12.390514373779297
33 33 b5 41 = 0x41b53333 = Decimal: 22.649999618530273
7a 09 7f 44 = 0x447f097a = Decimal: 1020.1480712890625

以下該当行と思われるデータ。

//該当行と思われるデータ
line : 228
time : 0:00:18.24
Acceleration(X)[g] : 0.04345836
Acceleration(Y)[g] : 0.04687643
Acceleration(Z)[g] : 1.029328
AngularRate(X)[dps] : -0.9765923
AngularRate(Y)[dps] : 1.22074
AngularRate(Z)[dps] : -0.04345836
Temperature[degree] : 22.65
Pressure[hPa] : 1020.148
MagnetCount   : 0
MagnetSwitch  : 0

おお、だいぶそれっぽい。
すると12.390514373779297の部分がAngular Rate Zではなかろうかと思うわけです。

メーカーサポートに連絡したのでUtilityソフトのアップデートを期待して待ちます。

さすがにその他のプロトコルまで解析するのは面倒なので・・・。