Category Archives: Software

Adaptive Control

WingdropThere is a video available that shows how Paparazzi’s adaptive control loops keep a Twinstar in the air that drops 30% of its right wing with 50% of the aileron and then also switches the right engine off. Another video shows a Paparazzi quadcopter using adaptive control to stay level after dropping 50% of its total weight.


We Moved To GIT

GithubThe paparazzi software repository now has a new happy life on github:

We believe the switch from Subversion to the fast git version control system will make development easier, faster and more fun. It also makes it easier for YOU to contribute. You can easily fork paparazzi on github, commit your bugfixes and new features and send us a pull request.

More info on how to get the paparazzi code from github can be found here.

We also want to encourage you to submit bugs or feature requests on the simple github issue tracker.


Code Refactor

OrganizedCodeAfter many years of development, so many new autopilot boards and aircraft types have been added that a sourcecode reorganization was needed. This undertaking is started and will simplify the continuous evolution of the project.

To benefit from these important changes, it only requires you to update your airframe configuration document once. After you have updated, you should not notice the significant reorganization that is going on behind the scenes. This change will benefit your aircrafts flying successfully for the years to come. The required changes are described on Update Your Airframe Configuration.

At this point several developments are blocked because of this. Therefor we kindly request you to upgrade your airframe configuration documents as soon as possible and thank you in advance for doing so.



Three ENAC students have released a Graphical control application for Paparazzi on Mobile phones using Java Technologies, connecting via Bluetooth to the ground station. It is divided into 2 programs, one running on the ground station, and the other on the mobile phone. Check the Ipodrom project page for more details.

*Ipodrom is the french acronym for Interface pour contrôler un drone sur un mobile. It is the French UAV control interface on a mobile phone.


Paparazzi V1.0

This article is based on the gallery on the original paparazzi savannah website.

The following pictures were taken between August 2003 and October 2003.

We had developed a flight controller board similar to the autopilot one. We had been able to re-use some of their code – for example radio control receiving or servos commanding. Thanks allot Trammel.

The plane now had the potential to become fully autonomous (not controlled from ground anymore).

We made some test with the autopilot inertial sensor (3 gyros, 3 accels) and discovered that it was not that easy to go from “tilt.c” to something that would work in our plane.

Out of despair, we plugged the FMA sensor to our controller board ADCs, wrote some cheap proportional controllers and … surprise, it worked very well.

We worked on calibration (how to estimate attitude angles from temperature differences), and Pascal came out with a Linear Least Square method that gave good results. We observe the turn radius given by GPS. Under the coordinated turn hypothesis, we can convert it to bank angle that will be compared with the one obtained from infrared. The Linear Least Square algorithm will minimize this error.

This system was awarded first price for autonomous flight at the Ensica/Supaero second European MAV trophy in front of 4 international teams.

We had a bad surprise during this competition. A radio control interference disengaged the autopilot during the flight. I was able to reengage it and the flight continued with no other problem. We now filter the radio control signal on mode toggling channels and didn’t experience such phenomenon since. This is not satisfying. The only solution to be really sure would be to go PCM. Trouble is that radio control makers won’t publish their signal specifications. The Futaba PCM was more or less reverse engineered and we are thinking about buying a transmitter from that brand.

The airframe was still a twinstar. It was loaded with several packs of batteries – was very heavy and had a small flight endurance.

We have mounted the autopilot in a maxi-kiool, an enlarged version of the minus-kiool. This plane was light and flew long and well. It had a brushless motor and lipos batteries. This high priced gear had been offered to us by the Pyrénées Modèles shop in Toulouse. Thank you Mr Garat. Saint IGNUcius will give it back to you 🙂

We stopped using it because it was very fragile. The 56g version had no trouble landing on its motor but the 800g one didn’t like it very much. Another reason why we abandoned that plane is that Supaero regarded the design as his and intended to use it for competitions were we would be opposed. They made a high tech carbon/kevlar molded version which they measured in their wind tunnel. I’m not aware that this plane is regularly flying.

After the trophy, we were contacted by people wishing to use Paparazzi. We took conscience that our code was not configurable and would cause problem to port to another airframe.

We began to rewrite it to support an high level configuration language.


Paparazzi V0

This article is based on the gallery on the original paparazzi savannah website.

The following pictures were taken between February 2003 and August 2003.

This was the very first version of the system. The airborne hardware was minimal. It only consisted in a GPS receiver, a pic micro-controller and a modem. The pic would transmit GPS data to the ground. The plane was steered from the ground laptop using the buddy jack input of the radio control transmitter. The plane was equipped with a genuine FMA stabilizer and we tried to pilot “through” it.

This system suffered two major drawbacks :

  • It was not robust at all regarding radio down-link losses.
  • It was impossible to tune. The FMA autopilot reactions change a lot with the contrast. The system had to be tuned everyday to cope with this. We have tried several methods to detect this and compensate, but with very little success.

The best method we found was mounting the infrared sensor on a servo arm and command a bank angle through it. This solved the static problem, but the dynamic was still varying.

We also tried with the FMA switched off to reproduce the “GPS only” results of the minimum complexity uav guidance and flight control system paper by Eric N. Johnson, Aaron D. Kahn (yes, the one from autopilot.) and others.

It sort of worked in calm conditions but was unable to cope with turbulences.

Our GPS receiver was a ublox MS1E, hooked to an active car antenna. It would often refuse to start or loose signal. We learned from this that it was not a good idea to tamper with GPSs and antennas. We started to use SAM modules and had much better results.

The plane completed numerous flights. It ended its life in a corn field after becoming unresponsive. The plane was old and not so “well build”. We suspect a connector got unplugged.