Device Set-up
Factory Reset
"%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge_proxy.exe" --app="https://www.meta.com/help/quest/software_update/"
MQDH
Versions
System Version
Firmware Version
Firmware Build ID
Firmware Build Date
Wed Apr 23 18:16:44 PDT 2025
ADB Commands
Android Settings
adb shell am start -a android.intent.action.VIEW -d com.oculus.tv -e uri com.android.settings/.DevelopmentSettings com.oculus.vrshell/.MainActivity
120Hz
adb shell "setprop debug.oculus.refreshRate 120"
adb shell "setprop debug.oculus.cpuLevel 5"
adb shell "setprop debug.oculus.gpuLevel 5"
adb shell "setprop debug.oculus.adaclocks.force 0"
adb shell "setprop debug.oculus.phaseSync 1"
Sets CPU and GPU performance level to
5, enables
Phase Sync globally, and minor Developer Options tweaks
adb shell "setprop debug.oculus.cpuLevel 5 && setprop debug.oculus.gpuLevel 5 && setprop debug.oculus.adaclocks.force 0 && setprop debug.oculus.phaseSync 1 && settings put global always_finish_activities 0 && settings put global wifi_scan_throttle_enabled 1 && settings put global window_animation_scale 0.25 && settings put global transition_animation_scale 0.25 && settings put global animator_duration_scale 0.25 && sync"
adb shell "setprop debug.oculus.refreshRate 120 && sync"
Verify
adb shell "getprop debug.oculus.cpuLevel"
adb shell "getprop debug.oculus.gpuLevel"
adb shell "getprop debug.oculus.adaclocks.force"
adb shell "getprop debug.oculus.phaseSync"
adb shell "settings get global always_finish_activities"
adb shell "settings get global wifi_scan_throttle_enabled"
adb shell "settings get global window_animation_scale"
adb shell "settings get global transition_animation_scale"
adb shell "settings get global animator_duration_scale"
Notes
IPD Expander
The lenses spread a few mm more past 68mm just enough to make the VR experience significantly better for me around 71mm!
Take a bottle cap and jam it in-between the facial interface and proximity sensor so that it keeps the lenses spread as-far over

Disable the option to automatically wake the headset when you put it on since the proximity sensor is always-covered
Oculus Link
Graphics Preferences
RTX 3060
Default
72Hz: 3616 x 1840
80Hz: 3456 x 1744
90Hz: 3264 x 1648
120Hz: 2816 x 1424
Lowest
72Hz: 0.7x
80Hz: 0.7x
90Hz: 0.7x
120Hz: 0.9x
Highest
72Hz: 1.5x
80Hz: 1.6x
90Hz: 1.7x
120Hz: 1.9x
RX 6600 XT
Adrenalin 22.5.2
Oculus 41.0.0.88.353
Wired Link with H.264
Default
72Hz: 3616 x 1840
80Hz: 3456 x 1744
90Hz: 3264 x 1648
120Hz: 2816 x 1424
Lowest
72Hz: 0.7x
80Hz: 0.7x
90Hz: 0.7x
120Hz: 0.9x
Highest
72Hz: 1.5x
80Hz: 1.6x
90Hz: 1.7x
120Hz: 1.9x
Encode Resolutions
Notes
Numbers
Connect Quest with wired Link cable with desired Refresh Rate set
Go to the Oculus folder below
Find the last-modified Service text file
Search for the text line Converted encode resolution
%localappdata%\Oculus
Converted encode resolution
RTX 3060
Last updated: 2022/07/11

