Flash Frsky Receiver Firmware – R-XSR, XSR, X4R, XM+, D4R

In this article we will show you how to flash/update firmware on your Frsky receivers such as D4R-II, X4R-SB, XSR and XM+. This is useful when you have mismatched firmware that prevents you from binding, or you might simply want to update to the latest firmware version.

The same methods described in this guide should also work on other D series and X series RX, such as the D8R-II Plus and X8R.

Why do we need to flash receiver firmware?

Firstly, updating firmware to keep your Frsky RX up to date with bug fixes and improvements. But beware that new firmware can sometimes introduce new bugs that break existing features unexpectedly. Therefore we don’t recommend messing with new firmware if everything is already working for you, unless you know what you are doing.

Secondly, there are 2 different types of firmware for Frsky RX and the transmitter RF module, they must have the same type of firmware, otherwise they won’t bind/work. The two types of firmware are:

  • Non-EU firmware (International)
  • EU LBT firmware

Note that your transmitter’s internal RF module firmware is not the same as your Taranis firmware. The RF module is an internal device that sits inside of your Taranis.

Think of it as your Taranis is in charged of the interface, while the RF module talks with your RX and they are running 2 separate firmware. For example, flashing firmware on your Taranis, will not affect your RF module, and vice versa.

Differences between EU and Non-EU firmware?

Originally there was only 1 firmware which is the International version. But later on the EU (LBT version was added to comply with regulations in the EU. LBT stands for “Listen Before Talk”)

All you need to know is that EU firmware won’t work with non-EU firmware, so if you are having problem binding RX to TX, it’s likely that your RX has the wrong firmware and need flashing.

What firmware do I have?

If you got your TX or RX from Chinese vendors like Banggood, Gearbest or Aliexpress, they will most likely come with international firmware.

If you are not sure, here is how to check what firmware you have on your Taranis.

The differences between these firmware in a more technical terms

  • Sensitivity: -90 dBm on EU version while the non-EU has -104dBm. Note that the reduced duty cycles, and software engineer magic supposedly makes the range the same. However if you are flying with something that might hinder your RF signal (like a carbon fiber frame), you might want to pay closer attention to antenna placement as your range will likely be lower on the EU version
  • Listen Before Talk (or broadcast) is now required by EU law

Flashing receiver firmware in a nutshell

X-Series Receivers (XSR, X4R-SB, X8R, etc)

We can flash firmware on these RX through the SmartPort telemetry port since it is a bi-directional serial port (aka half-duplex). You can even use your Taranis as a programming tool to update the firmware on that.

D-Series Receivers (D4R-II etc)

However, the ways we flash firmware on the D Series and X series RX are different due to the receiver hardware. (The telemetry port on the D series is not a bi-directional serial port)

Fortunately, the D Series RX do have a normal serial port (TX and RX), so you can wire it directly to an USB FTDI adapter.

X4R-SB, XSR, R-XSR, X8R Receivers


This should work on any X-Series FrSky receiver (with an X at the beginning of the name, such as XSR and X8R), but this guide is focused on the X4R-SB. Flashing the new R-XSR is exactly the same as XSR.


Summary of the steps

  1. Download the firmware you want to flash
  2. Boot your Taranis TX into bootloader mode
  3. Connect Taranis to computer
  4. Connect your receiver to the radio
  5. Flash your receiver from your radio
  6. Bind and fly


  1. First of all, download the firmware you want from Frsky’s website. The folder should contain both the Non-EU and LBT(EU) .frk files.
  2. To start you are going to need to put your Taranis into bootloader mode. To do this, make sure your TX is swtiched off first, then press both of the lower trims (rudder and aileron) toward the inside of the transmitter.

While holding those two trims, now switch on the TX and it will turn into bootloader mode.


3. Now that you are in bootloader mode you need to connect your Taranis radio to your PC using the mini USB cable which connects into the back of your Taranis radio.


If you get a pop up window saying “installing device drivers”, it is probably your first time connecting your Taranis to the computer under bootloader mode. The driver installation should happen automatically, so wait until the little dialog box disappears or states that the drivers were successfully installed.


