FPV Protocols Explained (CRSF, SBUS, DSHOT, ACCST, PPM, PWM and more)

by Oscar
Rc Fpv Protocols Fc Esc Radio Tx Rx Signal Data Digital

This post will give a broad overview of all the common RC protocols in FPV, and how they fit into the communication system in an FPV drone, and what their differences are.

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.

What are RC Protocols?

A protocol is like the language spoken between devices within an FPV drone.

Different components use different protocols, so some components, like the receiver and the flight controller, have to be bilingual – they “listen” in one language (input) and “speak” in another language (output).

FPV Drone Communication System Overview

Protocols in FPV can be divided into 3 groups:

  • TX Protocols – communication between radio transmitter (TX) and radio receiver (RX)
  • RX Protocols – communication between radio receiver (RX) and flight controller (FC)
  • ESC Protocols – communication between FC and ESC

Rc Radio Transmitter Receiver Protocol Tx Rx Esc Fc Communication Signal

Each of these links has different requirements, which is why different protocols are used.

TX Protocols

The communication between radio and receiver is wireless.

Most radio manufacturers have their own proprietary TX protocols unless it’s an open source radio system like ExpressLRS. Here is a list of common TX protocols:

  • ACCST (Frsky)
  • ACCESS (Frsky)
  • DSM (Spektrum)
  • DSM2 (Spektrum)
  • DSMX (Spektrum)
  • AFHDS (Flysky)
  • AFHDS 2A (Flysky)
  • A-FHSS (Hitec)
  • FASST (Futaba)
  • Hi-Sky (Deviation / Devo)

Frsky’s TX Protocols

Frsky has two TX protocols, ACCST and ACCESS. Note that for ACCST, there is the older V1 and the newer V2, and the two are not compatible.


  • D16: for X-series receivers, e.g. X4R-SB, R-XSR, XM+
  • D8: for D- and V-series receivers, e.g. D4R-II, D8R-II+, V8FR-II, VD5M, etc
  • LR12: for the long range receiver L9R

ACCESS: Frsky’s latest air protocol, New Frsky Air Protocol – ACCESS

Spektrum’s DSM2 and DSMX

DSM2 and DSMX are the two TX protocols used by Spektrum radios.

DSM2 signal is known to be resistant to noise, interference and other transmitters transmitting on the same frequency. It also finds a backup frequency at start-up in case the primary frequency fails. This greatly lowers the chance of losing signal, however if both channels becomes unusable you may still lose the connection.

DSMX was based on and improved from DSM2, which also uses the same encoding scheme. The difference is the DSMX signal is able to switch to a new frequency channel in case of cut out within a couple of milliseconds, so in theory you wouldn’t even notice the glitch.

DSM2 is still a popular technology, if you are away from sources of radio interference (such as WiFi, microwaves, and wireless security cameras), it should work just as well as DSMX, but DSMX for sure is more reliable.

RX Protocols

Unlike the communication between TX and RX, the communication between RX and FC is a wired communication. It is desirable that the protocol have low latency. Latency is basically the time it takes the receiver to “translate” the signal from the transmitter into the signal that it is going to send to the flight controller. Less latency means your quadcopter will respond quicker to what you tell it to do.

Some RX protocols are universal and used in receivers from different manufactures, but some can be exclusive to certain brands. Here is a list of common RX protocols:

PWM – Pulse Width Modulation

PWM stands for pulse width modulation. This is perhaps the oldest radio control protocol, back in the days when there was no flight controller, the receivers were used to control the servos and ESC directly with standard PWM signal.

It involves three wires, typically colored as ground (black), +5V (red), and signal (white or yellow), which communicate with devices like servos or ESCs (Electronic Speed Controllers).

The length of the pulse specifies the servo output or throttle position, and therefore it shares characteristics of both digital and analog signals. The length of the signal pulse normally varies between 1000µs and 2000µs (micro seconds), with 1000µs being the minimum & 2000µs the maximum.

The downside of this is probably the wiring mess, as you have one servo cable for every channel. And so PPM and SBUS are often preferred over PWM when using an FC, which pass all the channels through a single wire and yet offer the same performance if not better.

PPM – Pulse Position Modulation

PPM is also known as CPPM or PPMSUM. A PPM signal is basically a series of PWM signals sent one after another on the same signal wire, and modulated differently.

The advantage of PPM over PWM is that only one single wire is needed for several channels, educing the cable clutter. So typically, you would only need to connect the ground, power and signal wires for up to 8 channels.

As the channel values don’t arrive at the same time, it’s not as accurate or jitter-free as serial communications (which we will cover in a minute).

Serial Protocols

A serial protocol is a digital loss-less protocol that uses only 3 wires (signal, power, ground) for multiple channels. Unlike PPM which is a signal in time domain, serial protocols are completely digital which means they are made up of a bunch of one’s and zero’s.

As the name suggests, serial protocols require a serial port on the flight controller (aka UART).


Aka S.BUS or Serial BUS, is commonly used by Futaba and FrSky. It supports up to 16 channels using only one signal wire. SBUS signal should be connected to the RX pin of an UART.

