Skip to the content
2 layers91.5 × 78 mmPi Fly, the printed circuit board in 3D

Significant improvement to OBAL (Open Board Autopilot Linux)

Size
91.5 × 78 mm
Copper layers
2
Thickness
1.6 mm
Parts
30
Nets
62
Pads
158
Tracks, vias
408, 15
Pours
1
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
18 Feb 2025
Updated
6 Apr 2025

Overview

Pi Fly is an open-source printed circuit board by PashMohandes, from the PashMohandes/Pi-Fly repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 91.5 × 78 mm with 30 parts on 62 nets, routed with 408 tracks and 15 vias.

It is built around the PCA9685PW, ADS1115 and ULN2003A, with the IRLML6344, PN2222A and SS12D07VG4 among its other parts. Its parts include 11 resistors, 6 ICs, 4 connectors, 3 diodes and 2 transistors.

Main components

6

README

README.md

Welcome to the Pi-Fly Wiki

Welcome to the official Pi-Fly github page! 🚀

Pi-Fly is a next-generation automation platform designed to streamline and simplify the configuration of Raspberry Pi-based systems for Ardupilot, Pi Camera, and more. This platform takes advantage of modern Linux capabilities and offers an easy-to-use Python script to automatically configure your system for optimal performance.

Whether you're a developer, hobbyist, or a drone enthusiast, Pi-Fly is designed to help you easily set up and run your systems with minimal effort. Our goal is to provide you with the tools you need to succeed in your projects, whether it's automating flight controllers, working with IMUs, or streaming live video from your Pi Camera.

Why Pi-Fly?

  • 64-bit Architecture 🏎️ - Faster and more efficient than previous versions.
  • Automated Setup ⚙️ - No manual kernel tweaking; everything is configured via script.
  • Multi-Sensor Support 📡 - Works with multiple IMUs, GPS modules, and ADCs.
  • AI & Computer Vision Ready 🤖 - With the powerful Raspberry Pi 4, the Pi Camera Module 3 can be leveraged for AI-based applications such as object detection, autonomous navigation, and real-time video analysis.
  • Affordable & Open-Source 💡 - A high-performance alternative to expensive, proprietary flight controllers.

Feel free to explore the various setup guides, troubleshooting tips, and features that Pi-Fly offers. If you have any questions or suggestions, don't hesitate to reach out—we're here to help you make the most of your experience with Pi-Fly!

Check out the Pi-Fly Wiki for all the details.

Note : The board/project is not limited to Ardupilot. It can be used with any other flight controller such as PX4, INAV, Betaflight, your own flight controler,...etc Note: : The initial name of the project was OBAL_V2, the name was changed to Pi-Fly due to some political issues with the owner of initial OBAL !!

Happy building! 🚁✨

3D PCB

Drone

Armed

OBAL vs Pi-Fly vs Navio2 - Comparison

🚀 Overview

This table outlines the significant improvements made from the initial OBAL to Pi-Fly and compares it with the Navio2 flight controller system.


⚙️ Feature Comparison

FeatureOBALPi-FlyNavio2
Linux KernelBulleyesBookwormRaspbian + ROS
Ardupilot32-bit64-bit?
Linux ConfigurationManualAutomatic via scriptManual
Rx ProtocolPPM/PWMIBUS and SBUSPPM and SBUS
Flight ControllerPrototypeComplete systemComplete system
IMUGY-91GY-91, GY-912, ... + moreMPU9250, LSM9DS1
DisplayNoYesNo
Power ModuleNoYesYes
LicenseOpen sourceOpen sourceProprietary
Price< $60< $60$199
Linkherehere [blocked]here

⚠️ Cons with Initial OBAL:

  • Uses analog Rx protocol (PPM) or (PWM), limiting flexibility.
  • Limited to GY-91 IMU (only possible IMU).
  • Safety switch is not well designed.
  • No proper logic conversion (mix of 5V and 3.3V logical levels with Raspberry Pi).
  • Uses an old Linux version, requiring recompilation to disable CONFIG_STRICT_DEVMEM.
  • 32-bit Ardupilot applications limit performance.

