ELRS TX Module and Receiver Binding

This tutorial takes betafpv, Nano TX and ep RX as examples, the same for other brands.

1. Open the opentx external TX Module

ExpressLRS uses the CRSF serial protocol to communicate between the radio transmitter and the ELRS TX module. To set up the CRSF protocol, go to Model Setup, in the "Model Setup" tab, enable "External RF" and select "CRSF" as the protocol:

2. Configuration and LUA 

All TX module parameters and configurations can be changed with the help of LUA scripts.

(1) The LUA can be obtained through the firmware package

(2) Copy the LUA file ELRS.lua to the folder \SCRIPTS\TOOLS\ on the SD card of the remote control. Long press the SYS button and select the ELRS Lua script from the list to run the ExpressLRS LUA configurator.

Once the ERLS LUA script starts working, you will see the configuration options.

There are 3 settings in the LUA: Pkt. Rate (packet rate), TLM Ratio (telemetry rate) and Power.

 Pkt. Rate, this is a compromise between range and latency. The high Packet rate with a low delay. Under most circumstances, the flight distance is within 1 km, and the highest packet rate is recommended, which is 500Hz.

LM Ratio (telemetry rate), it is the frequency at which telemetry data is sent. Larger numbers mean slower telemetry updates, for example: 1:8 means sending telemetry datas every 8 frames, while 1:128 means sending telemetry data every 128 frames. More frequent telemetry will cause delays in the control link, but less telemetry is more likely to give you a telemetry loss warning. It also depends on your requirements, if you want more frequent updates then you need to set a lower number.

Power, it refers the transmit power of the transmit module. According to the test, 100mW can use 2.4GHz machine for 33km range flight.

Possible problems and solutions: 

If LUA only shows “Connection... ” on the screen, and It means that the LUA is not communicating with the ExpressLRS TX module.

Possible causes and solutions for this problem

 a.The module is not properly connected in the remote control external JR module bay. Try reinstalling the TX module inside the JR bay/chassis. A working ExpressLRS module should have the (red) LED lit.

b.You are using an OpenTX version later than 2.3.12. At least version 2.3.12 is required to use ExpressLRS.

c. The external RF has not been set to CRSF in the model settings. Go to the model settings on the remote and double check the settings. Internal RF should be turned off.

d. The ExpressLRS TX module is in WiFi update mode. The radio needs to be powered off to start the ExpressLRS module in normal mode.

(2) If the LUA shows ! ! ! Verison Mismatch! ! ! Error warning, which means you need to update the TX module firmware.

 3. Flash/Update ExpressLRS

There are many ways to flash ExpressLRS firmware into a TX or RX module. These depend on the hardware you are using and its funcyions (is there a USB socket, is there a WiFi ESP32 chip, etc.).

 The methods available for the TX module are TX update, WiFi update, and UART update.

For RX module, the available ways are BF serial pass-through, WiFi update, UART update. 

Usually, if there is ESC onboard chip for your TX and RX and it can be used by updating WiFi.

If the TX module has a USB interface, the UART update method can be used. Any RX can be updated via BF Passthrough or UART update methods.

You can find possible firmware flashing methods for each hardware item from here:

https://github.com/ExpressLRS/ExpressLRS/wiki/Flashing-ExpressLRS

ELRS firmware download URL:

https://github.com/ExpressLRS/ExpressLRS/releases

ELRS configurator download URL:

https://github.com/ExpressLRS/ExpressLRS-Configurator/releases/

4. Compile and flash TX/RX firmware 

Download and install the ExpressLRS configurator. The version of the configurator in the tutorial is 1.0.1, and the method for other versions is the same.

First step, Start ExpressLRS Configurator and choose the way: local programming firmware. (Take firmware version 1.0.0 as an example).

Second step,click GHOOSE FOLDER,choose local files.

Compiling the Transmitter Module (TX) Firmware

Select the hardware and update type to build the firmware for.

The methods available for the TX module are TX update, WiFi (wireless) update, UART (wired) update.

For RX modules, the available methods are BF serial pass-through, WiFi (wireless) update, UART (wired) update.