Note that the SBUS signal in Frsky’s receivers is inverted, and therefore (normally) on F1 and F4 FC, there are dedicated SBUS input which indicates there is an inverter in place for the inverted SBUS signal. However for F3 and F7 FC’s, the processor has built-in inverters on all of their UART’s, and so you can connect SBUS to any UART you want.


CRSF is developed by Team Black Sheep (TBS) for their Crossfire RC system. It’s similar to SBUS or other digital RX to FC protocols. With just four wires and the capability of both telemetry and radio control, it’s a robust and efficient technology. ExpressLRS’s adoption of CRSF is a testament to its potential.

The main advantages include fast update rate and two-way communication capabilities, allowing features such as hassle free Telemetry to be injected into the radio link with no additional UART port required.


IBUS is flysky’s serial protocol. It’s a two way communication which means it can send and receive data: one port for servo data output and one port for sensors.


XBUS is used by JR, which supports up to 14 channels in one signal wire. One of the advantages is the tiny time delay between each channel.


MSP (Multiwii Serial Protocol) was created as part of the multiwii software. Basically it allows you to use MSP commands as the RC input and it supports 8 channels in one signal cable.


FPort is developed by Frsky and Betaflight developers. Normally, control signal and telemetry data requires separate connections, but FPort manages to combine them into one single bi-directional signal, which makes it more compact and easier to manage.

Unlike Frsky’s SBUS which is inverted, FPort is compatible with F4 flight controllers UART without additional inverters or hacks.

You can learn more about FPort and how to setup here.


MAVLINK is a telemetry protocol similar to SmartPort. While SmartPort is developed by FrSky, MAVLINK is developed by the Pixhawk/ArduPilot community. Both are robust, allowing for two-way communication between the controller and device. This real-time feedback is invaluable, especially for drones, providing crucial flight data.

ESC Protocols

Communication between the FC and ESC’s is wired as well. ESC protocols are basically the flight controller telling the ESC how fast they should drive the motors.

The FC has to communicate to the ESC’s at a much faster rate than the receiver has to communicate with the FC. That’s because apart from taking commands from the pilot, the flight controller is also constantly getting lots of data from various sensors such as gyro and accelerometer at a much faster rate (e.g. 2 to 8 thousand times per second), ESC protocol speed must keep up with the PID loop frequency for optimal performance.

Here is a list of the protocols for FC to ESC that you are likely to encounter in this hobby (this list is based off of what’s available in Betaflight FC firmware).

  • PWM
  • Oneshot (Oneshot42, Oneshot125)
  • Multishot
  • Proshot
  • Dshot (Dshot150, Dshot300, Dshot600)

Note that DShot is a bi-directional protocol, not only the ESC gets commands from the FC, it also tells the FC how fast the motors are running (RPM), which is then used in RPM filter in Betaflight.

How to Choose the Right Protocol?

The choice of TX and RX protocols is pretty much determined/limited by your hardware, as most receiver only support certain TX and RX protocols.

If you are buying a pre-built drone, then you don’t have to worry about it at all. But if you are building from scratch, then your decision would affect what you should/can buy. Just pick a radio transmitter you like, and then find a compatible receiver, preferably support one of the serial protocols.

Take a look at what gear I use in this post.


We do not have the proper equipment to test TX and RX latency yet, but fortunately our friend Dronemesh on Youtube have been doing this type of testing for many different kind of TX and RX.

In a radio control system, the latency happens in multiple places. There is latency between your sticks and the RF module on the TX (before it’s transmitted through the air), between transmitter and receiver (signal travels at speed of light so almost negligible), and also there is latency between the receiver and your flight controller.

This is the testing result captured from one of the testing video:

  • Flysky i6X – 13.7ms
  • Turnigy Evolution – 14.6ms
  • Crossfire (on X10) – 19.5ms
  • Frsky Horus X10 – 31.5ms
  • Frsky QX7 – 36.3ms
  • Spektrum DX6i – 41.5ms

Of course, lower latency is better, but I don’t think that’s all the reason in choosing a radio. You should also consider the reliability of the RC connection, the features of the radio and ergonomics. But really, can 15ms extra latency affect someone’s flying? Maybe, maybe not.

And there is speculation that the latency of the Flysky system actually increases with range while that of Frsky is more consistent. Hopefully someone will test and confirm.

Edit History

  • March 2015 – Article created for RX protocols
  • July 2017 – expanded list of TX protocols
  • Feb 2018 – added section about latency
  • Apr 2021 – updated article
  • Feb 2023 – revised

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.


Hedde 24th December 2023 - 3:31 pm

Thanks for the nice summary on protocols.
Some transmitters have a modular design with an replaceble TX module.
Can you explain something about the protocols used between sender (handheld) and TX module?
I want to use a TX module without the handheld ;-)


matt 10th December 2023 - 2:11 am

hey mate just wondering if u could help me out plz, im new to the hobby and have been flying around with a sub250 whoopfly 16 ( excellent drone review by the way), ive crashed it and while its broken ive got a tinyhawk 3, im i able to use the transmitter from the whoopfly kit for the th 3?
any help would be awesome

kind regards

Oscar 10th December 2023 - 2:44 am

I haven’t tested either RTF kits, so I am not 100% sure. But from a quick google, it appears the Whoopfly RTF kit uses a ELRS radio link, while the Tinyhawk 3 uses Frsky D8/D16. So they are not compatible.

