Setup Failsafe on Quadcopter – Flight Controller / Radio Receiver

It’s not the first time I heard someone had a quadcopter, lost radio signal, and it just flew away and never be found. This is why setting up failsafe properly is important when there is problem with your radio connection. There is also safety concern regarding what failsafe behaviour should be which we will discuss later.

What triggers Failsafe?

There are many scenarios where failsafe can happen on a multirotor (if failsafe is supported and setup properly).

  • Radio is out of range.
  • Receiver gets disconnected from flight controller.
  • Receiver loses power or malfunctions.
  • Pilot accidentally switch off transmitter, or transmitter lost power.

When failsafe is triggered the following could happen, which are user determined.

  • All motors just stop spinning, and the vehicle drops out of sky like a stone.
  • Small amount of throttle (20%-30%), motors spinning slowly and ideally the vehicle descends smoothly to land.
  • Some RX/FC allows certain flight modes to kick in when failsafe happens, such as auto levelling, loiter or even return to home.
  • However, nothing will happen if quadcopter is already disarmed.

Setting up Failsafe and Testing

Between all the ideas of different failsafe behaviours, I prefer “shutting down all motors”. A quadcopter with uncontrolled spinning motors are extremely dangerous, it could end up going anywhere. it’s better to crash your quad and repair it later, then hurting someone on the ground.

Stopping all motors is a safer way to handle situation like radio signal lost, you have a lower chance of hitting someone as it should just crash vertically into the ground. Also in case of lost video signal, you can just switch off transmitter to emergency land your multirotor, preventing it from wondering around / ascending unexpectedly.

Find out how failsafe is setup on your radio receiver. Many receivers failsafe is setup when binding happens, some has a dedicated failsafe button. They remember transmitter throttle position when they are bind together, or when the failsafe button is pressed. That means when failsafe happens it defaults to output thatt throttle setting to your flight controller. Rebinding should reset the failsafe function.

Many Flight controllers also supports failsafe. It’s a good idea to setup failsafe on both FC and RX to have an extra layer of safety. In the next part I will describe how I setup failsafe on my gear, Naze32 and D4R-II.

Don’t rely solely on any guide/article on the internet, including this one. It’s IMPORTANAT that you always test it and make sure it works on your multirotor!

To test failsafe, REMOVE all props and simulate all possible radio problematic situations. Arm it, throttle up to 50%, then turning your radio off and seeing what happens. You might also want to remove the servo lead between FC and RX for another test.

Failsafe on Frsky D4R-II Receiver

I was told the Frsky D4R-II has two failsafe options.

  1. User defined throttle on lost signal (however this will not be detected by FC, and will not trigger Failsafe on FC)
  2. No pulses on lost signal (this is the same as unplugging the servo lead between RX and FC, this will trigger failsafe on FC)

FrSky-D4R-II-Receiver-PPM-RSSI-quadcopter-Multirotor

If failsafe is not set/enabled, the default behaviour is to hold last position before signal was lost (Avoid! Dangerous!)

For options 1, It’s explained in the RX manual:

  1. Bind the receiver first and turn on both the transmitter and receiver;
  2. Move the controls to the desired failsafe position for all channels;
  3. Held down the F/S button of the receiver (for a second). The GREEN LED of the receiver will
    flash twice, indicating the failsafe position has been set in the receiver.
  4. To disable/reset the failsafe function, re-bind the receiver.

For reference, here is how option 2 is done. If you  want to send no pulses, you can bind transmitter and receiver, turn off the transmitter, and power cycle the RX (switch off and on again), and finally press the F/S button. This will trigger failsafe on Baseflight/Cleanflight (if failsafe feature is enabled).

Setup Failsafe on Naze32

The Naze32 has a built-in failsafe that can be set via the Command Line Interface (CLI) in the Chrome configurator App. With FS enabled in Flight controller, it ensures the aircraft behaves exactly what we want in case of RX failsafe fails, such as connection cable unplugged or RX powered down.

Naze32-colour-red-black-white

First enable Failsafe feature:

feature failsafe

These are some basic example commands:

set failsafe_delay = 10
set failsafe_throttle = 1000

