01 / Read both installed versions

Record the complete TX module and RX versions. Follow the TX guide for Lua information; Wi-Fi receivers show their version in the Web UI banner. Lua Other Devices receiver queries require an existing connection.

Major, minor and patch positions, example 3.1.2
Original version-format diagram based on ExpressLRS documentation.

02 / Compare the first number

Versions use Major.Minor.Patch. Official examples pair 3.1.2 with 3.0.1, but not 3.2.0 with 2.4.0. The 4.0.0 notes explicitly exclude 3.x, 2.x and 1.x compatibility. Matching binding phrases do not bridge major versions.

Same-major example and incompatible cross-major example
Original diagram: official 3.1.2/3.0.1 example and 4.x/3.x release-note compatibility; not a hardware test.

03 / Check hardware before firmware

A matching major version is only one check: verify the radio band and binding configuration. Never flash another model target. The 4.0.0 notes remove STM32 hardware support, including R9M, ExpressLRS PP and Ghost; do not apply a generic upgrade plan to these devices.

04 / Identify the receiver type

Standalone UART and SPI receivers use different update paths. SPI ELRS support depends on FC firmware; this tutorial is not an SPI flashing procedure. Check the board documentation and our SPI/UART guide.

05 / Check the result

Editorial checklist: read both versions again, verify target, band and binding settings, then check stick response and failsafe with propellers removed. A connected indication is not a control test. Keep the original configuration and investigate mismatches before reflashing.

Sources & verification date

Official sources checked 9 October 2026. A compatibility tutorial, not recent release news; no hardware tests performed. Primarily for standalone UART ExpressLRS receivers; SPI support must be checked against FC documentation.

Equipment & support