Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

Flashing elrs firmware

I thought I would write something about flashing firmware that everyone using elrs should know, and likely knows already, just in case someone doesn`t.

I am an elrs believer, after 12 months I remain convinced it outperforms other rc systems. An issue is that at regular intervals you may find yourself flashing rxs and tx modules, as there are frequent firmware upgrades to elrs and to edgetx. The wifi method is by far simpler than uart methods, but occasionally the wifi flash may fail with an error message such as 'not enough space'. And then the uart method can also occasionally fail, either because there is a mess on the memory of a rx from earlier efforts, or lack of space.

Fortunately a solution to this flashing problem is now at hand. ELRS Configurator v1.6.0 is now available, and elrs (since v 3.0.1) has a new features 'erase before flash' and 'force flash'.
Uart flashing is done is with a recovery dongle. John Hopke shows how its done with these 2 vids.

Flashing with UART using Betafpv dongle
1. ER6
2. ER4

John uses the BetaFPV ExpressLRS Recovery Dongle ELRS Flashing Tool $15.00  on sale and in stock at FpvFaster at Lidcombe. It comes with the necessary cables and plugs.

Interesting that they use 'FTDI module' as a generic term for a USB to TTL serial converter. FTDI is a brand name and the FTDI company makes many different types of USB to serial converters.

The BetaFPV module you mention uses a CP2102 converter chip, which I have found to be far less user friendly than FTDI chips.

I have a variety of FTDI USB to TTL serial converters at home. I should see if any of them are supported for doing this sort of flashing recovery.

The uart method to flash is only needed when the wifi method fails. I plan to test the uart flashing method shown in Johns vids on my matek R24 P6 rxs, as I tried to update their firmware from elrs 3.0.1 to elrs 3.3 using Configurator 1.6.0 and selecting target R24-P PWM, using the wifi method, and I failed. When I look at the rx in wifi (in browser at it says I am on "Generic ESP8285 + 6xPWM 2.4Ghz RX and 3.0.1".

When I plug in the betafpv recovery dongle on my mac, in the configurator "manual serial device selection field" I get a choice pop up called /dev/tty.usbserial-0001, and the dongle lights up. So I know the serial connection to the dongle is working.

[I also have another dongle, 018-USB-PL2303HX (x1) - USB to TTL Serial UART RS232 Adaptor (PL2303TA) from CoreElectronics. When plugged in my mac it shows up in the manual serial device selection field. While the Betafpv dongle may only work for rxs, the PL2303TA dongle may work on tx modules also.]

To work out where to plug the 4 dongle leads in on the R24-P6 (they are +, -, tx and rx), here is another good video by John. The leads are labelled at the dongle end and also on the P6 the pwm signal pins are labelled so you can find rx and rx. This video at 6 min 10 sec shows how the tx (yellow wire) on the dongle goes to the rx signal pin 3, and the rx (blue wire) on the dongle goes to the tx signal pin 2.

The other video above on the ER4 (link in first post of this thread) also shows how the tx on the dongle goes to the rx signal pin 3, and the rx on the dongle goes to the tx signal pin 2.

So the new Radiomaster rxs (ER4 and ER6) differ from each other. The ER4 works like the matek rxs, where you simply plug the dongle leads in to the PWM pins. But the ER6 requires a special lead to be made up, to allow a dongle connection for the uart flash. Hopefully a uart flash will not be needed, however I plan to make this lead just in case, and I ordered the kit of the parts as John listed under the ER6 video (link in first post of this thread), and he provides detailed instructions.

I would be interested to hear of any experiences with the uart method and Configurator v1.6

Yes the matek r24-P6 receivers need to use the DIY2400 Ex target in Configurator < 1.6, and the generic ESP8285 target in newer versions.

Does the ER6 do firmware updates through the CRSF port? It should have come with the appropriate connector.

Ok, just watched the video. It can use the included wire.

I'm looking at getting a Radiomaster ER8 soon, so i might make up an FTDI to jst-gh adapter cable to suit

(11-09-2023, 12:29 PM)caffeine Wrote:  re: Yes the matek r24-P6 receivers need to use the DIY2400 Ex target in Configurator < 1.6, and the generic ESP8285 target in newer versions.

This is a really useful observation.  

First I will say what happened with my uart flash. I was hoping with v1.6 of configurator, I could choose MATEK R24-P PWM 2.4GHz RX firmware for the R24-P 6and go for elrs v. 3.3. I tried a uart flash as above with 2 R24-P6 rxs, that previously had v 3.0.1 on them and the rxs previously worked.  I started with no erase ticked, and the flash was said to work, but the rxs then did not work. I then tried ticking erase, I tried moving them back to 3.01, I did wifi flashes, and eventually I got one working OK, but the other now does not work. I do not think there is mechanical or heat damage, just a software/firmware mess, and the new erase function in configurator v1.6 does not seem to do the trick as I had hoped... it is disappointing.

I plan to try Config 1.6 again, and what should I use for target? I see in 1.6 under generic targets there is Generic ESP8285 2.4Ghz RX, so it is possible - given your comment -  if I try again another day with this target I will have more luck. But I cannot understand why someone has not realized you should tell the users which firmware to use, how could you figure out instead of choosing matek R24-PWM you should choose generic? Is there a place this is written down? In what universe is matek generic? And why when John Hopke did the video he had success, and when I did exactly what he did, it failed?

... too many questions!

I will avoid the uart flash when possible, the trick when you hold down the microscopic button with one hand while powering up the dongle with the other is not as simple as John's vid showed, eventually I was able to do it when I fastened the dongle securely to the bench with a clamp. The hope that we could move on from holding down micro buttons while powering up with 3 hands has not been realized.

The matek product page shows the necessary firmware target as one of the first bits of information.

Having said that, the first time I did a firmware upgrade when I bought my first receiver, I didn't read the instructions and just picked the 'Matek PWM' target, which led to similar binding issues. I'm not sure what that target is for but it certainly leads many people astray.

I just upgraded my radio and 5 receivers to 3.3.0 via wifi with the new 1.6 Configurator with no issues to report.

brilliant! Thanks for sorting that out, its good to know the R24-P6 flashing works. I now plan to try it with a uart flash with erase ticked. I have 3 kinds of matek rx and I will soon report back on how I go with 1.6 Configurator.
When I get my ER6 rx connector kit (as described in the above ER6 video

then I will make up a spare cable available for loan that allows the ER6 rx to be uart flashed.

While Bardwell recommends wifi flashing whenever possible (it usually works and is very simple), Hopke is leaning towards uart flashing as a preferred method. Uart is also simple once you are clear on the details, and wifi flashing can sometimes be a bit touchy with the website collapsing and needing a reload.

I have now tried the uart flash on several rxs, and the procedure worked fine. But I will still aim to use the wifi method as the primary approach, and keep the uart flash in reserve for difficult cases.

Bardwell has provided a good explanation as to why firmware names sometimes cause confusion when flashing.

Had I seen that video, I would not have had the problem in my post above, because I could have used the wifi connection to find out what firmware is on the rx or module, and would have known to select that firmware for the update. In Bardwell's example, he had a radiomaster rx with happy model firmware on it.

Bardwell recommends always use the wifi method for flashing.

I have made a flashing cable using an FTDI TTL-232R-5W-WE cable.

Unfortunately I can't access those pins on any of my receivers at the moment (they're all hot-glued inside planes) however I'm passing the cable on to Andrew Ross this afternoon so he can try it out.

Forum Jump:

Users browsing this thread: 1 Guest(s)