Here a video of an autonomous flight with a Maxi Swift flying wing fully piloted by the firmware ArduPlaneNG v2.x R5 with an All In One Pro (AIOP) full IMU board.This is a porting of the ArduPlane v2 (v2.4+v2.5) firmware and special addons and improvements for the AIOP board that I have added.
The wind was 15 km/h gusting 22 km/h. The flight was very stable in spite of the gusty wind conditions.




  • IMU board: All In One Pro (AIOP) v1.0 from CRIUS,
  • GPS: Crius CN-06 (Ublox NEO-6)
  • AirSpeed sensor: MPXV5004DP (from a old ardupilot one shield)
  • firmware ArduPlaneNG V2.x R5, porting of the ArduPlane v2 + special addons for the AIOP v1 IMU board by JLN


Flying Wing: Maxi Swift from MS Composite (1m40 wingspan)

  • brushless motor Spitz 30 850 kV, 360W with a propeller GWS 10x4.5
  • Lipo: 3S EVO25 2650 mAh
  • Receiver: Turnigy 9X8C v2
  • Transmitter: Turnigy 9x with Er9x firmware


More infos at:

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • 2 YureZzZ:

    You must tune Attitude control gains, not the limits of servos. You'll can get some non-linearities in control system and auto-oscillations or edge-freezing. Try to restore RC_* parameters to default and decrease *_P gains. 

  • 2 GrMis:

    I tuned the configuration files of firmware. ArduPilot v.1 tradition :-) The code itself was not changed.

    Here is the manual.

    Parameters I tuned were:

    #define THROTTLE_FS_VALUE 950

    You may forget to set the last parameter, so failsafe condition can be set, but pilot does nothing on it. I don't
    know where you can set it in MissionPlanner, sorry.

  • Vladimir, thanks for your reply. I am ok with setting the failsafe on the TX&RX side (using trim etc., as you wrote), but I suspect that my problem is on the ArduplaneNG side: If I switch off the TX, the receiver correctly sends a throttle value (say 930) below the theshold I declared on ArduPlane (950) [I see it on the Mission Planer/radio configuration screen], but still it does not engage "RTL".

    If it worked for you, maybe I did something wrong in your step #3 ? You did that using the Mission Planer ? Or directly in the arduino firmware code ? Perhaps also I did step #4 before #3. But it should not matter, right ?

  • I'm having the same problem as Istvan - too much throws in STAB mode. Tried to change RC MAX and MIN values. Got really weird results if I change the values too much - elevons turning to the other side(like reversed). What should I change?

  • 2 GrMis: I tested ArduPlaneNG code with FrSky Rx, too. Failsafe works Ok.

    What I did :

    1. I trimmed the throttle on Tx as low as it's possible, much lower than normal MinThrottle.

    2. I pushed a failsafe button on my FrSky Rx to remember this position

    3. I programmed ArduPlane to failsafe if lower-than-min throttle condition is detected.

    4. I returned Tx throttle trim to zero, of course :-)

    So, when I turn off my transmitter, the receiver misses the signal and sets all channels to failsafe positions. All channels are not important to autopilot except throttle when throttle is below min. Autopilot detects failsafe condition and turn home :-))

    Most 2.4 GHz receivers don't send garbage to servos while signal is lost, unlike MHz Rxs. They continue to send last sucessfull frame, or FS position. So AP receive normal signal and can't detect FS without low throttle condition.

  • Thank you for your reply. My receiver (FrSky) also has a failsafe, so I can certainly do as you suggest.

    I though it could be nice to use the built-in 'failsafe' function of the arduplane code, but if you did not succeed either I will probably give up !

  • Hi,

    I recently decided to equip my FPV plane (easy-star clone) with the CRIUS AIOP board and this firmware. At the moment I am just doing some tests on the bench. So far everything seems Ok except that I have a problem with the Throttle failsafe. I enabled it via the Mission planer, but it never activates, even when the throttle  value drops below the specified threshold (as can be seen on the radio calibration screen). Do I also have to change something in the Arduplane code ? Thanks !

  • I switched the GPS's output protocol to UBX (default was NMEA+UBX), and it seems working...

  • Only GPS, nothing else.

  • This sounds like you might've connected two components on the same serial links.  What other stuff is connected to the board and on which ports?

This reply was deleted.