ReviewD 26th November 2023 - 9:35 pm

Is it possible to hook up FrSky sensors (Fport or Sport / Smart Port) to ELRS receivers and get telemetry readings on the remote?

Sergio 19th November 2023 - 3:02 pm

Olá pessoal! É possível usar CRSF em uma controladora Omnibus f4 v3 com protocolo sbus ?

gabriel 25th September 2023 - 7:53 pm

Hi. is the spektrum receiver´s protocol compatible with taranis transmitter xq9 plus se?

Oscar 26th September 2023 - 12:17 am

You mean X9D Plus SE? No, its internal RF module is not compatible with Spektrum.

Tom67 2nd April 2023 - 12:52 pm

What is 4 in 1?

Oscar 2nd April 2023 - 6:50 pm Reply
Xisco Bernal 5th April 2023 - 12:50 pm

Thanks a lot by share your studies.

Jeff Coudayre 15th March 2023 - 4:34 pm

My experience indicates 20ms. Does effect my personal flight training ….

Rex Hinz 1st February 2023 - 2:53 pm

I’m building an rov that uses 8 channel to control brushless motors headlights and camera panning , I have a 10 channel FS-iS10B receiver with ibus and the FS-i6x transmitter , will I be able to send all the signals to the 3 servos and 4 esc’s using one wire via ibus or sbus , the receiver will be in a floating buoy and I need to send the signal through the 5 ft tether

Martin 18th January 2023 - 10:55 pm

Flysky has yet another new protocol called ANT, would be interesting to see what the latency information is with that vs others. But this came in handy explaining quite a bit.

RakinRkz 3rd October 2022 - 7:59 am

Nice article. I would love to see an update about:
How transmitter modules and radio controllers work.

David 6th July 2022 - 12:04 am

Good read for a beginner like myself.

Jim 30th April 2022 - 1:56 am

Great article. I’d like to see where ELRS fits into this…

phil 14th January 2022 - 7:07 am

brings lots of light into the many things that form our universe of radio controlled models.
thank you very much for your terrific input.

MrNams 18th October 2021 - 5:56 am

I salute people who contributed for these articles, generally i like to read and understand instead of watching videos, so for me this website and all articles are opportunity to learn

AK 14th September 2021 - 4:37 pm

Hi Oscar,

Awesome work in all the research & details in your article. I own a Flysky i6 radio along with receivers.
It works great on all my helis with a tail gyro and flybar. I am struggling to hook up a microbeast x flybarless system to this receiver, however, beast x does not initialize. I tries a clone TGZ 380 system as well, however, the exact same issue. Seems the ‘receiver type’ selection is the issue. Could you please suggest what should I select in the receiver type for Flysky i6, many thanks in advance.

Richard 22nd August 2021 - 12:44 pm

Brilliant post, thank you!

Andrew G Perrin 12th August 2021 - 2:10 am

Oscar Liang, do you know what my new HiTec Flash 8 means in the manual, p.27…SLT technology… In HiTec’s words “This allows you to fly numerous Tx-Ready models on the market.”
Do you know how I can learn what Rxs use SLT???
Good article!

Olaf 27th May 2021 - 9:39 am

And don’t forget the SUMD receiver protocol from Graupner which is also supported in betaflight. And yes, there are some dudes in Germany who uses that because it is very popular there in the plane community.

fabio mariotti 9th April 2021 - 10:15 pm

Hoi Oscar,

Can you put a reference to the Dronemesh video?

I think this is a “typo” on your side (please cite the source).

But also Dronemesh is usually doing lab measures and little in field measures, so I would be curious
on how the numbers are obtained.

Also it is not clear from your table if these are TX or RX dependent.

i mean, I agree with you that a couple of milliseconds do not make you a better pilot ;)
I am on the beginner side as pilot.

I am using now a mix of everything but in my past spektrum was quite good.
To be honest I would like to go back to spektrum. They even have the best form factor
for the transmitters.

Anyway …
A JB interesting video is this: youtube.com/watch?v=Z23_uaGJfv8


Sergio 6th November 2023 - 2:21 pm

Olá a todos! Minha controladora não tem protocolo crsf ! É possível fazer com que ela trabalhe com este protocolo? FC Omnibus F4 vc!

David Chlystek 3rd March 2021 - 2:44 am

are there any touch screen HMI’s that support S bus ?

Rad Buda 27th January 2021 - 5:43 pm

Hi Oscar
I have a bit of an issue here. I’m trying to build a mini quad on Omnibus f4 v3 board. I have turnigy I10 radio and several rx units they all work flawlessly on other FC’s. In fact, one of Rx worked previously on inav2.4. I’ve upgraded Inav and now I can’t connect to any of my RX’s . tried Everything SBUS, PPM, reverted to INAV 2.4 . changed all settings back and forth.Inav or Betaflight not reading my radio. Considering of scrapping omnibus business and buying different FC.

Any suggestions?


Brett Balistreri 15th October 2020 - 1:11 pm

i have a futuba 9 super with dft module and a x8r reciever and a zyx s2 controler what do i have to do to use s-bus thanks a million inadvance

Richard Nickerson 15th January 2020 - 1:37 pm