The same max
3664 resolution is usable 72Hz-120Hz as-reported by Oculus
72Hz = 3680, 1920 (3664 selected)
80Hz = 3680, 1920 (3664 selected)
90Hz = 3680, 1920 (3664 selected)
120Hz = 3680, 1920 (3664 selected)
3680
NvcEncode
Latency at H.264 is 4ms at 1080p@144, 6ms at 1440p@144, and 10ms at 4K@30
It looks ideal to either use 120Hz, or limit encode resolution for lower refresh rates to ~2560 in order to avoid the 4ms spike
RX 6600 XT
Adrenalin 22.5.2
Oculus 41.0.0.88.353
Wired Link with H.264
72Hz = 3680, 1920 (3664 selected)
80Hz = 3520, 1920 (3504 selected)
90Hz = 3200, 1760 (3200 selected)
120Hz = 2752, 1440 (2736 selected)
3680
3520
3200
2752
07/06 22:21:11.099 {DEBUG} [xrstreaming] No hevc support found
07/06 22:21:11.099 {INFO} [xrstreaming] RemoteHeadset/HEVC not set, Using AVC
07/06 22:21:11.099 {DEBUG} [xrstreaming] Creating AMD HP3D d3d11 device
07/06 22:21:11.099 {DEBUG} [xrstreaming] Reported AMD amdlvr64.dll version 1.0.16.0
07/06 22:21:11.099 {DEBUG} [xrstreaming] AMDALVRFactory::Create: ALVRInit(1.0.15.0, &factory) succeeded.
07/06 22:21:11.141 {DEBUG} [xrstreaming] AMDALVRDisplayFactory::Create: ALVRInit(1.0.15.0, &factory) succeeded.
AmaEncode
RX 580
72Hz = 1984, 1120
80Hz = 1824, 960
90Hz = 1664, 960
120Hz = 1376, 800
1984
1824
1664
1376
APKs
Game Data
RTCWQuest
sdcard\RTCWQuest\Main\pak0.pk3
sdcard\RTCWQuest\Main\sp_pak1.pk3
sdcard\RTCWQuest\Main\sp_pak2.pk3
sdcard\RTCWQuest\Main\sp_pak3.pk3
sdcard\RTCWQuest\Main\sp_pak4.pk3
sdcard\RTCWQuest\Main\sp_vpak5.pk3
sdcard\RTCWQuest\Main\sp_vpak6.pk3
sdcard\RTCWQuest\Main\sp_vpak7.pk3
sdcard\RTCWQuest\Main\sp_vpak8.pk3
sdcard\RTCWQuest\Main\sp_vpak9.pk3
sdcard\RTCWQuest\Main\z_pak1.pk3
QuakeQuest
sdcard\QuakeQuest\id1\IP_Weapons_Ruohis_Key_Plague(altered).pk3
sdcard\QuakeQuest\id1\mindgrid_audio_sound.pk3
sdcard\QuakeQuest\id1\PAK0.pk3
sdcard\QuakeQuest\id1\PAK1.pk3
sdcard\QuakeQuest\id1\QR_2048_QuakeBestiary_Alfader_Nergal.pk3
sdcard\QuakeQuest\id1\QRP_item_textures_v.0.73_dp.pk3
sdcard\QuakeQuest\id1\QRP_map_textures_v.1.00.pk3
Lambda1VR
sdcard\xash\HL_Gold_HD\*
sdcard\xash\valve\*
sdcard\xash\commandline.txt
Doom3Quest
sdcard\Doom3Quest\base\game00.pk4
sdcard\Doom3Quest\base\game01.pk4
sdcard\Doom3Quest\base\game02.pk4
sdcard\Doom3Quest\base\game03.pk4
sdcard\Doom3Quest\base\pak000.pk4
sdcard\Doom3Quest\base\pak001.pk4
sdcard\Doom3Quest\base\pak002.pk4
sdcard\Doom3Quest\base\pak003.pk4
sdcard\Doom3Quest\base\pak004.pk4
sdcard\Doom3Quest\base\pak005.pk4
sdcard\Doom3Quest\base\pak006.pk4
sdcard\Doom3Quest\base\pak007.pk4
sdcard\Doom3Quest\base\pak008.pk4
QuestZDoom
sdcard\QuestZDoom\wads\DOOM.WAD
sdcard\QuestZDoom\wads\DOOM2.WAD
sdcard\QuestZDoom\wads\HERETIC.WAD
sdcard\QuestZDoom\wads\HEXDD.WAD
sdcard\QuestZDoom\wads\HEXEN.WAD
Quake3Quest
sdcard\ioquake3Quest\baseq3\pak0.pk3
sdcard\ioquake3Quest\baseq3\pak1.pk3
sdcard\ioquake3Quest\baseq3\pak2.pk3
sdcard\ioquake3Quest\baseq3\pak3.pk3
sdcard\ioquake3Quest\baseq3\pak4.pk3
sdcard\ioquake3Quest\baseq3\pak5.pk3
sdcard\ioquake3Quest\baseq3\pak6.pk3
sdcard\ioquake3Quest\baseq3\pak7.pk3
sdcard\ioquake3Quest\baseq3\pak8.pk3
sdcard\ioquake3Quest\missionpack\pak0.pk3
sdcard\ioquake3Quest\missionpack\pak1.pk3
sdcard\ioquake3Quest\missionpack\pak2.pk3
sdcard\ioquake3Quest\missionpack\pak3.pk3
Saved Game Data
Beat Saber
sdcard\Android\data\com.beatgames.beatsaber\files\AvatarData.dat
sdcard\Android\data\com.beatgames.beatsaber\files\PlayerData.dat
Until You Fall
sdcard\Android\data\com.schellgames.untilyoufall\files\Profile1\CampaignSaveData.cls
sdcard\Android\data\com.schellgames.untilyoufall\files\Profile1\EconomySaveData.cls
sdcard\Android\data\com.schellgames.untilyoufall\files\Profile1\RunSaveData.cls
sdcard\Android\data\com.schellgames.untilyoufall\files\Profile1\SettingsSaveData.cls
sdcard\Android\data\com.schellgames.untilyoufall\files\Profile1\TutorialSaveData.cls
Gladius
sdcard\UE4Game\GladiusQuest\GladiusQuest\Saved\SaveGames\GladiusInstance.sav