One file on a USB stick, opened by your scope's own updater, and one button on the scope. It downloads NovaOS over your network and installs it beside Rigol's firmware, which stays on the scope. No PC needed past copying the file.
DHO800_DHO900_Update.GEL · one file for the DHO800, DHO900 and MHO900The installer's screens, as it draws them (an example scope and owner).
A DHO800/DHO900 on 00.01.05.00.02. An MHO900 on 00.01.00.00.26: its scope app then reports 00.01.00.00.00, which is right. Update first with Rigol's own package (DHO800_DHO900_Update.GEL for a DHO, MHO900_Update.GEL for an MHO); the install checks and refuses any other version.
It carries the install file, and keeps a copy of what the install replaces. While the install runs it must be the only USB storage plugged into the scope.
Ethernet, or a USB Wi-Fi adapter, on a network that gives out addresses (DHCP) and reaches the internet.
More than 2 GB free on its internal storage, for the download and NovaOS itself.
Wi-Fi adapters NovaOS drives: the TP-Link Archer TX20U Nano (Realtek RTL8832BU), the one we use; other Realtek Wi-Fi 6 adapters on the RTL8851B, RTL8852A/B/C and RTL8922A chips; RTL8821CU and RTL8811CU adapters (the Wi-Fi adapter the MHO900's stock firmware supports); and the 802.11n TP-Link TL-WN725N v2/v3 (RTL8188EUS), RTL8188GU and RTL8188FU. Ethernet needs nothing.
DHO800_DHO900_Update.GEL: here on 19 October 2026, with its SHA-256 and a signature to check it against. Copy it to the top folder of a FAT32 stick, named exactly DHO800_DHO900_Update.GEL. The same file installs on both families.force_update_sparrow.txt and force_update_sparrow3.txt. They tell Rigol's firmware to run the update at power-on: the first on a DHO800/DHO900, the second on an MHO900. On Windows, check the names do not end up as .txt.txt.MHO900_Update.GEL off the stick (an MHO900 runs Rigol's file first when both are there), and never name a file MHO900_AutoUpdate_Factory.GEL: an MHO900 installs a file of that name at every power-on.| On the stick's top folder | What it is |
|---|---|
DHO800_DHO900_Update.GEL | the install |
force_update_sparrow.txt | empty |
force_update_sparrow3.txt | empty |
DHO800_DHO900_Update.GEL. An MHO900 takes it by the marker files only.NOVAOS/RESULT.txt on the stick. Then it copies what it is about to replace onto the stick and restarts the scope. This takes a minute or two.The scope is activated already. Utility > Software shows the NovaOS release and any newer one with Install, Check now and Install all, the modules for your scope (free ones and the ones you own install from there), the edition with Switch to Debian 13 or Switch to Yocto, Send logs, Allow support access (24 h), and Remove this scope from the server. NovaOS itself needs no licence.
Keep the stick. The NOVAOS folder on it holds the copy of what the install replaced and of the scope's calibration files: the only copy that is not on the scope.
Nothing until you press Download and install; before that the installer only asks your network for an address and the time. Then only the fields listed, with why, on What NovaOS sends: no measurements, screenshots or files.
A refusal changes nothing on the scope: it keeps running Rigol's firmware. Read NOVAOS/RESULT.txt and NOVAOS/usb-install.log on the stick with a PC (on a DHO800/DHO900 started from Storage > Upgrade, the scope also says the operation failed). The install removes the marker files first thing, so put them back before you try again.
NOVAOS/RESULT.txt begins REFUSED: the stock firmware is …; this install admits only…
Update it with Rigol's own package first: a DHO800/DHO900 to 00.01.05.00.02 (DHO800_DHO900_Update.GEL from Rigol), an MHO900 to 00.01.00.00.26 (MHO900_Update.GEL from Rigol). Then take Rigol's file off the stick, put the two marker files back and run the install again.
NOVAOS/RESULT.txt begins REFUSED: /rigol/FPGA/… is not Rigol's …
Its scope app reports 00.01.00.00.00 for more than one Rigol build, so the install also checks the FPGA files. Install Rigol's 00.01.00.00.26 with MHO900_Update.GEL, then run the install again.
no NOVAOS folder on the stick
With more than one USB storage device plugged in, the install refuses before it writes anything, because it cannot tell which one to write its log to. Unplug everything but the one stick. If only one stick was in, check the file names in Prepare the stick, and that the stick is FAT32.
NOVAOS/RESULT.txt begins REFUSED: /data has … KiB free; the stage needs…
NovaOS needs more than 2 GB free on the scope's internal storage. Copy the waveforms, screenshots and setups you saved on the scope to a stick, delete them on the scope, and run the install again.
NOVAOS/RESULT.txt begins REFUSED: the stick has … KiB for the stock backup…
The stick keeps a copy of what the install replaces. Free some space on it, or use a bigger stick.
NOVAOS/RESULT.txt begins REFUSED: MANIFEST is damaged…
Download DHO800_DHO900_Update.GEL again and copy it to the stick again. A file that does not match what it says it holds is refused before anything else.
NOVAOS/RESULT.txt begins REFUSED: …: sha256 is not MANIFEST's…
The same cure: download DHO800_DHO900_Update.GEL again and copy it to the stick again.
NOVAOS/RESULT.txt begins REFUSED: the scope app did not answer *IDN?…
The install asks the running scope for its model and serial. Start it while Rigol's scope screen is up: power on with the stick and the marker files in and wait, or on a DHO800/DHO900 use Storage > Upgrade.
NOVAOS/RESULT.txt begins REFUSED: recovery no longer holds stock's image and this stick has no verified copy of it…
An earlier run already replaced part of the scope and kept the copy on the stick it ran from. Use that stick.
NOVAOS/RESULT.txt begins REFUSED: neither a DHO800/DHO900 nor an MHO900…
The install runs only on these two families.
NOVAOS/RESULT.txt begins RUNNING: checking (if this line stays…
Rigol's firmware still starts. Put the marker files back and run it again: it picks up where it can.
NOVAOS/RESULT.txt begins FAILED: the reboot did not happen…
Switch the scope off and on, and run the install again: it resumes. Rigol's firmware still starts until it does.