Very useful, thanks. Could you also add clear explanation of DSSS FSK etc.. Its quite hard to fathom the issue of immunity between transmitters. I don’t think knowing the protocol helps with this even though i suspect that transmitters are layering (some of?) the above protocols on DSSS. FrSky for example doesn’t seem to say in adverts what scheme, if any, is being used to ensure immunity between transmitters, just tells you the data protocol. GFSK by itself would be prone to interference. Possibly DSSS is implied. Or possibly i have no idea what i am talking abut.
Thanks!, Richard

Azih Zin 2nd November 2019 - 9:56 am

Can i connect ibus receiver at inverted sbus port

Cody 22nd September 2018 - 6:46 am

Does anyone know the protocol for FMS?

Klaus Mewes 10th October 2018 - 1:25 am

Great review. But the Walkera Devo line of RX/TXs is missing. Why?


Brad 22nd November 2021 - 5:53 pm

Ha ha! You’re funny.

Peter Whitehouse 23rd July 2018 - 9:22 pm

With regards to crossfire which I would like to use, which flight controllers work with there crfs protocols.

Oscar 24th July 2018 - 6:43 pm

Any FC’s that runs Betaflight/Cleanflight/iNav/KISS and a few others, and you need a spare UART.

jonn scott 19th July 2018 - 11:48 pm

Hi Oscar, Would /could you update the “TX and RX Latency” paragraphs info for SPEKTRUM ? It’s 11ms for the DX9 and later models. The DX6 is last century’s and Valve TX’s speeds.


Kev 19th September 2018 - 6:55 pm

yea thats what I thought also, seems kind of bias to use a dx6i against other models, you havent been able to buy a dx6i in years of course unless its used that is a old controller on old tech, all the new models are 11ms or 22ms. Pretty much its like trying to race a model type A car against a modern honda, of course the new car will win. This is one thing I do not like about the industry, it is very hard to get true data because almost everyone that does testing is bias towards one or the other, Im trying to find true up to date data, of what is actually on the market that you can buy today not what you would have bought 10 years ago. Im looking for a new controller I have a spektrum which is good and all, but I want something with more channels I just dont see me paying $600 for a 12 channel or $1000 for a 18 channel controller, So im looking at data for taranis, but kinda hard to find true unbias data either you have full bias spektrum people or full bias taranis people that will argue and never give the other props where props are due. Its stupid really, why even put the data out there if its bias. what for hits.

Alex 15th March 2018 - 12:57 pm

Hello Oscar

Is there any latency difference between RX with FrSky D8 and FrSky D16-8ch ?

Luke 4th June 2018 - 1:26 pm

You should also mention the protocols used between the transmitter and transmitter module.
As far as I know the internal module in the X12S / X10S uses iXJT protocol that is supposedly faster than the XJT used to comunicate to the external modules?
It also suprises me that the Horus seems quite slow when its advertised as having this new faster iXJT protocol.
Is this latency something unique to the X10S or should the X12S be the same?

Oscar 5th June 2018 - 2:55 pm

We are conducting some tests for these at the moment, stay tuned for new posts on the blog :)

Tom Garing 11th July 2018 - 7:29 am

Does the signal wire alone, communicate the PWM signal from the Rx to the servo or controller, not needing a second (ground wire)?
I have purchased both a Dimension Engineering (DE) Sabertooth 2x5RC motor controller and a SportBEC to power the receiver, an I have been instructed by DE staff to cut the two power wires from the aabertooth unit and only plug in the (yellow signal wire, as the red and brown power wires are not required since I am using the SportBEC unit to provide rx power.
Is this logical?
Tom Garing

ALAN PALMER - SWINDON, WILTS, ENGLAND 14th March 2018 - 5:38 pm

Dear Oscar
I have made model planes since I was 7. I am now pushing 80 and thought about making a quad- I know very little about the
the control systems used. I am fully conversant with electronics cad cam 3D routers and the like. I also design and build from the PC up, I fully understand Lipos brushless etc however I have not got the faintest idea as to telemetry etc regarding to quads
I found your web site by accident yesterday and found it enthralling educational and addictive thank you very much. each day I print out some sections and read and learn them in bed at night – thank you for a breath of fresh air. regards – ALAN

Tomas 3rd March 2018 - 10:25 am

Missing here is the PXX from FrSky.

Jason Liquori 18th February 2018 - 10:32 pm

Hello, Thanks for this great info. I’m a total novice in this world but looking for some guidance. Is it possible to control multiple devices from one RC controller? Say i have 1 Futaba remote and 3 different RXs mounted to 3 cameras. Is there a system that exists that is multi -channel that can switch between the RXs or are they all 1-1?

Thanks in advance for any feedback.

Oscar 6th March 2018 - 5:21 pm

I am not sure about other systems, but I know you can control multiple RX from one Frsky TX.

thaddeus 31st January 2018 - 11:11 am

Hi wonderful article,

I just wanted to know if there is a FC – which is DSMX then can i add a flysky receiver to it?

I have an eachine qx100 which came as DSMX but as I don’t have a Spectrum I want to use my existing Radio – Flysky FSi6 with the QX100.

Please let me know if i can buy a flysky micro receiver and solder it to the current Qx100 FC

Oscar 5th February 2018 - 2:12 pm

Sorry i am not sure, it’s usually best to contact the manufacturer to find out about these type of technical questions.
If you are using iBus, you should be able to connect it to any spare UART on the board?

Ji Hyunjong 23rd January 2018 - 2:53 pm

Hi Oscar.
This is my first comment on your blog.

I saw your video on how to check latencies, And I’ve got a question.
You tested with a switch on the transmitter.
But I think that if a firmware of the transmitter is tuned fine, a sampling rate of the switch is slower than sticks’ on the transmitter, I guess.

So I think that you need to test with signals of sticks again.

Varun 24th September 2017 - 10:32 am

Hi oscar,

Thank you for the info. I just wanter to know if frsky receiver would work with flysky transmitter? I am asking this because in racercube aio, there is frsky receiver. Now since frsky transmitters are costly, i want to use flysky transmitter. So is there any setup to connect frsky receiver to flight controller of racercube.

pardon me for any mistakes, i am completely new to this!

Oscar 24th September 2017 - 4:31 pm

no it won’t.

Bharath Nagarajan 23rd October 2017 - 4:26 am

Thank you for the comprehensive article Oscar. Really helps N00bs such as myself.
Just one question: are the Tx and Rx protocols specific to each other? I have a Fr-sky x4R sb on y aircraft. So which Tx protocol would communicate with it, out of the 3 fr-sky protocols you’ve mentioned.

Thanks in advance,
Bharath Nagarajan

Oscar 24th October 2017 - 2:48 pm

Because the X4R uses 16ch SBUS, you should be using D16 on the Taranis :)

