There will be two ways to get started with PythonPilot:
- Download the open-source python code when available at a future release date and host it on your own computational platform, or
- Purchase the Raspberry Pi based flight controller developed by Robotics In Flight, LLC.
- The easiest approach involves the Raspberry Pi Flight Controller — R-PiLoT. This is an electronics assembly on which PythonPilot is currently hosted, integrated and tested. It combines the sensors, user interface, data links, electrical harnesses, and a mechanical structure into a fully integrated package. It also is ready-to-fly on the PiQuad™ quadcopter. Contact Us (Robotics In Flight) to discuss any interest in collaborating to productize and commercialize the Raspberry Pi Flight Controller.
- If you take the other approach, you will do the work to construct your own python program. This code will interface with the purple PythonPilot block shown in the diagram above. It will provide the inputs required by PythonPilot, the command, control, and sensor inputs. In addition it will connect the PWM control signals to the motors. An Interface Control Document (ICD) is provided as a guide in this effort.
- The purple block is the open-source code segment.
- An integral part of the PythonPilot Electronics Assembly is the interface code which is not provided as open-source code.
- The block diagram shown above depicts the system on which PythonPilot was originally developed. It includes a Raspberry Pi single-board computer interfaced directly to ESC’s and motors, an IMU, and a CRIUS All-in-One Pro Flight Controller through which pilot commands and sensor data pass. The CRIUS board has become obsolete and unavailable and has been replaced with an Arduino board as shown on the Robotics In Flight website. PythonPilot currently runs on this updated R-PiLoT electronics assembly.
ESC – Electronics Speed Controller
IMU – Inertial Measurement Unit
RIF – Robotics In Flight LLC
PythonPilot™ is an open-source flight controller developed entirely in the USA, in Python from scratch. It is customizable. Although developed initially for quadcopters, PythonPilot can be modified for use on multicopters having different prop arrangements, different frame sizes, and different platform dynamics. And for those so motivated, it can be adapted to other types of unmanned vehicles such as ground vehicles, fixed wing aircraft, etc.
Related Articles
PythonPilot Features
PythonPilot has an extensive set of features critical already built in and described on this site: Attitude Stabilization -- Roll and pitch angles go to horizontal, and heading remain fix when releasing the command input sticksAltitude Hold -- altitude setpoint...
Python Open-Source Code
Source CodePythonPilot™ is a new flight controller software suite developed by Robotics-In-Flight LLC for UAVs. Although currently designed for quadcopters, it is readily extendable to multi-copters, and to platforms of other types, i.e. fixed wing, ground vehicles,...
PythonPilot™ & the PiQuad Kit
The PiQuad in kit form and including the PythonPilot Flight Controller has been developed by Robotics In Flight, with copies delivered to a number of users and purchasers, including several kits to the network security company SNIC Enterprises, who have successfully...


