Flashing Frsky Receiver using Flight Controller Pass-Through

by Oscar

So you want to flash Frsky RX firmware, but too lazy to take your quad apart? You can flash it through your flight controller, just like how you flash your BLHeli ESC’s using FC pass-through.

Some of the links on this page are affiliate links. I receive a commission (at no extra cost to you) if you make a purchase after clicking on one of these affiliate links. This helps support the free content for the community on this website. Please read our Affiliate Link Policy for more information.

Important: “FC Pass-Through” requires SmartPort connected and working correctly in the first place.

Further Reading: Frsky Receiver Options for Mini Quad

Advantages of Flashing Frsky RX via Pass Through

You can flash Frsky receivers using your Taranis, but there are some advantages to using FC pass through:

  • No need to remove your RX from the quad
  • No fiddling with connectors
  • Not everyone has a Taranis TX for flashing TX

The Steps

Download FRSKY Tool or “Tool-FrSky update sport” from here: https://www.frsky-rc.com/frusb-3-fuc-3/

Download receiver firmware from: http://www.frsky-rc.com/download/?sort=Firmware&cate_id=12&pro_id=0; Note the file you will flash. EU version has “LBT” in the filename, international version has “FCC” in the filename

  1. Plug in the your flight controller via USB, and connect to Betaflight Configurator. Go to the Ports tab and note the port you are using for SmartPort.
  2. Go to CLI, type serialpassthrough [UART-1] 57600 (for example, if you are using UART 3 for SmartPort, “UART-1” is 2, and you should type serialpassthrough 2 57600)
  3. Disconnect from Betaflight Configurator
  4. Power off your quad, disconnect USB and LiPo battery, make sure RX is not powered
  5. Open up FRSKY tool (make sure you right click the icon, and run as administrator). Select the RX firmware file
  6. Connect USB, and plug in the LiPo to power on your FC and RX
  7. If the FRSKY tool detects the receiver successfully, it should now display the current firmware version and hardware version number
  8. You can now download and flash, it will take about 2 minutes

You will need to bind your TX and RX again after flashing receiver firmware.

Not Working? Some Troubleshooting

It is very important that the receiver is turned off before opening the Frsky Tool.

You should power your FC and RX with a LiPo battery, otherwise the RX might drop out during flashing due to insufficient power.

Leave a Comment

By using this form, you agree with the storage and handling of your data by this website. Note that all comments are held for moderation before appearing.


Oliver 16th December 2021 - 10:57 am

So this isn’t working for me. I would love some clarification. Do I need to solder the data wire from my XM+ to a TX pad on the FC? It is obviously on an RX pad now… CLI says to power cycle to get out of passthrough mode. Does that mean if I unplug and replug the FC that it will stop doing passthrough, or do I powercycle twice to get back to normal?


Brett Denaro 13th June 2021 - 8:58 pm

How can I flash the firmware on a Mamba MSR to the FrSky firmware. ALl I have is the BetaFPV Lite SE radio. Seems like it’s impossible to flash these things without a descent radio?

Oscar 13th June 2021 - 9:21 pm

You will need a radio with Smartport output like Frsky QX7 or Tandem X20, or external module bay like X9D, TX16S or T16.

Pavel 16th April 2021 - 4:20 pm

This instruction is not correct. It will not work to update the firmware.

Steve.B 1st September 2020 - 8:13 pm

I am about to attempt my first plug-n-play, attaching the receiver, r-xsr and I have a simple transmitter without ports so can’t use that to update receiver firmware. I assume I will have to connect up the receiver to the control board with the regular settings, but not sure if I need to temporarily alter the wiring to accomplish this … or is it more a confirm that it’s not powered when on USB?

I don’t exactly understand how to “make sure RX is not powered” in step 4.

Seii 23rd July 2020 - 6:28 am

OK, I don’t understand this part at all:

“…Go to CLI, type serialpassthrough [UART-1] 57600 (for example, if you are using UART 3 for SmartPort, “UART-1” is 2, and you should type serialpassthrough 2 57600)…”

Why would UART 1 be “2” if your SmartPort is on UART 3? My SmartPort (I hope I understand that’s TBS SmartAudio), is on UART 6. What does my CLI command should look like then?

Thanks for any help in advance!

Scott Baker 27th May 2020 - 2:20 am

The SmartPort is a feature on the transmitter I believe. And I’ve read that you can flash the RX from the TX by buying the wire that connects the TX’s SmartPort to the JST-snap-connector on the RX.

My question is: what does this line mean?:
“Important: “FC Pass-Through” requires SmartPort connected and working correctly in the first place.”

I wanted to flash the RX via the FC, b/c I don’t have the smart port connection wires. So do I need to buy it and connect it anyways?

For context, I’m following your ‘How to Build a Racing Drone Beginner guide’, can’t bind my Taranis X Lite Pro to the FrSky XSR, and suspect the firmware. Anyways, I’m new.
Thank you.

Gabriel 4th December 2019 - 11:53 am