Ali 7th November 2017 - 3:19 am

If you get the IRANGE IRX4 it should work…

RAHUL 3rd September 2017 - 11:37 am

Hello Oscar, I need more information about FHSS, TFHSS, SFHSS, FASST AND FASTEST. Actually I am looking to have transmitter from futaba for atleast 5-10 years. Prsently I’m on futaba 35mhz. Don’t want the high end because of the funds. Need some help.

Allen Ampueda 4th August 2017 - 8:51 pm

Hi there Oscar, I have a question for you. What are the chances a Graupner GR-12SH SUMD receiver will work with an F4 flight controller using the DSMX port?

Oscar 11th August 2017 - 3:47 pm

sorry i don’t use any Graupner gear. Might be a question for either the FC or TX manufacturer

Andrew Hignight 1st October 2018 - 7:16 am

It’s works fine because it’s not an inverted uart. I’ve used Graupner for over 2 years flying quads and you just need to hook up the Sumd signal to an uninverted uart like a spectrum pad.

Kumar 30th July 2017 - 5:26 pm

It’s very informative. BTW Will FrSky X4R receiver support normal flight controller boards like KK 2.1?

Thank you

Oscar 3rd August 2017 - 2:48 pm

X4R? Yes, X4R-SB? no it doesn’t.
KK2 doesn’t support PPM or SBUS, only PWM. So you could connect the 4 PWM channels from X4R to KK2.
X4R-SB only output 3 PWM channels plus 1 SBUS, so it’s not enough to control a quadcopter.

Marty Baecker 29th June 2017 - 11:23 pm

Oscar,,,,,I very much appreciate all of your write ups and the knowledge and research that you share time and again.

Let me explain my current context and then I will get to the question part. I am a Spektrum radio user. Recently upgraded from the DX6i to the latest version of the DX8. I am a scratch builder with 20+ under my belt,,,,fixed wing, a quad and a tricopter (both using KK2 FC’s). On all units I am using Orange receivers. That is my history in short. I am now about to make the jump to ordering and building a 6″ Alien quad getting most of the parts from Rotor Riot. In pre-study,,,,I feel that I grasp just about all with the exception of the twist that me being a Spektrum user throws into the build. And also coming from no telemetry background adds another stress-or.

All of the build videos are built (pardon the pun) around using the Frsky system. I have found nothing with a Spektrum addendum.

With all said,,,,I have also come to vaguely understand that there are various types of telemetry i.e. (1) those that send the information back to the transmitter {to which I assume one can program for audio alerts while you are FPV’ing?} and (2) those that utilize an OSD {is this a separate add-on board to the KISS FC ? } that overlays the telemetry data in your FPV feed to be seen as you fly with your goggles/headset.

I think you can begin to see my last bit of consternation. I need to get this down before I head into the buy/build process. I look forward to your thoughts and/or directions

Oscar 4th July 2017 - 6:31 pm

Telemetry generally refers to the flight info sent from the RX to TX. I don’t know much about Spektrum stuff, but Frsky supports Telemetry.
The info displayed on OSD would require an external OSD board to work if you are using the KISS FC, it’s called the minimOSD. There are also other FC that has OSD integrated, such as Kakute F4 and Betaflight F3.

Marty 5th July 2017 - 8:17 pm

Thanks Oscar. You are a great help.

David Vietmeier 3rd September 2018 - 3:39 pm