“Failsafe_delay” means when failsafe is detected, it will kick in after a delay of 1 second (10 x 0.1 second), with throttle value of 1000. You should change “failsafe_throttle” to a value lower than your min throttle setting and the motors will stop in a failsafe situation. So if your “min_throttle= 1150” then “set failsafe_throttle= 1100” or below will ensure they stop.

Note that after FC failsafe, you won’t be able to arm the board, unless you power cycle the FC. However if it was just a RX failsafe you can (if FC didn’t detect it).

22 thoughts on “Setup Failsafe on Quadcopter – Flight Controller / Radio Receiver

  1. Rosco

    I have a single motor that stops when rth is engaged. No1 motor will stop, and only restart when the TX is restarted and rth turned off. Meanwhile the other 3 motors are operating as expected in rth mode. It is getting full voltage to the ESC during this time. This has only occurred during testing on bench so not game to fly and try yet. All settings are default on Inav 15.1. Can anyone point me in a direction where to look?
    Naze32 rev6
    D4r-ii
    Turnigy 9xr pro

    Reply
  2. Steve

    Check snowboard_nut’s video, that was the only way I could get the d4:ii to go to 0 pulses on failsafe. Your instructions, and frsky’s instructions don’t work.

    Reply
  3. Snowboard_Nut on RCG

    Hi Oscar, I made a video showing the steps I personally discovered to successfully set the No Pulse Failsafe on a D4r-ii. They vary from the Official FrSky Instructions somewhat. Thought this video may help others who stumble onto your article but find it hard to set the No Pulse correctly.
    youtu.be/r3CUE7fwj7Y

    Reply
  4. Christopher

    Hi Oscar,

    If I have the “Receiver Failsafe” field switched on (“green”) under the Configuration Tab in Cleanflight (running 1.1.0), do I still need to follow your steps for the CLI procedure? Or is this effectively the same thing?

    Thanks, and Merry Christmas (day-after),

    Christopher
    @thedutchviking

    Reply
  5. Nivaldo

    This failsafe from cleanflight is just for the throttle… how can I setup failsafe for other channels in cleanflight?

    Reply
    1. Oscar Post author

      sorry why would you need failsafe for other channel if throttle is 0? (quad is going to drop)
      I think you can if you want, google “D4R-II failsafe last stick position”

      Reply
  6. Luigi

    Hello Oscar and complinenti for your great tutorial!

    Regarding the Faisafe I have a problem that drives me crazy by two days … I have a Naze32 Acro and RX FrSky D4RII, as your tutorial. The problem is this:

    I successfully made the bind between RX and TX (Taranis Plus) and set option 2 to the failsafe (No Pulse), when I go to simulate the loss of the TX signal off, the motors continue to run for 10 seconds or more and then they stop, I’m going crazy, I can not understand why!

    In CleanFlight I have this situation:

    Set min_throttle = 1150
    Set max_throttle = 1850
    Set min_command = 1000

    Set failsafe_delay = 10
    Set failsafe_off_delay = 200
    Set failsafe_throttle = 1000

    I also tried to set “set failsafe_throttle = 1100” as a tutorial but it does the same thing!

    You may depend on what?

    Reply
  7. Joe

    So I have failsafe set the way you explain on my Naze32. However when I simulate a rx failure the motors actually speed up for a second, about 20%, then turn off completely. This totally doesnt seem right. What would cause this? My TX failsafe works great, no issue at all.

    Great tutorials by the way. Made a couple pages of notes from them to get my build up and flying.

    Reply
    1. Oscar Post author

      By TX failsafe, i guess you mean turning off TX?
      By RX failsafe i guess you mean unplugging the RX to FC cable?
      I am not sure why you are observing this, but if you were performing the RX failsafe, you can reduce the trigger time in Cleanflight maybe?

      Reply
      1. Joe

        Yes by RX failsafe, I refer to unplugging the RX from the FC. I will try to play around with the trigger time as well throttle level and see what I come up with. Thanks for the feedback.

  8. Danny Cruz

    I have an interesting observation to make.You guys can tell me what you think… On a plane, if failsafe kicks in, in happens on the RX (since there’s usually no flight controller) and if a reconnection happens, one can regain control of the plane. Happens often enough, plus planes have a glide slope – which copters do not.

    True, a multi-rotor drops like a rock immediately, unlike a plane. However, what happens if the RX and TX lose connection for just 1 second and you’re flying pretty high? Even if the connection is re-established, if the flight controller’s failsafe gets triggered, there will be no control as the controller is now disarmed. Thus, you’re dropping like a rock even if you regain RX connection before hitting the ground. I know because this has happened to me with both a quad and a tricopter – The quad on Naze32 and the tricopter on OP CC3D.

    Now, how could one set the failsafes to trigger low throttle on the RX, WITHOUT triggering the failsafe on the FC so that if reconnection happens quickly, the flight controller is not disarmed but one can regain control? The FC’s failsafe, could still be set so that if worse comes to worse and the RX is definitely not going to reconnect, then it would kick in. Maybe setting the FC’s FS to 2 seconds in Cleanflight? Two seconds is a long time. That should do. I would say, setting the RX FS to low-throttle (but still send pulses so as to not trigger the FC’s FS) and also set the FC’s FS to 2 seconds.

    I mean, this might not make any difference in a mini quad flying at speed 10 feet above the ground. But it would make a different for a larger copter flying 200 feet above the ground grabbing video. Might give you enough time to re-establish connection. Just a thought.

    What do you guys think?

    Reply
    1. Oscar Post author

      if you setup failsafe on RX to output 1000us (0 throttle), FC will not detect failsafe. If you regain connection, RX will resume normal operation and you will be flying again.
      FC failsafe is only triggered, 1 – when connection between FC and RX is disconnected (e.g. servo lead unplug), or 2 – RX failsafe is configured to output no signal when signal lost.

      Reply
  9. bart

    Just wondering:
    As far as i know there are only two types of multirotor flyaways: the ones caused by bad failsafe and the ones caused by bad GPS.

    What other type of flyaways can there be?

    Reply
    1. Dj_Garfield

      I know another reason for a Flyaway :
      Flight controler Issue :) I made sad experience last week : my quad made some strange behaviours , and for no reason it flew away , even if I cutted the radio to trigger the failsafe mode , but this was the FC wich causes the Flyaway . I couldn’t do anything to make the quad landing , and I just saw it flyaway , It hapened 30sec after I plug a fresh 1300mAh / 45|90C that allows me to fly almost 12 minutes … I can imagine how high it flew after just 6mn of full throttle …
      I allways setup the FS mode for all of my Multirotors , but sometimes the electronic fail and you loose or crash your dear UAV :(

      Reply
      1. DeeHawk

        Wow that sucks, I guess you would need a mechanical failsafe solution to cut the power to the FC to counter that :)

        On another note: Are there any special reason you chose an expensive high rate discharge battery, when you’re going for 12 min flight time?

  10. Giovanni

    Hi, very nice article and very nice blog… I know that it is not related to the article but can I ask a fast question that I did not manage to solve around on internet….

    is it possible to update the firmware on the NAZE32 (using the basefligth configuration) without losing all the setup? I tried several time (with no full chip erase option) but lost all the data all the time.. and also the backup, due to a different software version, are generally not usable…

    how do you do?

    thanks in advance

    Reply
    1. Oscar Post author

      I usually just dump all the CLI commands, save it in notepad. after upgrading, just paste the command back in CLI.

      Reply
  11. Jason Baker

    Option 2 for the FrSky worked for me. You have to bind it once, unplug the power from your quad, then repower your quad with your transmitter turned off, and press the bind button again (I can’t remember if it was just clicking it or holding it down for a second). Give that a try.

    Reply
    1. Oscar Post author

      i didn’t power cycle the RX after binding, maybe that’s why it wasn’t doing anything.. i will try that once have a chance. Thanks Jason!

      Reply

Leave a Reply

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

Are you Robot? *

I don't look at blog comments very often (maybe once or twice a week), so if you have any questions related to multirotor please post it on this forum IntoFPV.com... You're likely to get a response from me faster on there.