2023年1月3日火曜日

Meta Quest 2 (Oculus Quest 2) Tracking Lost時にホーム画面まで表示するやり方および何となくエラーの見当をつける方法(画像&動画あり)

Meta Quest 2 (Oculus Quest 2)でTracking Lost(トラッキングが失われました)状態になり、Meta公式ページの対応やネット情報を一通りやっても解消しない場合に、どうにかホーム画面まで表示するやり方。

※※※ Warning(注意)※※※
この記事はMeta公式文書で参照可能な範囲は参照してますが、それでは不十分な箇所はネット情報を参照しています。
また、Bluetoothマウス・キーボードはMeta的には「Experimental Features(実験的機能)」とのことで、通常は正常起動しているHMD上の設定画面の「Bluetooth Pairing(ブルートゥース・ペアリング)」から接続するものです。
ソフトウェア的なことですので、どこの画面でBluetooth Pairingしても問題ないかと思いますが、あくまでも自己責任の元でご判断ください。
Bluetooth Pairingに限らず、本記事の内容は自己責任でご判断いただければと思います🙇‍♂️

ただし、本記事ではHMDやコントローラを分解などによって内部アクセスしている訳ではなく、公式アプリのみを使用して「表面上」見ることができること・操作できることを、できる限りやっているということです。

故障した場合は、自己判断せずMeta公式に書いてあるとおりMetaサポートに連絡しましょう!!!

一応お決まりかもしれませんが、記載しておきます。
本記事を読まれて何かしらの対応を行われたことに関しては、私は一切の責任は負いません🙇‍♂️ (負える訳がありませんが念のため。古今東西世の中は怖いですからね。。)
※※※※※※※※※※※※※※※※※※※

【前提条件】
・Meta公式ページの対応は一通り試していること。
・ネット情報でできそうなことは試していること。(上記Warning(注意)記載済みですが念のために追記しますと、サイトによっては保証範囲外のことも含まれますので、そこまで含めて自己判断でお願いします。)
・つまり、本体(以下HMD(Head Mount Display))のカメラ4つを綺麗にすることや、コントローラの電池を取って待機して入れ直したりとか、Guardian(ガーディアン)の履歴をクリアとかを試したがダメだった状態。
・Tracking Lostになった場合かつコントローラも動いてない(あと画面が顔追従しなくなった)場合は、Tracking LostダイアログのContinue(次へ)ボタンも押しようがなく落胆している状態。
※細かく書くと、3秒くらいは顔追従しないが一瞬(0.5秒くらい)だけ追従する状態。そこで頑張って視線つまり白い点(ポインタ)をボタンに持っていって、コントローラのボタンを連打するけど、残念ながら画面上のボタンが押せなくて悲嘆に暮れている状態。
・スマホの「Meta Quest」App(Meta Questアプリ)でHMDとリンク済みだとなお可。

【必要なもの】
・HMD
・Oculus Quest 2 コントローラー
・スマホの「Meta Quest」App(私が試した時のバージョン:193.1.0.15.104)
・Bluetoothマウス
・Bluetoothキーボード
・Metaの開発者アカウント※Meta Quest 2でFacebookアカウントでログインしたと思うが、それを開発者アカウントに登録する必要がある。この記事では説明は割愛。各種サイトをご覧ください。
・PCの「Meta Quest Developer Hub」(私が試した時のバージョン:3.1.1)

【手順】
HMDがTracking Lostになってコントローラも動かない場合は、マウスを繋ぐことで一部操作可能となる。
マウス接続手順としては、
・スマホ「Meta Quest」起動 → 接続済みのHMDに接続 → ヘッドセットの設定
 
→ コントローラ

→ 新しいコントローラーをペアリング 

→ ゲームパッドをペアリング

→ Bluetoothスキャンが始まる

・BluetoothマウスをONにして、新規デバイス接続状態にする(操作方法はマウス次第。大抵はマウスに付いているBluetoothボタンを長押し)
・スマホ「Meta Quest」側にBluetoothマウスが表示されたらそれをタップ


→ 「何らかのエラーが発生しました。もう一度実行してください。」が表示されるが、実際はペアリングできている。おそらく「Meta Quest 2コントローラとしては機能してませんよ」という内容なのだろうと推測。



これでHMD側でマウス操作ができるようになるはず。ラッキーであればこれでマウスで「Continue」ボタンを押して、GuardianをOFFにしたりして「使える」状態にまではできるのではないだろうか?
ただしTracking Lostが出ている以上はHMDに何かしらの異常が起きているわけであって、以前と同じような状態でゲームができるか?ということとは話が別なので注意していただければと思う。この記事はあくまで「頑張ってホーム画面まで表示するやり方」である。
「エラーの見当をつけたい」という方はもう少し読み進めていただければと思う。