I use to be a Spektrum owner because that’s what all the fixed wing guys flew at my AMA Field. And as you know Spektrum’s great for line of site flying as long as your using DSMX (as of this response DSM or DSM2 is no longer supported by Spektrum/Horizon Hobby). I have flown fixed wing & helicopters for many years & build as well, but with the hobby now moving into FPV Flying Spektrum doesn’t keep up. Times have changed with the miniaturization of components in multi-rotor copters to keep weight down & increase flight time. — that’s why all the builds are built around FrSky. So I changed with the times as well & went with FrSky.
Although Spektrum has produced two serial receivers one operating on 3.3VDC & the other on 5VDC … they’re BULKY & HEAVY compared to other manufacturers. I did quite a bit of research myself & went with FrSky Taranis X9D+ … not only is everything (TX & RX’s) less expensive but it just works so seamlessly together. Now the FrSky is an Open Tx system so programming the radio is different from Spektrum & can be daunting at times but there’s so much more you can do!
Such brings in the topic of Telemetry … Spektrum came out with a separate module a few years back (T1000) with the release of the DX-8 but hasn’t done much to promote it & no longer sells it on Horizon’s website. Originally when the Telemetry module came out in the bundled DX-8 release it had a few sensors for ESC amperage & temperature. Additional sensors were available for altitude (basically a barometer) and talk of a GPS — but I never saw that come to market. Regardless FrSky has a gamut of different sensors and you can program the radio to do different things with the information.

… Anyways it has been an enjoyable move for me from Spektrum to FrSky but one thing I have noticed between the two radios is, that to me at least, the signal strength is rock solid with FrSky & I don’t have interference issues that I use to have with Spektrum. The Taranis is a module radio so you can get a DSMX module & still use your existing receivers.

Alberto 19th June 2017 - 10:48 am

Hello Oscar.

Firstly, thanks for your posts.
I would like to know if any SBUS receiver would works in any compatible SBUS transmitter.
As an example, I am wondering if SBUS receiver could be linked to my Radioling AT9S.

Thanks in advance.

Oscar 25th June 2017 - 4:10 pm

SBUS is a receiver to FC protocol, it has nothing to do with the TX.
It depends on which SBUS receiver you are talking about.

Wim 15th May 2017 - 12:23 pm

Dear Oscar,

I just want to double check. Is Futaba Sbus compatible with FrSky Sbus?
I mean can I use Futaba sensors on a FrSky receiver? And vise versa?

With kind regards,

Oscar 15th May 2017 - 3:13 pm

no they are not compatible.

james 6th May 2017 - 9:41 pm

will my flysky th9x work with AR8010T 2.4GHz 8-Channel Air Integrated Telemetry Receiver by Spektrum that is DSMX/DSM2 transmitter capable

Oscar 15th May 2017 - 2:14 pm

I don’t think so. Flysky and spektrum are not compatible.

Alex Zarenin 27th February 2017 - 4:00 am

Hi Oscar,
In my recent projects i have been using DSM2 satellite receiver without the “main” receiver. Satllite receiver outputs nice digital codes for each channel using standard UART protocol. I tested several satellite receivers – the only difference I found was the “framing” code – the special code that they put at the start and end of the channel packet. Some details of the protocol are available in my DIYDrones post diydrones.com/profiles/blogs/orange-rx-satellite-receiver-and-lemon-rx-uart-enabled-receiver.

sameer 22nd December 2016 - 2:48 pm

can we use the quadcopptr by bluetooth module……how we connect the bluetooth module +arduiono+kk 2.1.5 board together ,so that i control the quadcopptr …..plzhelp

Christof 9th December 2016 - 8:18 am

Thank you for this. Excellent overview. Finally I found a good explantion that answered my questions.

Richard Schmidt 8th November 2016 - 10:36 pm

HI Oscar9 cap radio with a spektrum DMSX DM* transmitter module installed. In the aircraft I have a Spectrum AR 600 receiver. I cannot get the Fail Safe to operate properly. Everything else works. Once everything is bound, I turn off the transmitter and the motor in the aircraft goes to high throttle instead of low throttle?
I called Horizon and they told me that this arrangement won’t work… I have flown this many times before…

jorge herrera 31st October 2016 - 1:34 pm

Hello Sir ; Is the Graupner MC- 32 Pro transmitter compatible with Spectrum Airmod moduls , in order to use MC-32 radio with Spectrum DSM2 transmition protocol . I know they are with weatronic and IFS protocols . Best regards . Jorge Herrera.

James 13th October 2016 - 3:24 am

Hi, I think your explanation is slightly misleading. You are using a non-standard definition of the term “serial”. In serial communication, in contrast with parallel communication, multiple signals are multiplexed (or encoded) into a single stream. In this sense, both PPM and PCM are serial, while PWM is parallel. The difference is that PPM is analog serial and PCM is digital serial. As such, serial is not necessarily lossless (by which I think you mean “with error checking”). Error checking is the responsibility of the individual protocol, i.e. SBUS, XBUS, etc.

Oscar 13th October 2016 - 3:45 pm

thanks for the feedback James.
This was written a few years back, my writing was terrible. I will update this as soon as i can.

Randall M. 25th October 2016 - 6:26 pm


I am an electrical engineer with college degree. There is nothing wrong with his explanation of serial and to say its “non-standard” makes no sense as there is no standard.

Oscar wrote: “Serial Receiver is a digital loss-less protocol that uses only 3 wires (signal, power, ground) for multiple channels. As the name suggests this type of receiver requires serial port on the flight controller. ”

