Updating Happymodel Series High-Frequency Head Firmware
Important
This guide applies to all the following HappyModel TX modules: ES24TX, ES24TX Lite, ES24TX Iron Man, ES24TX Slim Pro, ES24TX Pro Micro, ES900TX. Any module with 'Pro' in its name uses this method.
I. Via WiFi
On your computer, launch ExpressLRS Configurator and select WiFi in the Flashing Method options.
Method 1: Manual Upload via Local WiFi
Important
This method is only available if you have previously flashed or configured your TX module to use your home WiFi SSID and password, and the module can successfully connect to that WiFi network.
- On your computer, launch ExpressLRS Configurator, ensure the Official Releases tab is active, and select the Released version to flash to your TX module.

- Select the Device Category and Device target that match your hardware.
If using ES24TX:
- Device Category: Happymodel 2.4 GHz
- Device: HappyModel ES24 2.4GHz TX for ES24TX (non-Pro Micro), ES24TX Lite, ES24TX Slim
- HappyModel ES24 Pro 2.4GHz TX for ES24TX Pro Micro
- HappyModel ES24 Slim Pro 2.4GHz TX for ES24TX Slim Pro
If using ES900TX: - Device Category: Happymodel 900 MHz
- Device: HappyModel TX ES900TX

- Set the Flashing Method to WiFi