Regulatory Domains - Regulatory Domains, choose 915 or 868 frequency firmware settings according to your country region. Binding Phrase - Binding Phrase, basically like your VTX channel number, you should let the people you fly with know so they don't use the same phrase and cause problems. It should be a unique phrase you can remember, not a password or secret. The length must be more than 6 characters.

NO_SYNC_ON_ARM: Racing = Enabled. long range = disabled

HYBRID_SWITCHES_8: By disabling it will make all your switches in 2 position. Enable this if you want to use a 3-position switch, but note that your unlock switch (AUX1) will still be a 2-position.

ENABLE_TELEMETRY : Start additional telemetry like battery voltage, current, GPS data, airplane mode (basic telemetry like RSSI, link quality always transmit) 

AUTO_WIFI_ON_INTERVAL : Enable automatic startup of WiFi updates at boot. The timeout value can be customized (default is 40 seconds).

Once everything is set, press the BUILD button (not Build and Flash). This may take a few minutes.

After the programming is completed, a window will pop up, which contains a firmware file named "firmware.bin", which is the firmware after compilation, and you can select the binary file for programming through WIFI update later.

This error will be seen if the ExpressLRS configurator fails to detect the TX module.In this case, click "Back" to manually select the serial port.

 

5. Flash ExpressLRS TX by WiFi

First, let the TX in Wifi update mode.

Go into the ELRS Lua script on the remote, select "WiFi Update" and keep the remote on. Then connect to a WiFi network called "ExpressLRS TX Module". The password for the WiFi network is "expresslrs".

Make no mistake about the "ESP WiFiManager" Wi-Fi network - this is the hotspot network for the ESP chip, currently (with firmware version 1.0) not in use.

After connecting to the ExpressLRS TX module WiFi network, go to the browser and open this address: 

http://10.0.0.1

You will watch the ExpressLRS WiFi update page.

Pull down the page, select the compiled firmware file by pressing the "Choose File" button, and click the "Update" button to start the update process.

Wait for the webpage to refresh, and the address becomes http://10.0.0.1/update. The page might look like this:

Don't worry, waitting at least 10 seconds until the update is finished. 

6.Compile Receiver(RX) Firmware

Compile RX firmware is similar with compiling TX, Select "xxxx RX" in the Device option

Attention:The device options are the same as the above TX settings

7. Flash/ Update ExpressLRS RX by WiFi 

First, the RX must be put into WiFi update mode. To do this, you need to power up the receiver, wait for the indicator light to flash quickly to enter WiFi, and the receiver will go into automatic WiFi upade mode. Then connect to a WiFi network called "ExpressLRS RX Module". The WiFi network password is "expresslrs".
The rest of the steps are the same as "Refresh/Update ExpressLRS TX via WiFi" above.

Notice: Wait for the page to refresh until the URL bar shows 10.0.0.1/update (it looks like the page is frozen for a while). Wait at least 10 seconds after the page refresh indicates that the upload is complete. It takes some time for the firmware to flash after uploading, so don't unplug until you see activity on the LEDs or you'll brick the device due to unplugging it in the flash. Only use the second method below to reflash the firmware.

Successful programming page:

8. The setting in betaflight

Open betaflight Configurator, On the "Ports" tab, connect the ELRS receiver to the UART to enable "Serial Digital Receiver". Press the "Save and Reboot" button.

 In the configuration tab, under the "Receivers" section, select "Serial Digital Receiver", then select "CRSF" in the second option, click "Save".

9. Binding TX Module and receiver.

After the receiver is powered on three times in a row, it can enter the frequency Bing mode, and the receiver is powered on and off three times. At this time, the indicator light of the receiver changes from slow flashing to double flashing, which means the receiver has entered the binding mode.
Next, go to the SD card page of the remote control and find ELRS on the TOOLS page.

After entering EXpressLRS, press the “[Bind]” button below, and the TX Module will automatically enter the binding mode.

After the binding is successful, the receiver indicator will change from double flashing to slow flashing, indicating that the binding is successful. After a while, the indicator light will turn steady on, indicating that the connection is successful. Automatic connection, no need to rebind.

The following is the meaning of the status of the receiver indicators:

Indicator light status

meaning

Always bright

successful binding or successful connection

Fast flash 

entered the WiFi mode

Double flash

entered the binding mode

Slow flash

no TX module signal connection