Hi Oscar! There is anyway to update modules this way or any other way that dont requires a transmitter ? (R9M) My taranis does not read sd cards anymore.

Markus Brandstätter 25th October 2019 - 8:57 am

quick question: If I connect my r9mm via Fport using the uninverted Sport will serial passthrough work as well for flashing firmware?

Thanks in advance!

chupo_cro 10th October 2019 - 12:08 pm

I flashed XSR-M receiver with the most recent firmware and didn’t have to bind it again.

chupo_cro 8th October 2019 - 11:30 pm

Is that way possible to find out version of the current firmware? For example I have XSR-M receiver and upon connecting Frsky Update Sport shows: Firm V12.34, hardware V56.78

On the other hand, these are the firmwares that could be downloaded for that receiver:

2018-11-06 180322 Supports telemetry enable/disable function.
2017-06-22 170619 Supports S.port transfer PID parameters.
2017-06-09 170605 Improve the compatibility between the S.Port and F3 FC.
2017-05-16 170408 First release.

I’d like to know which firmware is in the receiver before I flash it with the new one.

BTW, I have SP F3 FC and before enabling serialpassthrough I had to change the MSP baud rate of the main UART (the one where there is USB plug) to 57600 too.

Oscar 15th October 2019 - 5:03 pm

Nope, there is no way to know which firmware version is on the receiver

Jan 27th June 2019 - 7:30 am

Step 4 is wrong!? If you disconnect the fc, it goes out of passthrough mode.
The trick is to have the rx on 5v not on USB 5v so it gets power if you plug in the lio after the command and opening the frsky tool

chupo_cro 8th October 2019 - 11:35 pm

@Jan: Yes, the FC should NOT be disconnected in the step 4. And before enabling serialpassthrough I had to change the MSP baud rate of the main UART (the one where there is USB plug) to 57600 too. I was using XSR-M receiver and SP F3 flight controller.

Jacob 24th January 2019 - 5:52 am

Does this work with an XM+ receiver?

Dejvo 12th November 2018 - 1:57 pm

Hi Jamie, try this:
1.) start both programs. Frsky Tool and Betaflight.
2.) check which port is wisible for frsky tool (e.g COM1), and check which port is FC using for betaflight (e.g COM3)
3.) remap COM ports via windows device manager.
– start > device manager > Port (COM & LPT) > double click on COM1 > Tab: Port Settings > click Advanced and choose free COM port number
– do same for FlightControler on COM3 but remap it to COM1
4.) check if Betaflight changed that COM port and if you are able to connect to fc via COM1. If no just restart betaflight-controller.
5.) enable passthrough
6.) check FrskyTool (should still be running from step.1 with selected port COM1) and try to select file and connect battery to your quad. It should show you version number at status bar.
7.) click download :)

hopefully i didn`t forgot for anything, but this was how I was able to trick that frsky tool with same problem, didn`t found my fc COM port…

Justin Scholtemeyer 4th November 2018 - 8:21 pm

Will this work on the R9mm receiver? Also, is there any way to update a R9m module without a Taranis?

Pablo 10th November 2018 - 10:50 pm

I have have the exact same question?
Maybe with a FTDI ?

Oscar 23rd November 2018 - 4:15 am

R9MM, yes it should work as long as the receiver has a smartport.
FTDI should work too but i haven’t tested it to confirm.

wade tubman 1st September 2018 - 3:05 am

does this technique work on softserial (for s.port i need soft serial). I try “serialpassthrough 10 57600” fpr softserial 1 but it does not recognise it

Rastislav Stana 12th October 2018 - 1:05 pm

From the betaflight serial documentation: the port number is 30 so you need to do: serialpassthrough 30 57600

chupo_cro 8th October 2019 - 11:40 pm

SmartPort is bidirectional protocol and if you are using it with the sofserial pins then TX and RX pins have to be shorted. At least in some older versions of Betaflight firmware as could be seen from older posts about SmartPort and softserial.

Jorge Jimenez 18th August 2018 - 5:16 pm

I have been having the same issue where I cannot select COM4 until the FC is powered on. And this FC powers the receiver, so the bootloader window passed. I watched JB’s video and basically the fix is to at least temporarily move the receiver V input to a pad that does not provide power when the FC is connected to USB. Here’s that video youtu.be/Hzf-EuQZYsE

Burnarz 17th August 2018 - 1:08 am


Does this method also work for XM+ receiver ?

tim 1st August 2018 - 3:17 am

how to remove those open ports? set it back where it was?

Jamie 21st July 2018 - 8:01 am

In order to get this to work on BF 3.4 and old X4R-SB, I had to manually change my MSP port to 57600 also (vs default 115,200).

Also to be clear do *not* include ‘UART’ in the command line (I did this a few times before realizing my mistake).

Jamie 21st July 2018 - 7:39 am

Very timely article (needing to do this myself) however an inherent problem: when the quad is disconnected the COM port is not yet enumerated in Windows, and so the FySky tool will not let you select the COM port (and will not allow you to change it after selecting the file). Maybe I’m missing something?