Synamon’s Engineer blog

Synamonは「XRが当たり前の世界をつくる」ことをミッションに、未来づくりに挑戦しているXRスタートアップです。 toB領域をメインに、未来への取り組みや事業づくりにチャレンジしている企業様への支援や、XR・エンタープライズメタバース活用のユースケースづくり、継続的に使われるための仕組みづくりに取り組んでいます。 このブログでは、XR・メタバース技術とその周辺の技術、開発全般に関してエンジニアがお話しします。

Oculus GoのアンロックOSビルドを入れてみた

この記事はSynamon Advent Calendar 2021の3日目です。

この記事の結論:現状ではそんなに面白い事は出来ませんでした!


2018年5月1日に発売、その翌年である2019年5月21日に後続のOculusQuestが発売され、2020年末で販売を終了。流れ星のように役目を終え去っていった一体型・3DoFヘッドマウントディスプレイであるOculus Go。

その軽量さや限定された操作によるお手軽さから未だに根強い人気もあるこのデバイスですが、先日このようなニュースが報じられました。 www.moguravr.com

これにより、OculusGoのブートローダーのロックを解除し、誰でもOSを開発、インストールすることが可能になる様なので、軽く触ってみました。

アンロックされたOSビルド及び、導入方法のドキュメントにはこちらからアクセス可能です。 developer.oculus.com

インストールは上記ウェブサイトの案内に従えばすぐ終わります。ただし、デバイスに保存していたデータはすべて消えるので注意してください。

試してみた様子

デバイスがアンロック状態になると、起動時に以下のような警告画面が表示されるようになります。

その後セットアップ画面に入ります。アンロック後もOSを入れ替えなければ、Oculusアプリを使ってセットアップ→ストアやアカウントへのアクセスは引き続き出来るようです。

adbで確認してみると、root権限は取れていました。

f:id:Sokuhatiku:20211202175637p:plain

root権限があるので、色々見れたり消したり出来ます f:id:Sokuhatiku:20211202193344p:plain

adb reverseも打てます。

f:id:Sokuhatiku:20211202181804p:plain

adb reverseが出来るならlocalhostでWebRTCのデバッグとかも出来ます。今どきはngrokがあるのでちょっと便利になる程度ですが……

ついでにPlayストアのapkをインストールしてみたものの、残念ながら使えないようです。(これはアンロックしなくても試すことが出来ます)

f:id:Sokuhatiku:20211202175124p:plain

結局アンロックすると何ができるのか

root権限とブートローダーの署名チェック無効化により、Oculus Goの制限が解除されてAndroid(Linuxカーネル)で出来ることは全部出来るようになっている筈です。ただし、Oculus Goをかぶって見ることが出来るVR空間はOculusのメニューアプリがレンダリングしているものなので、そこに直接手を入れる、例えばポインタ形状を変化させたりメニュー項目を増やすといったような、いわゆるroot化したスマホのようなカスタマイズをするのは難しそうです。(そのアプリ自体を差し替えたりとかはできると思います。)

もうちょっとドキュメントが充実すれば色々出来そうな感じはあるのですが、現状だとちょっと情報不足で、面白いことをするのは難しそうです。自分もAndroidの低レイヤーに詳しいわけではないので、ちまちま調べながら引き続き探ってみます。