[Donation] Your support is invaluable to this project!

Countless hours of hard work, prototyping, and investment in tools and materials have gone into making this project a reality. If you appreciate the effort and would like to contribute, your donation will help us continue developing and improving Pi-Fly.

Please consider donating for the project. There were tremendous effort added in this project. Many prototype boards were built and a lot of tools were purchased to make this project become true.

click image below to start donating :

Donate with PayPal

Important

Use this project at your own risk.

Parts

30
QtyValueFootprintReferences
3LEDLED_THT:LED_D3.0mmD1, D2, D3
3R_10kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR8, R10, R13
3R_1KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR3, R4, R5
3R_5kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR9, R11, R12
13v3_RegulatormyLib_Footprint:RegulatorJ4
1ADS1115ADS1115:MODULE_ADS1115U2
1BuzzerBuzzer_Beeper:Buzzer_12x9.5RM7.6BZ1
1GPSmyLib_Footprint:GPS_SH1.0U4
1IRLML6344Package_TO_SOT_SMD:SOT-23Q2
1PCA9685PCA9685:MODULE_815U3
1PN2222APackage_TO_SOT_THT:TO-92_Inline_WideQ3
1R10KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR2
1R50KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1
1RASPBERRY_PI_4B_4GBmyLib_Footprint:RPI_4_Hat_B+U6
1RCInputmyLib_Footprint:RCInput_xBUSJ6
1SS12D07VG4SS12D07VG4:SW_SS12D07VG4S1
1SSD1306myLib_Footprint:SSD1306Display1
1SW_SPDT_321myLib_Footprint:xBUS_SelectorSW1
1UBECConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ7
1ULN2003APackage_DIP:DIP-16_W7.62mm_LongPadsU5
1power_modulemyLib_Footprint:power_moduleJ1
1~myLib_Footprint:GY-912U1

Similar boards

  • 2 layers68 × 86 mmCarte PCA9685, the printed circuit board in 3D

    Carte PCA9685

    ENACRobotique/elec

    Dépôt des cartes électroniques de l'équipe ENAC Robotique

    38 parts2
  • 2 layers200 × 100 mmSmart home, the printed circuit board in 3D

    Smart home

    vishal007-hacker/smart-home

    ESP32-based smart home controller for switching 4 independent 230V AC loads, with per-channel current and voltage sensing, manual override buttons, status LEDs, and an I²C LCD display.

    76 parts
  • 2 layers94 × 79 mm5 - Lizard Car, the printed circuit board in 3D

    5 - Lizard Car

    TRD-B/Lizard

    3D printed RC race car with custom electronics

    54 parts129CC-BY-4.0
  • 2 layers213.4 × 88.7 mmEsp32 pelco board, the printed circuit board in 3D

    Esp32 pelco board

    abzman/pelco-kbd300a-replacement-controller

    replacement board and code for this joystick and keyboard

    93 parts2
  • 2 layers123.2 × 50.2 mmI2c l298p, the printed circuit board in 3D

    I2c l298p

    abzman/modular-i2c-board-set

    boards designed to be used together to create a modular control system

    133 parts1Unlicense
  • 2 layersKanelbulle, the printed circuit board in 3D

    Kanelbulle

    h4xxel/kanelbulle

    EgenEl solplugg

    87 parts
  • 2 layers99.6 × 54.1 mmSMuFF Backbone, the printed circuit board in 3D

    SMuFF Backbone

    kitspace-test-repos/kicad6-file-collection

    61 partsMIT
  • 4 layers85 × 56 mmRadiohead, the printed circuit board in 3D

    Radiohead

    mpvano/radiohat2

    Software and Documentation for the Radiohat2 Project

    175 parts2MIT

Questions

How big is the Pi Fly PCB?

It measures 91.5 × 78 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Pi Fly use?

30 parts, built around the PCA9685PW, ADS1115, ULN2003A and IRLML6344. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Pi Fly KiCad files?

From the PashMohandes/Pi-Fly repository on GitHub, at the commit this page was made from: the board is PCB/PCB.kicad_pcb and its schematic PCB/PCB.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Pi Fly design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).