By the time you land on this page, you probably want to enhance the Paparazzi project, that is really good for your karma and really appreciated by the Paparazzi community. We welcome contributions and improvements to the documentation.
See also Doxygen for documentation close to the code.
You would like to contribute, but are not sure how, then this is the page to visit
How to setup your IDE for use with the source code
Improve your Paparazzi code in OCAML,C,C++ and Python
Description of the (rather complicated) build system and code generation regarding the airborne firmwares
Attempt at a longer walk through the airborne code architecture
Attempt at brief overview of the firmware architecture with modules and subsystems
How telemetry and datalink is done
How the telemetry and datalink works
How the Server and the Ground Control Station interact with each other
A short walk through the system and how values are handled
Settings is the generic mechanism that allows to set and get the value of any variable of the embedded code.
The custom Paparazzi math library written in C and how to use it in external programs
All of the questions and answers about the bootloader, but were afraid to ask
All of the answers to the Paparazzi USB bootloader of question you never dared to ask
How to [[upload the Bootloader to a LPC2148 processor based Autopilot board like the TWOG
General ST-LinkV2 page.
Using GDB or OpenOCD to directly flash and debug Hardware
Using a USB connection instead of UART for use with telemetry
All information you are looking for about the harsh reality of Control Theory needed to let your aircraft fly
Altitude and Height demystified
Presentation of the airborne communication system
A stateinterface is a stateinterface is a stateinterface, poems aside read more about what the stateinterface entails here
Real Time Paparazzi how-to and guidelines
Info on the Continuous Integration builds (CI) server
JPL (Jet Propulsion Laboratory) released their own coding standards (can be downloaded for free here: JPL C Coding Standards and Guidelines). They include MISRA-C rules and directives, but add their own rules on top of that. They also specify different levels of compliance (LOC) because not always it is necessary to comply with all of the rules. Anyway, they are making things that go to space, so we can definitely learn something about good coding practices from them.
Info for maintainers on how to create a new release.