A serial bus with only on wire to carry the serial data stream is called half duplex. Full duplex is the bus type that used to be provided on computers (remember the DB9 connector with a Tx and Rx pin). Serial simply means the data arrives in a stream. Parallel means the data bits are broken into parts and sent simultaneously.

The other day I looked at the pinout for the Pixhawk on the arducopter website and I seem to recall that the uart bus had Txd and RxD pins or full duplex.

Mark Duren 5th February 2016 - 10:36 pm

Hi Oscar,
I have an old (1995?) Futaba 9cap TX that will transmit in either PCM or PPM select ably from the menu. There were PCM systems going back to the mid 80s (Futaba J series -just fyi) They didn’t catch on for one reason that the RXs were much more expensive and the PCM system had a non-selectable fail safe that would cause considerable delay, similar to the Specktrum reboots on their early systems.
As is apparent , I have been around RC for a while but the new protocols are a bit confusing. Thanks for lifting most of that. The one area that is still confusing to me is where the protocols are used and when they can be used. The old Futaba CAP9 mentioned earlier has a FrSky telemetry module installed (DFT) that allows me to convert the PPM signal from the TX to ACCST. That connects to the RX (D8R-2+). What are the protocol output choice from the RX?

Thanks for taking the time to help us understand.

Angel 14th February 2017 - 3:40 pm

Yes it will but will not be a good signal

Danny 28th December 2015 - 7:58 pm

Hi Oscar,
This is the first time I’ve built the Quadcopter and I want to control my quad via the PC. I searched in Google alot but I can’t find the good way to control. I’ve download the multiwii joystick firmware and used the gamepad to control via RF UART SI4463 (I use one module RF which is connected with PC via USB-TTL CP2102 to make the transimmter, the other one is connected with UART bus in Crius board). In GUI MultiWii, the sensors data was sent to PC through COM port (2 modules RF is working correctly), but I pressed the button from gamepad to control and I saw nothing happened in my quad – motors is not armed. I don’t know What I missed?. I’ve thought that using other arduino board to active the throtte pin in crius but nothing worked. Could you give me any advice for this case? Thanks a lot…

Huberer 2nd December 2015 - 6:42 pm

Hi Oscar,

this is a great blog.
Quote: S-Bus needs an Inverter for Naze32
Do you mean just a Signal converter (high -> low AND low -> high) i.e. a simple Transistor and 2 resistors? or a Inverter gate?

Thanks for your great answers

Oscar 3rd December 2015 - 12:22 pm

check out second half of this post… I shared how people make the inverter SBUS.

Odino 28th October 2015 - 8:15 pm

Hi Oscar: I have a orange 3ch S-bus long antenna and I have a Dx6 Spektrum radio for my quav 250: the rx have a problem after a crash and I would like replace it: I use the S-bus for use one shot on my esc kiss12A and find a alternative rx with S-bus DSM2/DSMX to my DX6 but not Orange rx: you can give me a tip for a rx S-bus of good quality DSM2 / DSMX Spektrum compatible? thanks and greetings: Odino from ‘Italy.

Oscar Jr. 8th October 2015 - 1:25 pm

Hi Oscar,
thanks for sharing this valuable information. I’ve just missed a word about Tx/Rx based on SLT protocol (Tactic).

Vito 4th October 2015 - 2:58 pm

Hi Oscar,
I’m not sure if this is where I might post questions, but I’ll try.
I really have no idea what I’m working with. It’s a Graupner MC-20 with a HoTT GR-24L and a HoTT GR-12L receivers and both a Pixhawk px4 and a Vector FC +OSD.
My Problem is that I can get the receivers to bind, but there is no signal to the FC boards to calibrate the system.
My problem could be with the transmitter settings, the FC board setting or something else.
I have tried to get answers from the FC board, the radio manufacture and the usergroup forums. I still don’t have any answers to get the system working. Maybe you can help.

Martin C 23rd September 2015 - 11:51 pm

Hi Oscar,

I have an Atom CC3D connected to an R9D receiver via an SBUS connection. I would like to use an AR9020 receiver instead so I can use my DX9 radio…. does the AR9020’s srxl port act like an sbus port or will I need to get a PWM harness to connect the two?

michael 22nd September 2015 - 6:42 pm

Hi Oscar Im building a blackout mini h quad and I’m using a spektrum dx8 transmitter with Ar8000 spektrum Rx.
Can I us the ppm setup on the naze acro 32 flight controller or do I have to connnect all those wires the connect the RX to the flight controller?

Oscar 23rd September 2015 - 12:13 pm

I am not familiar with Spektrum devices… just a quick google on Ar8000 spektrum Rx, it tells me that you will need a PPM encoder use connect PPM to Naze32…

Jim s 20th September 2015 - 5:27 pm

Hi Oscar,
I’m putting together my first 250 quad from scratch and have a naze full mullet board and a fly sky th9 x radio and 8 ch reciever the same as you have pictured on the top of this section. I don’t know much about ppm or Pwm as a matter of fact I didn’t know I had an Ibus until reading your blog. I’m using clean flight to configure the board. I could have bought a ready to fly quad and spent less than I have so far but wouldn’t have learned anything. My question to you is will my fly sky radio and reciever work with the naze 32 and how would I wire it to the naze.

Oscar 21st September 2015 - 4:01 pm