次に、HMDをFactory Reset(工場出荷時状態リセット(Meta公式ページでは「出荷時設定にリセット」)してしまった状態で、ホーム画面にまで表示するやり方を書いておく。
※なお私自身は、前述の「リセット前状態でBluetoothマウスを試す」ことはやってなくて、ネット情報の順番的にFactory Resetまでしてしまったので、実際に上記状態でBluetoothマウスを接続してどこまでできるかは未確認。

【手順】
・HMDを電源OFF → 音量-(マイナス)ボタン+電源ボタン長押しでUSB Update Modeメニュー表示し、Factory Reset(操作手順の詳細は各種サイト参照)
※Meta公式の通りではありますが、Factory ResetするとOculus上のデータが消えますので十分ご注意ください(ゲームとか履歴データとか、Meta公式ページ参照。対策としてはバックアップとかクラウドバックアップとかっぽいがこの辺もMeta公式ページ参照でお願いします。)


※なお、音量ボタンさえ効かない場合はMetaページでリモートでFactory Reset可能(公式では「Remote wipe」というらしい)
・HMD上はコントローラの電池フィルムを取り外す案内画面が表示される。フィルム取り外し済みの場合は、人差し指ボタンで「→」ボタンを押す案内画面が表示される。
※この記事を読んでいる方は、この時点で操作しようがなくなってこの記事に辿り着いたはず。。

※なお、画面上端に表示される5桁の数字は「Link Code」(後述)


・既述の【スマホ「Meta Quest」からBluetoothマウスを接続する手順】を実施。
 なお、故障前にスマホ「Meta Quest」にてリンク済みの場合は接続まではできるはず。その場合は、「ヘッドセットの設定」を開くと、「コントローラ」メニューは表示されないが、「設定を終了」というボタンがあるはずなので、それを押せば「コントローラ」メニューも出てくる。



もしも一度もスマホ「Meta Quest」でリンクしてない場合は、HMD画面の上端に「Link Code」という欄で5桁の数字が表示されているはずなので、それをスマホ「Meta Quest」で入力すればリンクできる。

・同様にBluetoothキーボードも接続しておく。この先のWi-Fi接続時に必要になる。
・あとスマホ「Meta Quest」側でHMDのWi-Fi設定も行えるのでやっておく。



・マウスで操作できるようになったのでHMD側で「→」ボタンを押してチュートリアルを進めていく。
 ・コントローラの電池フィルムを取り外す案内画面
 ・人差し指ボタンで「→」ボタンを押す案内画面
 ・言語選択画面
 ・女性キャラがHMDを装着して出てくる画面
 ・HMDのレンズの幅を調整する案内画面
 ・セットアップのために座ってください画面(Please Stay Seated for Setup)


・次にWi-Fi設定画面が表示されると、この画面はなぜかマウスが効かなくなる。そこでBluetoothキーボードを使用してWi-Fi設定を行う。


 (Oculusアプリとして2種類のモードがあるような感じがする。1つはマウスが効く画面で、もう1つは効かない画面。後者はVR専用とでもいうのか、コントローラー入力しか受け付けてくれない感じである。要はアプリ/画面次第っぽい。)

 TabキーでWi-Fi一覧を下に移動できると思うので、一番下まで持って行き、もう一回Tabか下矢印キーを押すとフォーカスは見えないが「OK」ボタンに当たっているのでReturnキーで完了。
 ※なお、フォーカスの問題なのか何なのかは分からないが、キーボードも効かない場合がある。その場合はなぜかHMDの音量ボタンを押すと詳細設定画面が開いたりする。そして詳細画面ではキーボード入力は可能。ただし全画面がそうかというとそうではなく、とりあえずこのWi-Fi画面ではその動作が確認できただけ。
 ※どうしてもキーボードが効かない場合は、HMDの音量ボタンを押して、Wi-Fi接続詳細画面を開く。この場合、Wi-Fi一覧の一番上のものが選択されるため、自宅Wi-Fiがトップになってる場合がほとんどだと思うため、自宅Wi-Fiのパスワードをキーボードで入力し、Returnキー押下により、Wi-Fiも接続され次の画面に進むことができる。

 なお、スマホ「Meta Quest」側でWi-Fi設定していなかった場合は以下のような感じ。
 ・Tabでご自宅のWi-Fiを選択
 ・Returnで詳細画面が開く
 ・セキュリティ設定を選択して、パスワード入力、OK
 ・Tabで一番下まで持っていって「OK」

・Meta Quest 2の環境説明的なチュートリアル動画が始まる。(1分くらい。Factory Resetを何十回もやって何度も見ているとスキップしたくなった。マウス・キーボードでスキップできないかと色々試してみたができなかった。まぁそりゃぁこの動画は普通の人は最初の一回しか見ないししょうがないかと思った。。)


・一旦HMDの再起動が走る。


・再起動後はペアリング済みBluetoothマウス&キーボードはそのまま使える。

・Guardian設定画面になる → Nextを押すと「Tracking Lost」ダイアログが表示されて進めなくなる。
・PC「Meta Quest Developer Hub」を起動して、HMDをPCに接続。

・PC「Meta Quest Developer Hub」のDevice Manager → Set Up New Device 

→ Setting Up Your Device画面が開く → Next 

→ Meta Quest 2 

→ Choose Device画面 → お持ちのHMDが表示されるので選択 → Next 


→ Account画面になる → ログインする。ログイン済みならそのアカウントが表示される → Next 

→ Wi-Fi画面 → 接続済みWi-Fiにチェックがついてる → Next 

→ Developer Permissions → アカウントがDeveloperアカウント設定済みならこの画面になるはず。Enable Developer ModeをONにする → Next 

→ Setup Complete画面 → Next 

→ Allow Access → Finish

・ダイアログが閉じて、PC「Meta Quest Developer Hub」上では「Unauthorized」となっている。


・HMDにて、「Allow USB debugging?」ダイアログが表示される。マウスが効かない画面なので、キーボードのタブ&Returnキーで操作する。キーボードのタブキーを押してもフォーカス位置が分からない画面のため、タブキー1回押下:「Cancel」にフォーカス(してるはず)、2回押下:「Always allow from this cimputer」にフォーカスしている(はず)と想定してReturnキーを押下する。注意点としては、HMD再起動後はBluetoothキーボードとのペアリングも一時解除されているため、その状態で1回目のタブキー押下分はペアリングのトリガーとしかならない点である。いずれにしても、ミスした場合は再度PCとHMDのUSBを再接続すれば良い。


・これでPC「Meta Quest Developer Hub」上にHMD情報が表示される。
 もしも表示されない場合は、USBケーブルを1回抜く&PC「Meta Quest Developer Hub」を1回終了 → PC「Meta Quest Developer Hub」起動&HMDとUSBケーブルを再接続すれば表示されることがある。

・PC「Meta Quest Developer Hub」で中段右端のGuadianをOFFにする。
・(多分)背景にBubble(泡)が漂うだけの画面になる。
・PC「Meta Quest Developer Hub」で今度はGuadianをONにする。
・Guardian設定画面が表示される。

・上記表示された状態で、PC「Meta Quest Developer Hub」で下端「Custom Commands」の「Create Command」を選択 → Custom Command画面が表示される
 ・Nameは任意(stop first menuなど)
 ・COMMANDは以下を入力
adb shell am force-stop com.oculus.firsttimenux
 ・コマンドの意味:Guardian設定画面アプリを強制終了させる。


・Save → 下端のリストに作成したコマンドが表示されるので、Runをクリック → HMD上でGuardian設定画面が閉じる

・PC「Meta Quest Developer Hub」で新しく「Create Command」を作成
 ・Nameは任意(start Horizon Home / Parties demoなど)
 ・COMMANDは以下を入力
adb shell am start -a android.intent.action.VIEW -d systemux://co-presence-nux com.oculus.vrshell/.MainActivity
 ・コマンドの意味:設定画面を開きたいが、直接起動する方法が分からない為、一旦このアプリを起動する。(このアプリから設定画面を開くことができるため)
 なお、adb shell am startコマンドでアプリを起動できるので、設定画面のパッケージ名&Activity名などが分かる方は直接起動してください。

・Metaが開発中の「Party」機能紹介アプリが起動する → End Demo(※デモを見たい方はNextで順番にデモを見てみてください^^) → Exit demo?ダイアログ → Exit → すると「People」画面が表示される → 左端メニューのSettings → Notificationsの別ウィンドウで開くアイコンをクリック → 設定画面(設定アプリ)のNotificationsが開く → 画面左上の4つの□アイコンをクリック → 設定一覧画面が表示される

・設定一覧画面 → 左上のSystemグループ → About → Health & Safety Video → 最初に見た環境説明的なチュートリアル動画が再生される → Skip(もう一度全部見たい方はそのまま見てください^^) → すると、ホーム画面のメニューまで表示される!

あとはマウス&キーボード操作だけとなるが、「TV」アプリとか「Browser」アプリでYouTubeとかを開いて動画視聴くらいは可能な状態になる✌️

(余談)チュートリアル動画を何十回も見たので、彼ら彼女らのことを考察してしまった^^分かった事としては、
・登場人物は、
 ・最初に登場する女性(Aとする)
 ・その次に登場する女の子(Bとする。「13歳以上が対象」という説明時に出てきてるので、13歳未満と思われる。)
 ・場面が切り替わってHMDを取り上げる帽子を被った男性(Cとする)
 ・その隣でOculus Safety Guideを持っている男性(Dとする)
・ストーリー展開的にAとCがそれぞれHMDを着けてテニスゲームをプレイするという内容なので、それぞれ遠隔地にいるかと思ったが、場面が変わるとBちゃんがDさんと一緒にスマホにキャスティングされた映像を見ているので、実は近くに居るっぽい。(可能性的に、またはあり得そうな想定的には、実は同じ家というのがしっくり来そうである。)
・そうすると、わざわざ別の場所でそれぞれ「Oculusを新しく買いました!」的な演技とか、「たまたまお互いテニスゲームを見つけて、たまたまCさんとテニスゲームをしました」的な演技はせずとも、一緒に開封して「とりあえずテニスゲームをやってみよう」と行けばよさそうである。
・つまり、このチュートリアルはそこまで「実生活の一場面を切り取りました」というものではなくて、チュートリアルを作るために(アバターが)設定・演技されたものであるという事であろう。
・普通のこういう類のチュートリアルはいかに「実生活にこのガジェットを取り入れて、いかに生活がワンダフルになるか」を演出するため、どこまでも実生活に近づけがちであるが、メタバースが故か、この点は「仮想上の人物(アバター)を敢えて使って、敢えて演技させる」ということを、言外に表したかったのではないだろうか?という製作陣の思いに心が馳せていくのである。
・そこまで見抜いてしまって、作成された方には申し訳なく思う。
・最後に言えることは、この動画はPR動画ではなくて、最初に触れるユーザに最低限の内容を伝える動画であり、製作陣もそこまで「気にしてなかった」というのが実は一番可能性としては高いということに、巡り巡って行き着くのである。(ここまで鋭く行き着いた人にMetaから特別賞をもらえたりしないかな?)
(余談終わり)


続いてエラーの見当の付け方。

上記手順の開発者アカウントでPC「Meta Quest Developer Hub」まで接続できれば、PC「Meta Quest Developer Hub」の上部のHMDの写真が表示されているところに「Device Logs」ボタンがあるので、それをクリックすればOculusのログが表示される。

そして、そのログを頑張って追っていって見当をつける、というだけ^^
当然この辺はOculus内部のソフトウェアのログなので、運が良ければネットに情報があるかもしれない、というレベルである。

なお、私の場合は以下の通り分かりやすくカメラが原因っぽいということが分かった。
F DEBUG         : Abort message: 'Syncboss failed to probe cameras! error code: -110'

※ただし、本当にこのエラーがカメラが原因かどうかはMetaしか分かりえない。(ソフト開発した方であれば分かると思うが、ログはログであって、そのログが出たソフト(ソース)がどうなのか分からないと原因は分からない。ただ、ここまでちゃんとした製品であればサポートしやすいようにログもちゃんと整備されているだろうから、ある程度は信ぴょう性はあるかもしれないが、そこまで含めて「推測」の域は出られない、ということ^^)

色々追うとerror code: -110はタイムアウトっぽいので、どうやらカメラとの通信がおかしいようである。
ここからはハードウェアの問題なので調査終了!

【総括】
最初に書きましたが、本記事はあくまでもホーム画面まで表示してエラーの見当をつけることだけが目的です。
ログをどこまで解析しても憶測の域は出られないので注意しましょう!
(ログ解析してMetaサポートに故障連絡したら「ログ解析し原因と思しき箇所まで特定していただいてありがとうございます」とか言われるかもしれないが^^)

なお、私の場合は保証内か保証外かというと明らかに保証外の故障の仕方だったため、何とかできないかという一心でここまで調査しただけとなります😢。参考まで✌️

(今思うと、ダメ元でも一旦Metaサポートにお伺いを立てておいても良かったのかな?と思います。
 誠心誠意その時の状況を説明すれば保証対象にしてくれないかな?という淡い期待。。
 当然その時に嘘をついてはダメですよ!!!😅)

P.S. 2023.1.19
ログ調査でカメラが原因と思われたため、その情報を元に無事に私のMeta Quest 2 は復活しました!(保証外修理に出したら、少なくとも調査費+材料費+作業費+出荷試験費などがかかると予想されますが、自力で修理したので数千円で済みました!✌️ ※素人作業なのでものすごい作業時間がかかって、そこの「自分の人件費」は考慮に含まれませんが。。 また、最初の話に戻りますが、これを読まれて「自分で修理しよう」と思われて作業された方は、私は何も責任は負えませんので、ご了承ください🙇‍♂️)

0 件のコメント:

コメントを投稿