見出し画像

トラッカー干渉の真犯人はUSB3.0?!

どうも。白衣さんです。

この記事では、
みんな大好きVIVEトラッカーの干渉問題に関する情報をお伝えしています。

専用機器などで細かく測定などを行ったわけではありませんので、
全ての周辺機器に対して有効であることは残念ながら保証できませんが、

対処方法の方針やその原理などを自分なりに解説させていただきましたので、
これをご覧の皆様の良きVRライフのヒントになれば幸いです。

トラッカー干渉の真犯人は、実はUSB3.0だった?!

いきなり結論から入るのですが、
もしトラッカーのドングル同士を付属のケーブルなどで離しているにも関わらず、
「接続が不安定なままだ」「途切れることがある」という症状のある方は、
ぜひ、USB3.0で動いている周辺機器との隔離を行ってください。

具体的には、

1.使用していないUSB3.0駆動の周辺機器の電源を切る

2.ドングルが刺さっているUSBハブを、USB2.0のポートで使用する
(USB3.0ポートに繋いだUSBハブで、ドングルと周辺機器を混在させない)

3.ドングルが刺さっているUSBハブを、USB3.0 のポートからなるべく離れたポートで使用する

4.USB3.0 で駆動してる周辺機器のケーブルや本体とドングルをなるべく遠ざける

5.USBケーブルを「シールドタイプ」のものに取り替える

これらの対応を行っていただけると、状況が改善する可能性が高いと考えられます。


USB3.0が真犯人である3つの根拠

【根拠その1】USB3.0とBluetooth はそもそも干渉する

私が真犯人の存在に気がついたのは、数年前のとある出来事がきっかけでした。

真犯人を現行犯逮捕したときを再現した写真がこちらです。↓

PC背面のUSBポートが4つありますが、下側の2つがUSB3.0対応のポートだとします。

そしてそのポートに、USB3.0対応のポータブルHDDが接続されており、
そのすぐ隣のポートに、無線マウスのレシーバー(Bluetooth)がとりつけられています。

この状態でHDDのデータ整理していた私はとある不具合に気が付きます。

HDDにアクセスしていないときは、マウスがスイスイと動くのに、
HDDからデータを読み出したり、書き込んでいるときだけ、
マウスがひどく遅延するか、全く動かなくなる
のです。

そして、HDDへのアクセスが終了すると、とたんにマウスの反応が回復します。

どうやらHDDがマウスのジャマをしているようなので、マウスのレシーバーを、PCの表側のUSBポートに刺し直してみました。

すると予想通り、HDDにアクセスしている間も、マウスは影響を受けなくなったのです。

真犯人の存在に気がついた当時の私は、同じ結論にたどり着いた人が他にもいないか検索してみたのですが、
数年前は、USB3.0対応の周辺デバイスがようやく普及し始めた頃なのもあってか、残念ながら情報は少なかったです。

しかし、3.0駆動のデバイスが普及した現在では、
「USB3.0 Bluetooth 干渉」といったキーワードで検索すると、
たくさんの記事がヒットするようになりました。

例えば、こういった記事があります。

記事の内容を要約しますと、

「USB3.0」と「WiFi(2.4GHz)」と「Bluetooth」は、周波数帯が近いので干渉が起きる

USB3.0デバイスからの干渉ノイズは、「USBケーブル」「デバイス本体」「PCのコネクタ」全てから発生する。

そもそも、Bluetoothという通信規格は、2.4GHz帯の電波を使用して通信を行っています。

そして、「電磁場の干渉」は「周波数」が近い電波同士が、混ざり合ってしまう(出力の強い電波に弱い電波が埋もれてしまう)ことが原因で発生します。

WiFiには、2.4GHzと5GHzの両方に対応している製品が普及してきましたが、もしWiFiも干渉に影響している場合は、2.4GHzから5GHzでの通信に切り替えると、接続が安定する可能性があります。
(その代わり、ルーターの設置場所によってはWiFiの電波が届きにくくなる可能性もありますので、その場合はアンテナの向きや置き場所などを調整しましょう。)

そしてUSBですが、「2.0」の頃は、データの通信速度が遅かったため、周波数が低く、Bluetoothとの干渉は起きていませんでした。

しかし、「3.0」では、通信速度が上昇し、
不運なことに、2.4GHzに近いノイズを発生させてしまうことになってしまったのです。


【根拠その2】ドングル同士だけでは干渉しない実例

真犯人を突き止めた私は、思い切った検証を行いました。

みんな大好きVIVEトラッカー
(押収品ではありません)

どこのご家庭にもあるVIVEトラッカーですが、
数えてみると私はたまたま20個ほど持っていました。
(4月中には「Tundra Tracker」が届くので後14個ほど増えます。)

これだけの数を一つ一つケーブルと台座で接続するのは大変なので、
思い切って16個並べてみました。

16列ドングル

果たしてうごくのでしょうか。。。

床に14個、カメラに1個ずつ、合計16個
(Cosmos EliteにはPro用のフェイシャルトラッカーがくっついてます。あとDroolonF1も)
HTCバンザイ!
トラッカー16個を難なく認識
(コントローラーが片方オフラインなのは、ペアリング数の上限っぽい)

この記事の最初に挙げた対策を行っているため、
みんな仲良く動いております。

具体的には、ノイズ源の典型である外付けHDDは取り外し、PCは有線でネットに繋いでいます。

