I wanted to have an advanced autopilot to extend my realitively simple flight controller. This would allow my drone to have many new flight modes and support programming, which would enable me to build interesting drone software in the future.

What it does

My project brings the powerful opensource PX4 drone flight controller to the Raspberry Pi 3, with support for the MPU9255 IMU and the NAZA GPS.

How I built it

  • Wrote C++ drivers for MPU9255 IMU
  • Reverse engineering PX4 code base
  • Added MPU9255 code to PX4 code base
  • Wrote code for Arduino to interface with GPS
  • Interfaced Arduino with RPi
  • Included GPS code in PX4

Challenges I ran into

  • Figuring out autopilot code (Ardupilot and then PX4)
  • Getting a GPS fix indoors
  • Time

Accomplishments that I'm proud of

  • Figuring out how to add my custom sensor code to the PX4 codebase.
  • Writing C++ driver for IMU

What's next for PX4 RPi

I am excited to perform more tests on my project, and then play around with some apps to control my drone.

Share this project: