11点トラッキング安定化までの奮闘記 VIVEトラッカー等が不安定な人向け
おま環な原因でしたが、原因の特定までに色々やったことも書き残しておきますので、
lighthouse環境でのVIVEトラッカーやTundraトラッカーなどのトラッキングが安定しない方は参考までに見てやってもいいかもしれません。
あんまり読みやすい文章にはなってません。すみません。
これで治ったよ!とかこれやったけど治らなかったよ!とかありましたら、コメントかTwitterで報告して頂ければ喜んだり追記したりしなかったりしますので是非
概要
BaseStation4個
Quest2、ValveIndexコントローラLR、VIVE Tracker3.0 x3、TundraTracker x6
で11点トラッキング環境
※12点に見えますが頭にトラッカーを付けてるので11点
ValveIndexコントローラLR+VIVETracker2.0 x3もしくはTundraTracker x3個の時は特に問題なく使えていました。
コントローラや足トラッカーなど、特定のトラッカーが不安定な状態になっていました。
症状としては、機器がVR空間で小刻みに震える、あらぬ方向に飛んでいく、いつの間にか電源が切れている等です。
かと思えば、2~3時間使っていても症状が現れないこともありました。
原因は電波干渉と思われますが、原因を色々と排除しても1年以上解決しませんでした。
※集合住宅なので、他の部屋から漏れるWiFiが原因かも、と半分諦めていたのも長引いた要因ではあります
部屋の環境:集合住宅。1部屋の中にPCやテレビなどがある。電子レンジは稼働していない。WiFi(2.4Ghz)は割と飛んできてる。
結論
S〇NYのテレビ用ワイヤレスヘッドホン(2.4Ghz)の送信機が、スリープ状態でも電波を出していたことが原因でした。
機器の電源を完全に切ることで、トラッカーもコントローラーも安定しました。
ためしたこと
■前提として、赤外線関連
lighthouse機器はベースステーションからの赤外線を受信して動作しますので、遮られたり余計な光が入ったりすると不安定になることがあります。
とはいえ、私の環境ではトラッカー3個の時は安定していたため、赤外線関連の影響は無いとしていました。
内外部からの赤外線(太陽光含む)の照射、ベースステーションの近くに光が反射するものを置かないなど気を付ければ問題ないはずです。
一応、ベースステーションの周りを遮光素材で囲うなどしてみましたが、特に意味は無かったです。
【追記】
頭のそばでLighthouseコントローラやトラッカーが飛んでしまう場合、HMD自体に赤外線が反射している場合があります。
グレア液晶が真っ暗なときに自分の顔が映り込んでしまうのと同じ理屈ですね。
Quest2や3では発生しませんが、Pico4やXR Elite、QuestProで発生する可能性があります。
カバーやノングレア加工がされたフィルム、マスキングテープなどで反射しないようにグレア面を覆うことで解消可能。
【参考】
VIVEトラッカーが認識するけど、安定しないという人のためのチェックリスト(主観)
■まずは定番、ペアリング設定のリセット 再ペアリング
【参考】
Vive トラッカーのトラブルと対処方法
不安定なのを認識してから、最初に試しました。
特に1個しかドングルを付けていないのに複数個のトラッカーをペアリングしようとすると発生するようです。
面倒ですが、1個ペアリングしたらドングルを外しトラッカーの電源を切る、次のドングルとトラッカーのペアリング…と一個ずつペアリング作業を行うことをお勧めします。
TundraTrackerのドングル(以下スーパーワイヤレスドングル、正式名称?)は構造上、一個だけ外す等出来ませんが、トラッカーの数が合っていれば問題無さそうです。
【追記】OVR Advanced Settings(現在有料)を使えば1個ごとにペアリングが可能です。
VRでOVR Advanced Settingsの設定表示→左メニュー「SteamVR」→左下の「Device Pairing」
また、Lighthouse Consoleからペアリングの解除をしておくとより確実かもしれません。
【追記】
SteamVRのトラブル解決の時におなじみのsteamvr.vrsettingsに追記すると、上記アプリのようにドングル個別管理がSteamVR上で出来るようになります。
dashboardの項目のところ
allowInHeadset ControllerPairing": true, を追加
(文末の , に注意してください。項目の最後の行には不要です。)
【参考】一番下のおまけのところ ペアリングの解除の記述があります。
■ドングル同士の距離を離す
これは結構対処法としてよく出てくるものですね。
電波で通信するものなので、ドングル同士が近いとお互いに干渉してしまうというものです。
とはいえ、SteamVRのほうで使用する電波をかぶらないよう割り当てているようなので、同じUSBハブに挿しても問題無いという人も多く見かけます。
一応、VIVE公式はドングル同士は10㎝(15㎝?)以上離すこととしているようです。
【参考】
[CEDEC 2018]「Vive Tracker」を使うときの注意点とは? 「Vive」の最新情報が披露された講演をレポート
私の環境では一応20~30cmくらい離しています。
■WiFi・Bluetooth使用機器の削減
ドングルとトラッカーの間は、「2.4Ghz帯」という家庭用機器で最も使われている周波数帯域の電波で通信をしています。
WiFi(2.4Ghz)、Bluetoothなどといったいかにもなものから、固定電話の親子機、無線マウスキーボードヘッドセット、暖め中の電子レンジもこの周波数帯域のノイズを発生させています。
また、USB3.0も使用していると2.4Ghzに近いノイズを出すらしく、ものによっては影響が出ることがわかっています。
が、結論から言うと、「大抵はドングル・トラッカーと数十センチ離れていれば問題ない」です。
電子レンジは強いので出来れば1部屋分くらいは離したほうがいいですが、無線マウスやキーボードくらいだったら影響はほぼありませんでした。
ただし、高速通信をしているUSB3.0機器(外付けドライブなど)は、ノイズが発生しやすいらしく、「同じUSBハブに繋がない」「前面と背面にUSBポートを分ける」などの対処が必要な場合があるそうです。
【追記】PC自体もノイズ源になっている可能性があるので、延長ケーブルやUSBハブなどでPCとドングルの距離を確保も検討して下さい。
【参考】
トラッカー干渉の真犯人はUSB3.0?!
私の場合、もともと無線APとドングルは離れていましたが、まずWiFi2.4Ghzを使用しない(APから電波を出さない)ようにして、不要なBluetoothは全てオフにしました。
これは目に見える効果はありませんでした。
大抵の人はここまでやったら治ることが多いと思います。
このあたりから、泥沼にハマっていくことになります。
■ポート変更、極端に距離を離す
・USBハブ(USB2.0タイプ)をUSB3.xポートではなくUSB2.0ポートに接続する(これは逆に不安定になりました。なんで?)
・USBハブではなく内臓タイプのUSBカードを刺し、マザーボードとカードに分散してドングルを指す、片寄せする、位置を変える
・USBハブを変える、スーパーワイヤレスドングルをマザーボードから出すようにする、逆に上記のカードから出すようにする
・リピータケーブル(規格上最長5mくらいのUSBを中継装置を付けて無理矢理伸ばしたケーブル)でドングル同士を数m離す
全部ダメでした。
結構な金額が飛びました…
ちなみにですが、リピータケーブルは内部的にはUSBハブなので、PCはケーブルをUSB機器として認識する場合が多いです。
あまりあることではないですが、USB機器の接続数にも上限があるので、多用はしないほうがいい気がします。
■USBケーブルのシールド、フェライトコア
TundraTrackerのフォーラム(現在アクセス不可)で助言を募ったところ、VIVEトラッカーやTundraTrackerに付属しているUSBケーブルは品質が良くない、具体的に言えば、シールドが無いタイプのUSBケーブルが原因ではないかと言われました。
詳しい原理は省きますが、ケーブルがアンテナの役割を果たしてしまい、ノイズを拾いやすくなる&ノイズを発してしまい、電気信号と電波に影響を与えているということです。
ケーブルの周りを電波を吸収する物体で囲んでしまえば(シールド)、影響を抑えることが出来る…ので、あらかじめそういう仕組みをしているのがシールド付のケーブルです。
市販されている、シールド付を謳ったUSBケーブルを購入し、既存のケーブルを入れ替えました、が、影響なし。
(個人的にはGNDに接地してないと意味ないのでは?とは思ってましたが)
また、フェライトコアを両端のコネクタ付近につけてみたりもしましたが、これも効果無し。
(ドングルはUSB2.0通信だしもっと高周波の場合にしか効果が無いのでは?と思ってましたが)
■USBの電力
フォーラムかTwitterかは忘れましたが、ドングルに供給される電圧もしくは電流が足りていないのではないかという指摘。
コンセントが不要なUSBハブ、いわゆるバスパワータイプと言われているUSBハブでは、USB機器に供給される電力が少ないです。
一方、コンセントを接続できるタイプのUSBハブをセルフパワータイプといい、比較的大きな電力を供給出来ます。
VIVEドングルはともかく、スーパーワイヤレスドングルは消費電力が大きく、バスパワータイプのUSBハブは非推奨です。
また、USBの電力の標準規格は5Vなので、USBにおいて電力といえば電流のことを指すことが多いのですが、バスパワータイプのUSBハブでは電圧も低くなる傾向にあるようです。
(これはUSBの簡易電力計測機で判明しました)
そのため、USBハブをUSB2.0かつセルフパワータイプに変更。
上述した計測器で5Vを下回らないことを確認しました。特に効果はありませんでした。
ただし、どちらにしろバスパワータイプのUSBハブは不安定の原因となることが多いようなので、セルフパワータイプのUSBハブに変えてみるのは効果があるのではないかと思います。
また、USBハブからUSBハブに繋ぐように接続する、いわゆるUSBハブの多段接続は、バスパワータイプのUSBハブでは特に不安定になりますので避けましょう。
【追記】PCのUSB端子に直接差す場合も、電源の質や劣化により電圧低下の可能性があるそうです。セルフパワータイプのUSBハブが無難ですね。
■スーパーワイヤレスドングルの不具合
TundraTrackerのドングルは4タイプあり、それぞれSW3,SW4,SW5,SW7という名前がついています。
数字は1台のドングルに接続できるトラッカーの数を表しています。
SW7は熱問題があり、キックスターターの支援者しか持っていないはずで、SW3+SW4に交換対応が取られていました。
(交換しなくても分解してヒートシンクをつけるのが有効)
SW5は特にそのような話は聞きませんが、それなりに発熱するし、SW7と同様の構造を持っているためかこれもキックスターター限定で、現在は購入できません。
そして、これはTundraTracker公式は認めていませんが、SW4に4台のトラッカーが接続されていると特定の1個が不安定になる事象が多く報告されています。
そのため、SW4へのトラッカーの接続は3台までとし、他のドングル(現在はトラッカー1個用のドングルが販売されています)にペアリングすると安定した方を見かけます。
SteamVRドングル(デバイス1個ペアリング用)
https://market.intofree.world/products/steamvr-dongle
スーパーワイヤレスドングルは内部的にはドングルをUSBハブに繋いで小さい筐体に押し込んでいる状態なので、ドングルのアンテナ同士は非常に近くなっており、それが原因ではないか?なんて言われてたりしました。
SW5とSW7は熱以外は問題無かったのでそれが原因かは怪しいところですが。
ともかく、ドングルを追加購入したりしなかったりしたため、SW3とSW4とSW5、そして単体用のドングルが数個あり、SW4に3つだけペアリングしたり、SW5も4つだけペアリングしたり、単体ドングルの数を増やしたりと色々試しましたが、若干安定した気がしたかな?というくらいで完全には安定せず。
ちなみに今もSW4だけは1個分をWindowsデバイスマネージャーから無効化して運用しています。
(やり方は気が向いたらまとめます。たぶん気が向きません。教えてと言われたら教えるかも)
また、スーパーワイヤレスドングルとVIVEトラッカー2018は相性が悪いようで、VIVEトラッカー2018の場合は付属のドングルを使用するのが無難だと思います。
【追記】これはちゃんと検証したわけではないんですが、上記ショップのSteamVRドングルとINDEXコントローラーの相性が良くないようです。
(特にlighthouse機器が多い場合)
これはドングル内部のICが2種類あり、互換性はあるものの接続が不安定になりやすい傾向にあるようです。(上記のSWDと旧VIVEの相性が悪いのも同様の理由?)
A群:VIVEトラッカー2018 SteamVRドングル
B群:VIVEトラッカー3.0 VALVE INDEX(コントローラ含) TundraTracker スーパーワイヤレスドングル
ただし、SteamVRドングル+TundraTrackerで不安定になったという話は、あくまでそういう可能性がある、とだけさせてください。
(ShiftallのX2ドングルはどうなんでしょうね?)
■そして原因
最初に書いた結論にも書きましたが、S〇NYのテレビ用ワイヤレスヘッドホン(2.4Ghz)の送信機が、スリープ状態でも電波を出していたことが原因でした。
ちょっと古めの機器ということもありますが、まさかスリープ状態でも変な電波を出していたとは…
これは実は、少し前に謎の激安スペクトラムアナライザ(簡単に言うと電波を可視化する装置)を取り寄せ、一つ一つコンセントを抜いては電波を測定する、というのを繰り返していました。
上記送信機をコンセントから外したところ電波がかなり減衰したので、取り外したままにしてトラッカーを入れたところ、極めて安定したという流れでした。
また、ワイヤレスヘッドセット(LogicoolのG733)も、トラッカーを持ってるだけ全部繋いだ状態だと若干不安定になるため、音系の無線機器は出来るだけオフ(場合によってはコンセントから抜く)のが無難かもしれません。
Bluetoothのイヤホンの影響は使ってないのでわかりませんが、Bluetoothは比較的干渉対策をしているタイプの無線なので、あまり影響は無い…かも?
終わりに
というわけで、やったことはだいたい全部です。
細かいことを言うともう少し色々やっていましたが(ドングルの向きだとか壁から離すだとか)
電波は目に見えないので厄介ですね…
例えばこれが隣の家から法外な出力の電波が出ていて干渉してた、とかが原因だとお手上げですね。
あくまで私の場合はですが、電波の出そうなものの電源をかたっぱしから切ってトラッカーを使ってみる、というのが一番手っ取り早かったわけです。
みなさんが原因を探るときは、私がやったことを、お金がかからないほうから試していくことをお勧めします。
解決するためにかかったお金のことを考えると少し憂鬱になります。
おまけ
最近ContactGloveが届いたんですが、6点トラッキング程度ではそれほど問題ではないものの、lighthouse機器11個ともなるとお互いに電波干渉し不安定になってしまうようです。残念ながら、根本的解決策は現状ありません…
【追記】今はContactGlove側の対応でだいぶ改善しました