After the drivers are installed you will have two newly mounted drives (F and G drives in my case). Ignore the Taranis drive as you are not going to be using it, it should be the other drive in our case “TARANIS1_SD” (it might be called something else in your case, if you are not sure, just verify it has the same folder structure as shown in the next step)


Check if you have “FIRMWARES” folder in there, if not, create it. This is where we are going to drop our receiver firmware files. Extract and copy the .frk files in your “FIRMWARES” folder. After that, unmount the drives (safely eject) and then unplug the USB cable. Now turn off your Taranis.

flash-frsky-rx-firmware-taranis folders

4. While your radio is off connect the receiver to the pins located inside the Taranis’s external TX bay. You can use female to female jumpers to plug into the Taranis pins.


Most Frsky RX’s has an input voltage of 3.5V to 10V, so make sure you don’t damage your RX by powering it with voltage above 10V.

If your Taranis is powered by 3S battery (11.1V), you could fry your RX if it’s only rated for 10V max. In this case you might want to power your RX separately, e.g. by a 5V source or 2S LiPo.

Here is the connection for the X9D Plus. From your RX, ground goes to ground, 5V+ goes to battery, and Smart Port connects Antenna pin, as shown in the following table:

X-Series RX Taranis TX module bay
VCC Battery +
GND GND (Ground)
Smart Port Antenna


Make sure your servo cable has the correct wire order! The cable that comes with most Frsky receivers are in the wrong order, please check. Otherwise you can burn your receiver.

Connection example for the X4R-SB.


For those with a Taranis QX7, you need to use the “Smart Port” on the bottom of the radio, on the left of the SD Card slot. The pinout is different too, correct pin order is GND, +5V, S.Port going from left to right (SIG pin being closest to the SD Card slot). You can simply plug a servo cable into it.

5. Now Turn your radio back on as normal (make sure USB cable is not plugged in, and without pressing the trim buttons this time), hold down the Menu button for about 2 seconds, and scroll to a page that says “SD Card”. Scroll down to the folder where you placed the firmware files, select the file, and hold down the Enter button.

Warning for MAC OS users:

MAC sometimes generates an additional file next to your firmware file, which has the “_” (underscore) before the filename. For example, if the firmware file was called “abc.frk”, you might see “_abc.frk” in the same directory.

DO NOT select the one with undersocre e.g. “_abc.frk”, this will brick your RX. Instead only select the .frk file without the underscore symbol.

You should see the option “Flash external device”, select that, and the flashing process will begin. The receiver will be powered on, and start flashing. You will also see “Writing…” on the Taranis screen and it should finish within 2 mins.


6. When it’s done, your receiver will powered off, and you are okay to disconnect the wires, and you can now bind the RX with your TX.

XM, XM+ Flashing

Very similar to how we do it with the X series receivers above. You can flash it with the Taranis, but instead of connecting the “Antenna” Pin on the Taranis to Smart Port on the RX, you can connect it to the “SBUS” pin on the XM or XM+ receivers.

The rest of the procedures are the same.

D series Receiver (e.g. D4R-II, D8R-II Plus)


What’s required


  • Download RX Firmware
  • Bridge ch1 and ch2 pins
  • Connect Rx to PC
  • Use FrSky update tool
  • Bind and fly


To start out on this method you are going to need a USB-Serial adapter (aka FTDI adapter), which can make your target device talk to your computer. If you don’t have one, check if you computer has a DB9 serial port which also works (explained at the end of the article)

First of all, download the desired firmware from Frsky-rc.com and make sure you get the correct firmware for the receiver you are flashing.

Short channel 1 pin and channel 2 pin. This will force the receiver into bootloader mode when it powers up. Connect power to your receiver. I like to use an ESC or BEC coming off from a lipo.

After the download completes extract the zip file to a folder on your PC, run the exe file provided with the firmware.

Connection is between the D4R-II RX and FTDI is fairly straight forward.


For other D series receivers you should be able to find the TX/RX pins somewhere on the RX, for example on the D8R-II Plus:

flash-frsky-rx-firmware-d series P1 port


Then plug your receiver into serial or USB, wait a few seconds for the PC to recognize it. You should see a new COM port appearing, if nothing appeared you might have to close the frsky Update program and reopen it.

After selecting the new COM port, which is our RX, now select the .frk file that came in the firmware package, it should be the only one. Click to download. When the program finishes and goes to 100% you should now have an updated receiver!

Your D4R-II RX is now updated.

Edit History

  • May 2016 – Article created
  • July 2017 – Article updated for OpenTX 2.2, Added instructions for XM/XM+

34 thoughts on “Flash Frsky Receiver Firmware – R-XSR, XSR, X4R, XM+, D4R

  1. Andrew C.

    Thank you for this very useful article.

    For those using a QX7 on 3S power, I can confirm that the voltage supplied to the S.Port is 5V. I had was initially concerned that the full pack voltage may have been applied to the S.Port. However, a test measurement and an actual receiver flash proved this not to be the case.

    See also:


  2. Keith Burrage

    Really good tutorial, if only I had noticed the warning about Mac OS!! So now I have bricked my X4R SB, can it be recovered or do I have to renew it?

    1. Jesse

      Really need to put that warning BEFORE the part about flashing the firmware. Killed my R-XSR for the same reason as above.

  3. Nicholas

    I just got a micro quadcopter running Omnibus F4 Nano with Frsky XM+ receiver directly soldered. Currently the receiver does not seem to send RSSI on channel 16 so I am looking at updating the firmware on the receiver to enable this.

    My question is can I flash the firmware on the XM+ using a Taranis while it is still connected to an unpowered flight controller as I don’t want to desolder the receiver if it can be avoided?


  4. Reinhard Plietsch

    great guideline, worked like a charm. Maybe worth a hint: Since you need the S.Port pin of the R-XSR to flash it, it is NOT a good idea to do what I did: Doing the S.Port hardware inversion mod first (by cutting the existing trace to pin 3) and THEN trying to flash update the R-XSR. Had to reconnect the cut trace with some squeezers :-)

    squeezers = tweezers :-)

  5. Rodrigo Larenas

    Hi Oscar!, I’m having hard time updating my XSR rx (wanna use LUA) , my Taranis X7 does have a S-port on the bottom, but when y tried to flash the RX alway got a messagge “FW update error bottom pin no resp”.

    Any ideas?

    Open Tx 2.2.0

  6. Matthew W Morley

    I just tried this with my R-XSR and It started to flash from my X9D Plis. About halfway through the flash I got got white smoke and now it’s dead. Is there anything I can do. I checked everything. Connections were all correct. I’m using the stock battery (this RX is rated to upto 10 Volts).

  7. Jarret

    In part 5, you may want to remind users to normal start their Taranis, or unplug the USB connection to PC as the bootloader option isn’t used at this point.

  8. Mark Euro Eufemio

    I need some help.. after flashing two of my xsr.. now i cannot bind them to my taranis q x7.. 2 lights are on, no flash.. I dont know what to do next.. and i try to reflash them.. but my x7 having an error.. when trying to flash..

  9. Paxn

    Just fried my Receiver by flashing while powering the Taranis with a 3S Battery…
    PLEASE ADD TO YOUR TUTORIAL: Taranis must NOT be powered with more than 2S as this voltage is passed to the RX!!!

    1. Oscar Post author

      thanks for the warning man, sorry for you loss, I would’ve never realize it’s a problem as I am using stock battery.

  10. Jorge

    This did not work for me. When I use the smartport on the X7 nothing the xsr does not power up and when I try to flash it says error finding pins.

  11. Alex

    Good afternoon!
    I decided to buy the first quadrupter. I bought a set of Vantac Q100 and Taranis Q X7. I could not connect Taranis to the receiver (FrSky XM). I tried to reflash the receiver according to the instructions https://oscarliang.com/flash-frsky-rx-firmware/. Taranis wrote (FW update error, version request, failed). Now when the receiver is connected to the FC, only the red light is on it. Both in bind mode and in normal mode. I tried to use all the firmware from the FrSky website. The error is repeated. I tried to use the firmware from this topic –

    . Without changes. Help me please

  12. oliv

    My 50ct for binding QX7 to XSR (as it’s can be a pain in the a**). I’ve recently bought a non-US QX7 (2017/06), and an EU XSR.

    I first noticed these prerequisites (for me) to flash :

    – the smarport of the QX7 (near the SD card slot) must be used to flash RX firmware if openTX 2.2 newer than 2017/02/13 (backside pins won’t work : I had a 2017/02/23 version)

    – inverse : only the backside pins work with X7 Firmware (openTX 2.2) from 2017/02/13 (and maybe older ones)

    I’ve tried all firmwares from frSky site (EU/non-EU) for both the XSR and the QX7; impossible to bind RX and TX in non EU firmwares, here the only pair which worked for me (and permit to bind TX/RX) :

    – SD Card version 2.2V0006
    – FIRMWARE-X7_170213 (flash bootloader then reboot in bootloader mode to install it)
    – XJT_LBT_build151223
    – XSR_LBT_build151118.frk (flashed on XSR) *FIRST* *THEN* XSRLBT170619.frk (which binds).

    I followed these steps :
    – flash X7 firmware to 170213 : flash bootloader, reboot TX in bootloader mode then install it
    – install XJT_LBT_build151223 : flash on internal module then reboot
    – flash XSR_LBT_build151118.frk on external device (XSR) with backside pins
    – try to bind with error, but no more both green/red solid leds, I had instead to a quick flashing red one
    – flash XSRLBT170619.frk on external device (XSR) with backside pins
    – bind TX/RX normally : put TX in bind mode, boot XSR in bind mode, unplug the battery, exit bind mode on TX, then plug the battery

    Hope this helps, I wasted a while on that :-)

  13. NablaFPV

    Hi there, just wanted to thank you for the article.
    Managed to flash an xm+ from a Taranis QX7 (smart port near SDcard, +5V in the middle).

    It nows sends RSSI value on Channel 16 (AUX12 in BetaFlight), so I have RSSI on OSD with this non-telemetry receiver.

  14. Stefo

    If you are on Mac, pay attention not to flash the phantom files that start with _. from your taranis to your receiver, I’ve bricked 2 XM+ like that…

    1. gr000T

      Yeah, I just learned that lesson the hard way too. If you use the terminal, you can remove those files using dot_clean /Volumes//FIRMWARE

  15. Luca

    Hi i’m Luca and i live in EU. I have taranis plus and recently i bought 2 receivers from china. So.. these two receivers have the firmware NO EU. How can i do to flashing X4R with Eu firmware? Because not bind!

  16. fpvbrian

    the last bit wouldn’t work for me, the maintenance mode bit, what i had to do was turn radio on normally,long hold menu, go to the firmware folder, push enter on the firmware, flash external device and away it went and flashed the rx…happy days;)

  17. Qu4d

    Hi Oscar, thank you for your great explanations, as usual.
    But for sharing my experience with your other followers:
    if you want to use usb-to-serial adapter (ftdi chip), you need to invert rs232 signals (for both rx and tx).
    You can do it by flashing the chip easily (if you have a genuine FTDI chip, otherwise it could be difficult to flash), with the software ft_prog available here: ftdichip.com/Support/Utilities.htm#FT_PROG
    It can’t work without this inversion.
    And don’t forget to cancel inversion by flashing again.

    Have a good flight :)

  18. John Craven

    I think you need to check the last breadboard schematic at the end of the article.
    I am pretty sure the 5v and gnd wires from breadboard power rail that go down to the centre of the breadboard are reversed!

    1. George Hanes

      Yeah, LBT stands for Listen-Before-Talk which is the main difference between firmwares. It was done this way to be in compliance with EU laws.


Leave a Reply

Your email address will not be published. Required fields are marked *

Are you Robot? *

I only check blog comments once or twice a week, if you want a quick reply you can post your question on this forum IntoFPV.com... You might get a faster response from me there (multirotor related only).