Review: FrSky XSRF3O Flight Controller

by Oscar

FrSky recently released four new flight controllers all with integrated XSR radio receiver. One of them is the XSRF3O, which we will take a look in this review.

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.

Check out this post to learn more about How to choose flight controller. This review is written by Artur Banach.

Thanks to FrSky for providing us with the gear for testing. The FrSky XSRF3O is available from:

What’s Special about the XSRF3O?

At $40 you get a F3 FC with a Frsky XSR receiver which would normally cost $27 alone. Not only it saves cost, and it also makes wiring a lot simply as you don’t need to wire and install the RX separately.

However this board is not perfect in our opinion, and there are some improvements Frsky can make which we will discuss through the review.


Inside the XSRF3O box:

  • XSRF3O Flight Controller
  • Set of pins for soldering
  • Instruction manual


  • STM32F303 CPU – F3 Processor
  • MPU6050 Gyro with I2C BUS
  • Built in Betaflight OSD (compatible with Betaflight configurator)
  • Integrated full range XSR radio receiver with Smart Port telemetry
  • Built in Micro SD card slot for BlackBox
  • Operating Voltage Range: 4-10V (can’t take power directly from 3S, 4S or above LiPo battery)
  • 36x36mm with 30.5mm mounting holes
  • 7g in weight

The integrated OSD for betaflight and SD card logger are great features used by many Betaflight pilots. I really like the pin layout, as the ESC connections are located at the four corners.

However the MPU6050 with I2C BUS is a pretty poor decision, it’s known to be more noise-sensitive and making the quad harder to tune and requires FC soft mounting. With I2C and not SPI, we have a low gyro sampling which limits our looptime to 4K maximum.

We asked Frsky about the input voltage and they recommend to power this FC with 5V. We feel like a wide input voltage range is pretty much a standard in modern FC, where you can just feed the FC directly from LiPo battery, so that you don’t need to connect VBAT separately either.

If you don’t use the SD card logger, they’ve provided a piece of transparent plastic to keep in the slot.

Built in XSR

XSRF3O comes with built in XSR Radio Receiver. Antennas are fitted with W.FL connectors, so they can be easily replaced if broken. (W.FL are smaller than U.FL connectors)

Exposed antenna element is just under 33mm long and both antennas have a total length of 145mm.

Betafight Settings

Board comes pre-flashed with Betaflight 3.2 FRSKYF3 Target (unstable release).

Ports are configured for XSR already, so there is nothing we need to do to get it to work apart from binding with transmitter.

XSRF3O can only do 4K/4K gyro refresh rate and looptime due to their choice of MPU and BUS. without having high CPU usage. Although 8K/8K is preferred by some pilots, 4K/4K is not the end of the world it flies fine for most people.


Great things about XSRF3O

  • Integrated RX allows much cleaner builds and greater convenience
  • Price! For 40$ you get a FC with XSR receiver
  • Built-in OSD configurable via Betaflight GUI
  • On-board Micro SD card logger for Blacbox
  • Good layout for ESC’s/Motors
  • Supports Octocopter and Hexacopter configurations (due to the 8 PWM outputs)

Things to improve

  • Micro SD Card slot is facing inwards making it difficult to eject the card
  • Bad choice of Gyro and BUS, would be nice to see MPU6000 with SPI on this board so it enables 8K/8K
  • With default board rotation antennas are sticking out to the right and USB port at the back making it impossible to access in a fully built quad. It would make more sense to keep antennas toward the back. Although you could rotate the board, but then the ESC signals pads need to be remapped (more info about remapping here)
  • 5V voltage regulator or PDB is required to power the XSRF3O FC

How to Flash RX Firmware

Flashing of the internal XSR in XSRF3O can be done via S.PORT pads on the board.


XSRF3O is an interesting flight controller with a good concept. All the features combined make it a fantastic value for money despite few things that could have been executed better.

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.


Jeffrey Palovchik 17th November 2017 - 1:04 pm

So would you guys reccomend using it? I need a new fc.

Martin S 29th October 2017 - 12:28 am

Great reading as usual Oscar!
I have a Taraniz QX 7 and it’s killing me. This board flys well with everything going well EXCEPT for the RSSI. It’s stuck at 97% in Betaflight. I redid setup on the QX7 several different ways scoured the internet and still….. stuck at 97%. Turn off the radio it goes to 50%. Set Betaflight failsafe to 1000, turn off radio it goes to 0%. But turn on the radio and AGAIN 97%.

I deleted all the mixes and even tried a new model, still 97%. Walk down the street and still 97%.
What can I do? I read every webpage from Googles first few pages and im still stuck.

martinez 30th June 2017 - 12:20 pm


as a matter of fact, it seems they plan to release a F4 version called XSRF4O.
You can see it on their website (FRSKY).

Oscar 4th July 2017 - 6:32 pm

thanks, yes they will send us those new boards for testing :)

Jerome Demers 29th June 2017 - 2:29 am

you guys can get the XSRF4O with the MPU6000 and yes the USB and antenna orientation is so weird!? It’s like they make FC without actually flying quads! I hate that. That is a 0$ thing they could of done right.

Oscar 29th June 2017 - 6:06 pm

Yes but the fact that they are using different MPU on different FC just makes zero sense to me when they can just use a better MPU without too much cost.

fl0PPsy 26th June 2017 - 2:52 am

Its such a shame that this FC uses I2C instead of SPI.

Eric 25th June 2017 - 11:19 pm

How would you connect a battery to it? I can only spot a current and vbat pin.
Now it doesn’t take 4s vbat, so how can the OSD read the info? And where would I connect the 5V to power the board then?
I love that it doesn’t have an integrated pdb, causes so much problems. But yeah, how does it get the battery info for the OSD?

Artur 26th June 2017 - 6:45 pm

It can get the voltage in via one of the servo pads like in old days with Naze32. It has VBAT – check the manual