- Set the firmware options for the device.
- Regulatory Domain (required, select the domain appropriate for your location or country where you will be flying)
- Binding Phrase (optional but highly recommended. Note this phrase as it should be the same on your other devices, otherwise they won't bind or sync)
- Local WiFi Network Credentials (optional. Will be used when the device next enters WiFi mode).

- Click the Build button.

- After the build process is complete, a Temp folder window should pop up.
- Do not close this Temp folder as this is where you will get the firmware file in the subsequent steps.
- If you plan to upload the firmware file later using a phone or tablet, copy the firmware file to your device.
Important
With the release of ExpressLRS 3.3.0 and ExpressLRS Configurator 1.6.0, only one file firmware.bin will be displayed, use this file for the subsequent steps.

7. Press the SYS key on your transmitter, the radio will display the tools menu where you can find the Lua script.
- Older radios or radios with only one menu button must long-press the Menu key to access the System Menu.
- Refer to your Radio user manual for instructions on how to access the system menu.
- Scroll down and select ExpressLRS. If you can't find the script, download the ExpressLRS Lua script and save it to your Radio's SD Card Scripts/Tools/ folder.

- Press Enter to load it, scroll down and select WiFi Connectivity

- Select and press Enable WiFi

- Entering WiFi mode will be displayed, keep this page open.

- Turn on WiFi on your computer and connect to the transmitter's WiFi network. The password is lowercase :expresslrs.

- After connecting to the transmitter's WiFi, your browser will automatically redirect to the firmware flashing webpage. If it doesn't redirect automatically, manually enter 10.0.0.1 in your browser and press Enter to open the transmitter configuration page. On the configuration page, click Load Firmware, select the downloaded bin firmware file, and flashing will start automatically.

- Wait until the following popup appears on the webpage, which indicates that the transmitter firmware has been successfully flashed.

- On your transmitter, long press RTN to exit the ExpressLRS Lua script. Then reload it to check the ExpressLRS firmware version and verify that your TX module has been updated.
Method 2: Automatic Upload
This method is only available if you have previously flashed your TX module to use your home WiFi SSID and password, and the module can successfully connect to that WiFi network.
Additionally, MDNS must be working properly for your browser to resolve the address http://elrs_tx.local and load the ExpressLRS Web UI from that address. - Press the SYS key on your transmitter, the radio will display the tools menu where you can find the Lua script.
- Older radios or radios with only one menu button must long-press the Menu key to access the System Menu.
- Refer to your Radio user manual for instructions on how to access the system menu.
- Scroll down and select ExpressLRS. If you can't find the script, download the ExpressLRS Lua script and save it to your Radio's SD Card Scripts/Tools/ folder.

- Press Enter to load it, scroll down and select WiFi Connectivity

- Select and press Enable WiFi

- Entering WiFi mode will be displayed, keep this page open.

- On your computer, launch ExpressLRS Configurator, ensure the Official Releases tab is active, and select the Released version to flash to your TX module.

- Select the Device Category and Device target that match your hardware.
If using ES24TX:
- Device Category: Happymodel 2.4 GHz
- Device: HappyModel ES24 2.4GHz TX for ES24TX (non-Pro Micro), ES24TX Lite, ES24TX Slim
- HappyModel ES24 Pro 2.4GHz TX for ES24TX Pro Micro
- HappyModel ES24 Slim Pro 2.4GHz TX for ES24TX Slim Pro
If using ES900TX: - Device Category: Happymodel 900 MHz
- Device: HappyModel TX ES900TX

- Set the Flashing Method to WiFi

- Set the firmware options for the device.
- Regulatory Domain (required, select the domain appropriate for your location or country where you will be flying)
- Binding Phrase (optional but highly recommended. Note this phrase as it should be the same on your other devices, otherwise they won't bind or sync)
- Local WiFi Network Credentials (optional. Will be used when the device next enters WiFi mode).

- Click the Flash button.

- Wait for the upload to complete. A green success bar will appear in ExpressLRS Configurator.

- On your transmitter, long press RTN to exit the ExpressLRS Lua script. Then reload it to check the ExpressLRS firmware version and verify that your TX module has been updated.
2. Via UART
On your computer, start ExpressLRS Configurator, and select UART in the Flashing Method options.
- Connect your external TX module to your computer via a USB data cable, preferably after removing it from the RC transmitter.
- Verify that your TX module is properly detected as a USB-to-UART device. Windows users can check this in the Ports (COM & LPT) group of Device Manager.
If the TX module is not properly detected, drivers are required. Common USB-to-UART chips used in ExpressLRS modules include: CP210x, CH340, and CH9102 (driver download page link).
You can download drivers from here: https://www.silabs.com/developer-tools/usb-to-uart-bridge-vcp-drivers
- These TX modules have switches to change how the USB port interacts with different components in the module. Ensure it is set to the 'TX Module Flashing via UART' position.
ES24TX Full Size:
ES24TX Lite, for Jumper T-Lite:
ES24TX Slim, Iron Man:
ES24TX Slim Pro:
ES24TX Pro 1W:
- On your computer, start ExpressLRS Configurator, ensure the Official Releases tab is active, and select the Released version to flash to the TX module.

- Select the Device Category and Device target that match your hardware.
If using ES24TX:
- Device Category: Happymodel 2.4 GHz
- Device: HappyModel ES24 2.4GHz TX for ES24TX (non-Pro Micro), ES24TX Lite, ES24TX Slim
- HappyModel ES24 Pro 2.4GHz TX for ES24TX Pro Micro
- HappyModel ES24 Slim Pro 2.4GHz TX for ES24TX Slim Pro
If using ES900TX: - Device Category: Happymodel 900 MHz
- Device: HappyModel TX ES900TX

- Set the Flashing Method to
UART
- Set the firmware options for the device.
- Regulatory Domain (Required, select the domain appropriate for your location or country where you will be flying)
- Binding Phrase (Optional, but highly recommended. Note this phrase as it should be the same on your other devices, otherwise they will not bind or sync)
- Local WiFi Network Credentials (Optional. Will be used when the device next enters WiFi mode).

- Click the Flash button.

- Wait for the upload to complete. A green success bar will appear in ExpressLRS Configurator.

- Unplug your TX module from USB. Return any DIP switches or jumper blocks to their 'normal operation' position.
- Reconnect your TX module to the external module holder of your RC transmitter.
- Use the ExpressLRS Lua Script in the tools menu to check if the firmware version has been updated.
III. How to Update ES915TX/ES868TX Firmware:
ExpressLRS 3.5.x will be the last version to support STM32 based hardware. This includes Happymodel PP, ES915 Tx and Rx, early NamimnoRC Flash and Voyager, FrSky R9, SIYI and ImmersionRC hardware.
Due to the limited computational resources of the STM32 platform and functional gaps (such as WiFi, Bluetooth, and expansion features), a less efficient ExpressLRS version was created, which also placed a significant maintenance burden on the development team.
Method 1: Using Stock_BL
- Launch ExpressLRS Configurator on your computer, ensure the Official Releases tab is active, and select the Released version to flash to the TX module.

- Select the Device Category and Device target that match your hardware.
- Device Category: Happymodel 900 MHz
- Device: HappyModel ES915 TX, HappyModel ES868 TX

- Set the Flashing Method to Stock_BL

- Set the firmware options for your device.
- Regulatory Domain (Required. Select the domain appropriate for your location or country where you will be flying).
- Binding Phrase (Optional but highly recommended. Note this phrase as it should be the same on your other devices, otherwise they will not bind or sync).

- Click the Build button.

- Wait for the process to complete. A green success bar will appear in ExpressLRS Configurator.

- On your computer, open the Temp folder which contains the firmware.elrs file. Copy and paste the firmware.elrs file to the RC transmitter's SD card (preferably into a folder for easy access).
- On the RC transmitter, open the System Menu
- On newer radios, you can press the SYS key to open the System Menu
- On older radios or radios with only a menu key, long press the Menu key to open the System Menu
- Using the Page keys, navigate to the SD-HC card page, scroll down and open the folder where you can find the firmware.elrs file.
- Highlight the file and hold the Enter button, then select 'Flash External ELRS'. Wait for the firmware writing to complete.
- Use the ExpressLRS Lua script in the Tools page of the System Menu to verify that the firmware version has been updated.
Method 2: Using STLink
- Carefully disassemble your TX module to access the main board.
- Connect the STLink V2 debugger to the pins on the main board as shown in the image below.

- Connect the STLink V2 debugger to a USB port on your computer and ensure it is properly detected.
- Launch ExpressLRS Configurator on your computer, ensure the Official Releases tab is active, and select the Released version to flash to the TX module.

- Select the Device Category and Device target that match your hardware.
- Device Category: Happymodel 900 MHz
- Device: HappyModel ES915 TX, HappyModel ES868 TX

- Set the Flashing Method to STLink

- Set the firmware options for your device.
- Regulatory Domain (Required. Select the domain appropriate for your location or country where you will be flying).
- Binding Phrase (Optional but highly recommended. Note this phrase as it should be the same on your other devices, otherwise they will not bind or sync).

- Click the Flash button.

- Wait for the process to complete. A green success bar will appear in ExpressLRS Configurator.
- Disconnect the STLink V2 from the TX module PCB and then reassemble the module.
- Reconnect the TX module to the RC transmitter and use the ExpressLRS Lua script to verify that the firmware version has been updated.
— This article is referenced from ExpressLRS Getting Started: https://www.expresslrs.org/quick-start/transmitters/es24tx/**