Flashing Frsky Receiver using Flight Controller Pass-Through

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.

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.

23 thoughts on “Flashing Frsky Receiver using Flight Controller Pass-Through

  1. Steve.B

    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.

  2. Seii

    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!

  3. Scott Baker

    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.

  4. Gabriel

    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.

  5. Markus Brandstätter

    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!

  6. chupo_cro

    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.

  7. Jan

    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

    1. chupo_cro

      @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.

  8. Dejvo

    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…

      1. Oscar Post author

        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.

  9. wade tubman

    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

    1. Rastislav Stana

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

    2. chupo_cro

      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.

  10. Jorge Jimenez

    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

  11. Jamie

    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).

  12. Jamie

    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?


Leave a Reply

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

For prompt technical support, please use our forum IntoFPV.com. I check blog comments weekly.