LibrePilot | |
Developer: | LibrePilot Team |
Latest Release Version: | 16.09 |
Latest Release Date: | [1] |
Programming Language: | C and C++ |
Operating System: | Cross-platform Windows, Mac OS, Linux & Android |
Genre: | Unmanned aerial vehicle |
License: | GPLv3 |
LibrePilot is[2] a Free software unmanned aerial vehicle project for model aircraft aimed at supporting both multi-rotor craft as well as fixed-wing aircraft. Initially founded by David Ankers, Angus Peart and Vassilis Varveropoulos in late 2009, under the name OpenPilot, it was conceived as both a learning tool and to address areas the developers perceived were lacking in other small UAV platforms.[3] In July 2015 OpenPilot, was forked to create LibrePilot.[2]
The OpenPilot open source autopilot software could be combined with hardware such as an inertial navigation system board, a main control board, a GPS receiver, and a 2.4 GHz serial communications link with the ground station.[4] The OpenPilot software is released under the GPL version 3 license.
The OpenPilot project consisted of two component parts, these are the on-board firmware and the ground control station (GCS).[5] The firmware part of the project is written in C whilst the ground control station is written in C++ utilizing Qt.
The current on-board hardware is based on the STM32 microcontroller.[6] There are two physical boards that are part of the hardware, the first is the main OpenPilot board which contains the core microcontroller, SD socket, barometer plus servo connectors and second, the AHRS board which contains the sensor hardware. In other words, the hardware consists of two boards: the microcontroller board (the core) and the sensors board (the AHRS).
The OpenPilot AHRS was a 9DOF unit and contains MEMS gyroscopes, accelerometers and a 3 direction magnetometer. Combined with the sensors, the OpenPilot AHRS contains its own Cortex M3 microcontroller which runs a Kálmán filter.[7] Filtered orientation data and inertial measurements are presented back to the main OpenPilot board using an SPI interface.[7]
The OpenPilot AHRS contained the following components:[8]