FPort is the latest RC serial protocol that brings a few improvements over the existing RX and telemetry protocols. This tutorial will explain the advantages of FPort, and how to set it up on Betaflight flight controllers for your mini quad.
FPort is an “RX protocol” – a communication interface between receiver and other components, such as a sensor, or flight controller.
FPort (possibly stands for “Frsky Port”?), is developed by both Betaflight Dev Team and Frsky, it’s great to see big players working together to make the hobby better.
- FPort combines SBUS and Smarport Telemetry into 1 single wire
- cutting down cable management and soldering
- save you a UART port because SBUS and Smartport take up 2 separate UART’s
- FPort is an uninverted protocol, so hopefully we don’t have to worry about doing “uninversion hacks” on F4 FC (in future Frsky receivers)
There are some other technical benefits, but the two reasons above are enough to explain my excitement .
It’s exciting to see the awesome improvements of FPort, but it can be better! Some other competitors of Frsky offer solutions that already have these benefits, but more importantly they have lower latency and higher refresh rates than SBUS, which can largely improve the handling of your quad, such as TBS’s Crossfire we recently tested.
Update (July 2018) – testing shows that FPort is still not quite as fast as SBUS.
You have to flash your receiver with the “FPort firmware”. Note that once you have flashed this firmware you won’t be able to run SBUS, however you can again flash the normal firmware if you want to run SBUS.
Download firmware here: https://www.frsky-rc.com/product-category/receivers/
Any F3, F4 or F7 FC with a spare UART should be able to run FPort.
Make sure to flash the latest BF firmware on your flight controller: how to flash BF firmware.
Get the latest BF configurator: Link to Download Betaflight Configurator
Simply connect the receiver’s SmartPort pin to the TX pin of a free UART on your flight controller.
Don’t use soft-serial for FPort! It’s okay for SmartPort Telemetry, but it’s too slow for RC links. If you absolutely have no way to use FPort, just go with the good old SBUS with SmartPort.
Original “Inverted” SmartPort
Note that Frsky receivers SmartPort is an “inverted” signal, F4 flight controllers can’t read it directly. However it’s not a problem for F3 and F7 flight controllers and you can connect it directly:
In Betaflight CLI. enter these commands:
set serialrx_halfduplex = ON set serialrx_inverted = ON save
Hacked “Uninverted” SmartPort
If you have an F4 flight controller, and there is no dedicated SmartPort input (built-in inverter), then you will have to follow this guide and find the “uninverted” smartport signal for your receiver.
The R9MM is the first receiver Frsky has ever made that comes with “uninverted” SmartPort. Let’s just hope they will do this for new receivers in the future 🙂
In CLI, enter:
set serialrx_halfduplex = ON set serialrx_inverted = OFF save
If your F4 FC has built-in inverter for SmartPort pin, and you are using original inverted S.Port signal, you should enter these instead:
set serialrx_halfduplex = OFF set serialrx_inverted = ON save
Open up Betaflight Configurator
In the Ports tab, find the UART which is connected to the receiver, and enable “Serial RX”. In this example I am using UART4.
In the Configuration tab, select “FPort” in Receiver Protocol.
Enable Telemetry feature. Now click “Save and Reboot” button.
Now confirm you have control in the Receiver’s tab.
To get Telemetry to work. go to your Taranis’s Telemetry page, select “Delete all Sensors”, and then “Discover new Sensor”.
And that’s it 🙂
If you are using FPort, and the RC link is not working, try changing this setting on and off in CLI:
set serialrx_inverted = ON
If telemetry isn’t working, try setting this on and off:
set serialrx_halfduplex = ON
Also try select “Rediscover Sensor” in your Taranis’s Telemetry Menu.
Still not working? We can help you on IntoFPV forum.
- Dec 2017 – Guide created for Beta version of FPort
- Feb 2019 – FPort is now supported in most Frsky receivers, instructions updated