Introducing the PX4 autopilot system

The PX4 team is pleased to announce early availability of the PX4 autopilot platform, with hardware available immediately from 3D Robotics. 


The platform is a low cost, modular, open hardware and software design targeting high-end research, hobby and industrial autopilot applications.

PX4 is an expandable, modular system comprising the PX4FMU Flight Management Unit (autopilot) and a number of optional interface modules.

The PX4FMU autopilot features include:

  • 168Mhz ARM CortexM4F microcontroller with DSP and floating-point hardware acceleration.
  • 1024KiB of flash memory, 192KiB of RAM.
  • MEMS accelerometer and gyro, magnetometer and barometric pressure sensor.
  • Flexible expansion bus and onboard power options.

Expansion modules available at release include:

  • PX4IOAR This module interfaces PX4 to the AR.Drone motor controllers, allowing a complete quadrotor to be assembled using an AR.Drone frame and motors.
  • PX4IO A flexible interface module with support for eight PWM servo outputs, relays, switched power and more.

As an open hardware design, third-party and DIY expansion modules can be easily developed for specific applications, and more PX4 modules are in development.

In addition to the versatile hardware platform, PX4 introduces a sophisticated, modular software environment built on top of a POSIX-like realtime operating system. The modular architecture and operating system support greatly simplify the process of experimenting with specific components of the system, as well as reducing the barriers to entry for new developers.

Adding support for new sensors, peripherals and expansion modules is straightforward due to standardized interface protocols between software components. Onboard microSD storage permits high-rate logging and data storage for custom applications. MAVLink protocol support provides direct integration with existing ground control systems including QGroundControl and the APM Mission Planner.

Pricing of the PX4 components reflects more than a year of careful development and a strong commitment from our manufacturing partner.

This release is targeted at early adopters and developers looking for a more capable platform than existing low-cost autopilots. With more than an order of magnitude more processing power and memory compared to popular 8-bit autopilot platforms, PX4 is exceptional value for money and provides substantial room for future growth.

For more information about the PX4 autopilot platform, visit the project website at

PX4 modules can be purchased from our manufacturing partner, 3DRobotics.

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • Hi Nick,

    Please direct this question directly to 3DR - the hardware is fine and I think quite a few orders already shipped. I'm sure they can follow up on this quite quickly.

  • It has been a month since I ordered this, and my status is still "processing", availability still "ships in 2 weeks!". Am I ever going to see my order? Is there something wrong with the PX4 hardware? I really don't like the fact that my cc was charged immediately a month ago without actually shipping me anything! 

  • @PX4

    Got my initial stuff working in the offical nuttx environment. The PX4 build process is a bit different. I'm sure there is a good reason for - I just don't know. Ported it to the PX4 build. At least I got the nsh shell working on UART2. I added a "firmware/nuttx/configs/stm32f4discovery" folder and made a few changes in the "firmware/makefile". I'm in software development for many years, but I never was into open source stuff. I'm able to download from a Github, but posting something there, is new to me. I'll learn it. It there a got link to get into this? I build a zip file, containing only the new files and the changed makefile I could E-Mail you. Yust let me know your E-Mail adress. I'm out of town in a few days for 1.5 weeks.

    BZW I got the PX4fmu working, but it does not "see" the PX4IO. Was able to build the IO software and load it via SD card. But the shell tells me no PX4IO found... In addition I didn't find any code supporting a spectrum satelite reciever... Looks like there is still work todo - I love this kind a challenges. Will post my question on the "PX4 answer", when I'm back


  • How's the plane firmware coming?  That will be key to serious UAV applications.

    Nice work BTW.  Kind of surprised you didn't use a full 9DOF solution based on ST sensors, as it would have replaced two chips with one cheaper one.  Have you been looking at the iNemo code at all?

    I'm glad to be ditching Atmel and would like to dump Invensense parts also.  Atmel is just too far behind the curve and Invensense is a company that should be boycotted if possible.

  • @chc2111 Can you share your Discovery board config? Maybe in a Github Fork? That would be really cool.

  • @Nick The AR.Drone flashes new firmware on the motors once you connect them first (a new drone will take a little longer on the first boot due to this). So essentially just connect an AR.Drone to the motors before you use them with PX4.

    We are also working on instructions how to flash a new AR.Drone motor without the actual AR.Drone. PX4 does not use custom motor firmware.

    Please ask any further questions if possible on PX4 answers:

    This will help to keep them available and well organized for other users too.

  • "NOTE: If spare parts are bought, the motor controllers need a firmware update (tutorial follows)." Does this apply to 1.0 and 2.0 motors? There is no update needed if you fly a normal AR Drone with spare motor, does this mean the PX4 requires custom motor firmware, and you have to update a complete drone as well to work with PX4?

  • Just recieved the PX4 hardware. Now the setup can start...

  • @PX4

    Got my small app, using just the UART2, working on the discovery board - sorry, shouldn't have asked for it - you have for sure better things to do. It's a good starting point for me to get into the NutTx. The build for the PX4fmu works perfectly fine with your last install package on a Win7 64bit box. How is the trick to get the PX4io compiled? BTW It's quiet a bit of a learning curve to get into the very generic build process, but I'm starting to like this structure.


  • Ditto, it's been one and a half week already and it still says two weeks. I'm going out of the country next week to the states, would hate to cross it mid air over the atlantic :(

This reply was deleted.