Updating Firmware
IBIS trackers and receivers run VYRO VR’s build of the open-source SlimeVR nRF (“Smol Slime”) firmware. VYRO VR publishes a build for every board it sells at github.com/VYRO-VR/Firmware, and the recommended way to install it is VYRO VR Preflight, VYRO’s desktop setup app. Updating is optional — your hardware works fine on whatever firmware it shipped with.
Trackers and receiver must match
Trackers only pair with a receiver running the same firmware build. So:
- Update all your trackers and the receiver together, to the same release.
- A replacement receiver arrives on the latest firmware — update your trackers to match before trying to pair.
- After updating, expect to re-pair if anything doesn’t reconnect on its own.
Preflight checks this for you: it reads the build commit from the receiver and from every tracker the SlimeVR Server can see, and shows Up to date or Update available next to each.
Install VYRO VR Preflight
- Download the latest installer from github.com/VYRO-VR/preflight/releases. Windows gets an installer and a portable
.exe; there are also macOS (.dmg) and Linux (.deb/ AppImage) builds. - Install and launch it. On macOS the build is unsigned, so right-click → Open the first time.
- Have the SlimeVR Server running and your receiver plugged in via its extension cable. Preflight talks to the server for the live tracker list and to the receiver over its USB serial port.
Preflight’s home screen offers Pair New Trackers, Update Firmware, Calibrate Trackers, Gyro Sensitivity, Troubleshoot Connection Issues, and a Full Setup Guide wizard. This page uses Update Firmware.
Updating with Preflight
Open Update Firmware. The page has three sections:
Latest firmware
Preflight fetches the newest stable release from the VYRO VR firmware repo and shows the receiver build and tracker build commits it contains. “View release notes” opens the release on GitHub.
Receiver
- Preflight finds your receiver on its serial port and reads its firmware version, commit, build date, and board. If it can’t read them, unplug the receiver, plug it back in, and Search again (very old firmware can’t report a version at all — updating fixes that too).
- The Status row tells you whether it matches the latest release. If it does and you don’t need to change anything, stop here. Reinstall or change firmware is there if you need to force it.
- If an update is available, Preflight pre-selects your receiver board (Fox Dongle33 for the VYRO VR Receiver, Styria R1, HolyIOT 21017, and so on) and the matching file. Check the board is right — the wrong board’s firmware is how receivers get bricked.
- Tick I understand updating may soft-brick the device and click Update receiver. Preflight sends the receiver into update mode, waits for it to appear as a drive, copies the
.uf2across, and reports the result. Don’t unplug the receiver until it finishes. HolyIOT receivers have no drive; Preflight flashes those with its bundled DFU tool instead, which can take up to a minute. - When it’s done, Search again to confirm the new version.
Trackers
The tracker list comes from the SlimeVR Server, so power on the trackers you want to update. Each shows its firmware commit and whether it’s up to date.
- Click Update a tracker and check the pre-selected tracker board (Mochi for current IBIS 2.0 trackers).
- Connect the tracker to your PC with a USB-C data cable — some charge-only cables won’t work.
- Press its button 4–5 times in quick succession. The tracker reboots into its bootloader and appears as a small removable drive; Preflight lists it as soon as it shows up.
- Tick the acknowledgement and click Flash to (drive). Preflight downloads the
.uf2and copies it onto the drive. The tracker reboots into the new firmware on its own and the drive disappears. - Repeat for every tracker in the set. Pairing survives the update as long as the receiver is on the same build.
If a tracker doesn’t reconnect afterwards, re-pair it — Pair New Trackers in Preflight, or see Pairing.
Manual update (without Preflight)
The same thing by hand, for macOS, Linux, or if you’d rather not use the app:
- Open the latest firmware release and download the file for your board. Files are named
VVR_<Tracker|Receiver>_<Board>_<commit>.uf2— for exampleVVR_Tracker_Mochi_<commit>.uf2for a current IBIS tracker, orVVR_Receiver_Fox_Dongle33_<commit>.uf2for the VYRO VR Receiver. Not sure which board you have? Preflight’s Update Firmware page names it, or ask in Discord. - Tracker: plug it in over USB-C and press the button 4–5 times. Receiver: send
dfuover its serial console (nRF Connect Serial Terminal or SmolSlimeConfigurator). Either way a small USB drive appears —MOCHI,SLIMENRF,NICENANO,SLIMEVRTRK, orFOX-BOOTdepending on the board. - Copy the
.uf2onto that drive. The drive disappears when the copy finishes and the device reboots into the new firmware. - Do not unplug mid-copy. If the drive reappears immediately, the file was rejected — check you have the right board’s build and try again.
HolyIOT receivers don’t expose a drive; their release asset is a Secure DFU .zip that needs nrfutil (bundled in Preflight) — use Preflight for those.
Checking versions
- Preflight → Update Firmware shows everything in one place.
- Receiver:
infoover the serial console prints the version, commit, build date, and board target. - Tracker: the SlimeVR Server’s tracker details show the firmware string, which ends in the build commit.
If an update fails mid-flash
A tracker or receiver interrupted mid-copy simply stays in the bootloader — the drive will still be there (or reappears after you re-enter DFU mode). Run the update again, or copy the previous known-good .uf2 back on. See DFU Mode for the recovery walk-through.
Rolling back
Older releases stay on the firmware releases page. Download the earlier file for your board and flash it the manual way. Roll back the receiver and the trackers, or they’ll stop pairing.