yes it will, i think the flysky th9 RX only works on PWM, connector +/- on the Naze to any + and – on the RX, and RC pins on the Naze to the signal pins on the RX, you only connect as many channel as you need up to 8…. choose “parallel PWM” in receiver mode.

maxoz 15th September 2015 - 9:48 pm

i have radiolink at9 and r9d. Should i buy frsky sbus to cppm converter for use ppm ?

David 28th August 2015 - 4:56 am

Hi Oscar
I’m new to multicoptors but have been flying rc planes for years. In building my first I’m going to use the naze32 flight controller. in reading the spec. sheet it is compatible with cppm and herein is my question.
I have lot’s of 72 mhz radio equipment. IF using my JR SA600 72mhz radio which is a “ppm” is the reciever going to give the naze32 the proper input ?

I don’t even know if I’m wording my question properly… But I hope you can understand it somewhat.

Thanks for the help. I’m trying not to have to invest in a new 2.4g system.

Oscar 28th August 2015 - 12:07 pm

Hi David
so is your receiver able to output in CPPM (aka PPM) mode?
Naze32 can only take CPPM / PWM without any additional converters.

gabriel 13th August 2015 - 5:16 pm

Hi Oscar
I am new in multicopters.
Don´t know if it is a stupid question, but i have the flame whell f450 with naza m v2, i am trying to control the naza m v2 with arduino, can i use a pwm signal in entrances x1,x2,x3,x4?

Oscar 17th August 2015 - 9:27 am

Hi, probably… but why don’t you follow the traditional method of controlling, ie using a radio transmitter and receiver? It would be easier and safer if you are new.

Anthony 8th July 2015 - 7:38 pm

Hi Oscar so I’m new to all this I learned on the Alias and jjrcx6 tarantula but I wanted to build one so I built the rotor ones by flitest actually pretty fun to build also for what they recommend for electronics from rtf quads. My question I got a Graupner mz18 and I’m trying to figure out if this will even work since I see that Graupner used sumd and the electronics are dsm2 and dsmx. Can it be done or do I have to use the Graupner reciver. Basically trying to bind that lemon 6 channel to radio and use rtf quads flight controller any help would be awesome got 4 days to see if I like radio or send it back for a spektrum cause I know that works with rtf quads stuff sorry for long post

Ethan La Moure 8th July 2015 - 2:09 am

Hi Oscar

I have four 18a Kiss ESC’s that I want to install and run oneshot with. I have the modded (with Deviation 4.0.1) Devo 10 radio and both the Walkera rx1002 and the rx601 receivers. I’m using PWM currently with an OpenPilot CC3D evo FC with an 8 pin receiver port, flexi port, main port, usb hid port and usb vcp ports. I have the option in OpenPilot to choose PWM, PWMsync or Oneshot125. Can I do this with my current PWM tx/rx and CC3D FC? Do I need a PPM signal to utilize the oneshot programming?. If so can I use a converter of some sort in conjunction with my tx/rx and the CC3D? I also have a an unused Flip32 in the drawer.

Thanks for your time and for providing a wealth of experience and information for us all.

Easy – E

Alf Skaar 10th August 2015 - 9:08 am

Hi Oscar
Vortex Setup Devo 10 (Deviation) and RX703A PPM and Fail Safe is on CH5

see for more info


Alesandro 4th April 2015 - 11:39 pm

hy everybody i’d like to try the oneshot on my escs flashed with blhely suite, but on my cc3d board i have a pwm rx so i can’t to enable the oneshot. my answer is: using a ppm encoder can i use my pwm rx on my board in s bus port? . if it’s possible i can use in the wizard panel the ppm reciver option wich enable the oneshot flashed escs. release 15 of open pilot gcs.

Tom 27th March 2015 - 11:21 pm

Good evening Oscar,

This is my first comment on your blog.
Quite new to multicopters, I am the happy owner of a DJI F450 with Naza V2 since last September and I recently decided to build a 250 racer. This is what brought me to your blog earlier this week.
I’ve got to say it is truly a GOLD MINE who ever is interested in this hobby (like me) and I can hardly leave this website. Thank you very much for all this information you share with us. Everything is clearly explained and well documented so it helps a lot to understand how RC and multicopters work. Quite amazingly, RC protocols were still unclear for me and today I had still a lot of questions in my head but no answer. Guess what today’s post is about? Bam!, RC protocols. You’re genius man, you can read my mind.
OK, I have a few questions here:
Is it right to say that PCM and PWM are the same thing?
About Serial protocols, you say that the Naze32 “can read UART input, but cannot accept inverted one” which is required for S Bus. So I guess the Naze32 should not be compatible with S Bus? That is not what you say in your post “Choose flight controller for quadcopter and hexacopter”. Am I missing something?

Thanks again for sharing your knowledge with us,

Oscar 29th March 2015 - 11:59 am

Hi Tom
haha, maybe I can read your mind :D
Actually PCM is another types of radio signal, which i forgot to mentioned. I have added the info now.
It’s a “very close friend” of PPM, but it’s digital coded and supposedly more reliable. It’s been around more than a decade now in RC hobby, But I still haven’t seen anyone use it yet around me.
Yes you can use SBUS with Naze32, but you just need a SBUS-PPM converter, or a SBUS inverter (Hope i am still catching up with the latest technology development on this one ! :D )