(ちなみに、私のように大量のトラッカーをつなぐ際は、一つ一つ順番に認識させるのがよさそうです。
これは、電波の通信状況というよりも、一気に繋ぎすぎるとUSBデバイスの認識をOS側がしくじるからっぽい)

私個人の開発環境での検証になりますが、USB3.0との干渉に配慮して以降、
上記のようなUSBハブに並べて接続していますが、接続が不安定になったことは今の所ありません。

もし、付属のケーブルや台座を使ってドングル同士を離していたとしても、
ノートPCからWiFi(2.4GHz)で接続していたり、外付けのHDDがUSB3.0で駆動している方は、接続が不安定になる可能性があるかと思いますので、

ぜひ、ネットはWiFiの5GHzまたは有線接続にして、外付けのHDDなどは取り外すか、電源をOFFにすることをオススメいたします。


【根拠その3】Bluetoothが干渉に強い規格である実例

「Bluetooth同士が近くにあると、互いに干渉する」というのは、
果たして本当でしょうか。

人間は、当たり前になりすぎたことをついつい忘れていまう生き物です。

Bluetoothがむしろ干渉に強い通信規格であることを実感できる例が、
実はすぐ身近に存在します。

満員電車の中では身動きが取れず、ワイヤレスイヤホンで音楽を聞いている人は少なくないですよね。

もし、Bluetoothが干渉しやすい通信システムだとしたら、満員電車の中で音楽を聞くことはできるのでしょうか。

昨今は新型感染症などの影響で、電車やバスといった公共交通機関を利用する人が減っていますが、

ひとまず、通勤ラッシュのときの電車内を考えてみます。

JRの山手線を例に簡単な計算をしてみましょう。

1両あたりの乗車店員は、乗車率100%でおよそ100人前後、
満員電車では160人くらい
乗っているらしいです。

車両の大きさは、ざっくりと長さが20m、幅が2.5mくらい。

そして、仮に乗員全員が、一人1台のスマホで、ワイヤレスイヤホンで音楽を聞いているとしましょう。

なので一人あたり、スマホと左右のイヤホンで3つのBluetoothを持っています。

身近なもののフェルミ推定って楽しいよね

すると、電車1両の中には、

 100人×3個=300個 (ラッシュ時は 150人×3個=450個)

のBluetooth端末が詰め込まれています。

これを電車の面積で割ってみると、

 300個 ÷(20m×2.5m)=6個/㎡

(ラッシュ時は、 450個÷(20m×2.5m)=9個/㎡)

となって、
1m×1mの中で、なんと6個から9個ぐらいのBluetoothが動いていることになります。

しかも、Bluetoothの通信範囲は、約10mくらいなので、
車両の中央付近にあるデバイスは、常に300~400個ものBluetoothデバイスの電波の中で動いているのです。

こんな状況できちんと動作するBluetoothは、むしろ干渉に強い通信規格と言えるのではないでしょうか。

もちろん、Bluetoothにも様々な種類や通信プロトコルがありますので、
VIVEトラッカーの通信と、ワイヤレスイヤホンの音声通信では、異なる点もあります。

しかし、そもそも通信規格というのはよくできていて、
少なくとも同じ通信規格の中ではなるべく干渉が起きないように設計されており、
なるべく他の規格とも干渉しないように配慮されています。

しかし、通信規格の種類は多種多様ですので、他の全ての通信規格と折り合いの付けられる規格は不可能です。

なので、省電力であることも強みのBluetoothは電波の出力が弱く、
比較的出力が強いWiFiの電波やUSBのノイズに負けてしまいます。

同じルールの中で譲り合っている仲間同士よりも、
異なるルールで強いパワーをもった別グループからの干渉のほうが影響が大きくなる
のは自然なことです。

例えば、4人のグループが2人ずつペアになって、
互いを邪魔せずに会話するにはどうすればいいでしょうか。

場所が広いなら、互いの会話が聞こえなくなるくらいまで、
ペア同士が離れればそれで解決します。

しかし、狭い場所で壁や仕切りがない場合はどうでしょう。
例えば、次のような方法で解決することができそうです。

片方のペアが10秒間しゃべる間は、もう片方のペアは黙っていて、
次の10秒で、しゃべるペアを交代する。

こうやって譲り合えば、互いの会話を邪魔し合うことはありません。

しかし、この4人組のすぐ隣に、もっと声の大きい別の2人がやってきて、
好き勝手なタイミングで、会話を始めたらどうでしょうか。

きっと、最初の4人は、会話がしにくくなってしまうことでしょう。

WiFiとBluetoothなどの通信規格の違いは、言語の違いのようなものと考えることもできます。
なので、仮にBluetoothを日本語、WiFi(2.4GHz)を英語だとしましょう。

日本語で喋っているすぐとなりで、別の人が同時に日本語をしゃべると、
お互いに会話のジャマになります。

では、日本語で会話している人のすぐとなりで、もっと大きい声で英語で喋られたら、どうなるでしょうか。
日本語の会話は、英語での会話の音声に埋もれてしまうでしょう。

まとめ

少し長くなってしまいましたが、
結論は、最初にお伝え得したとおり、

トラッカーの接続を安定させるためには、USB3.0 との隔離が重要(あとWiFiも要注意)


これに尽きます。

この記事を読んでくださっている方の中で、
今お使いの環境でトラッカーを安定して使用できている方も、

今後WiFiの設定を替えたり、外付けのHDDなどのデバイスを新たに追加する場合は、
ケーブルの種類やポートの場所などに気をつけてみてはいかがでしょうか。



この記事が気に入ったらサポートをしてみませんか?