How to bind ELRS to receiver (Radiomaster TX16s)?

I’m making my first steps in both RC and Ardupilot hardware (I’ve just flown DJI FPV before). I bought the Radiomaster TX16S MKII ELRS version and a radiomaster RP1 ELRS receiver. I now want to set things up, but I’m kinda confused about the setup. Since I’ve got an ELRS transmitter and an ELRS receiver, both from the same brand even, I thought it would be really simple. I just found this video about “how to set things up in under 5 minutes” and the guy basically does a speedrun of downloading programs, flashing new firmware, setting up a new wifi network and changing all sorts of settings, just to bind the transmitter and the receiver.

So my first question is; is it really that complex? I thought I bought two ELRS devices from the same brand. Do I still need to flash new firmware?

Second; If I press SYS on my tx16s I see I already have a Lua script called ExpressLRS. When I select that, it just shows the loading screen below. It’s been sitting there for at least ten minutes now, and I guess it shouldn’t be loading that long. What’s wrong here?

Any tips (or encouragement) are really welcome… :grimacing:

I just found the docs on the website where it says the following:

If the parameter list does not populate after a few seconds, and it’s stuck at Loading…, first verify the ExpressLRS module has power by checking its LED. If there is no LED lit up, it is possible the Protocol set for the External Module is incorrect (should be set to CRSF) or that the module is not properly connected to the pins of the JR bay of the radio. Another possible reason is that you haven’t updated the firmware of the module to version 2.x.

But since ELRS is built in in the radio, there is no specific LED for it (not that I know of at least). They’re also talking about the firmware in “the module” with which I also suppose they mean the built in module. Overall I don’t know what I should do with this information. Does anybody else know?

I wondered if I needed to install fw and all the rest, why can’t it work on the pre-installed fw?
The trouble is that it might, but as a newb if it doesn’t you won’t be experienced enough to know why or to be able to sort it. So we go through the whole nerdfest and follow all the forum threads and yt vids and ask all the questions and maybe if we are lucky it might work in the end. (Till next month when we need to update….)
The other option is don’t go open/edge tx hardware and just use spectrum or something and depending on what fc you use you can literally plug a satellite rx into the fc and turn it on and it works. But… the best experience (yaapu etc) all require open, and realistically you will probably need to be doing pass through esc fw or parameter changes and fw updates on other things in your build eventually so it kind of comes with the territory of diy autonomy…

On a positive note, I can say that what a user can achieve using ardupilot without having any lua/python knowledge at all is truly amazing and a huge thanks to all the contributors and developers who have helped make it all possible, so we the user can just do the easy setup and tuning and enjoy the finished product

To you question, binding can be done two ways, the binding phrase or some boot mode method, but I just did the phrase because I figured I would no doubt have to be in there anyway.

With these transmitters the rf module (internal or external) isn’t always on and might need to be selected through the settings of the radio.

@Scott_Nunan - I searched through the settings in the Radiomaster, but the only setting I can find is set to CRSF as you can see below. The last picture is of the installed version. Any ideas what could be wrong here?

ELRS is CRSF protocol… But, I don’t have any ELRS components (use TBS stuff) so can’t answer your questions in any more detail.

I am almost positive that the TX16S does not output CRSF from the 4-1 module that comes with them. You will need to get an external module to do ELRS.

I specifically bought the ELRS-only TX16S as can be seen in the screenshot below. So I guess it should definitely be in there. Any ideas?

ahhh you got the Mark II. Do you know if both ELRS are on the same major version 2.x or 3.x. Also can you plug in radio and see what version of the script you have. I know this sounds dumb but make sure they shipped the correct radio to you

I found it! For future readers (including myself):

I had to enable the ELRS/CRSF not only in
SYS --> HARDWARE --> Internal RF
but also in
MDL --> SETUP --> Internal RF

After that, choosing the ExpressLRS Lua script in the home screen gave a menu with all sorts of options.

I then simply plugged/unplugged the RX three times until I had a double blink of the led on the RX and then I chose [bind] in the Lua script on the TX. The led on the RX then had a solid/stable green led, which means it’s binded.

Finally, as described here I set the parameters in ArduPilot using QGroundControl to the following (in my case SERIAL5 for TELEM3 on the Pixhawk 6c, for different ports look here)

RSSI_TYPE = 3 (ReceiverProtocol)

A reboot of the Pixhawk later I could see the manual input from my radio tx in QGroundControl.

Thanks for your time and tips!

1 Like