APM 2.0 is the culmination of almost a year of hard work. We wanted to make it perfect and we finally have it, we are pushing the limits of AVR and Arduino. I’m sure you will love it, and it’s designed to cover all the DIY community expectations (including those that are not so DIY and are only interested for something that doesn’t require soldering skills). 

Check the product listing for availability status!

Main Features

  • Three processors--a triple-core autopilot!
  • All new state-of-the-art sensors; the first autopilot to use the Invensense 6DoF MPU-6000
  • Smaller, lighter, cheaper than APM 1.0--just $199 ready to fly, with GPS, magnetometer and dataflash included.
  • Like APM 1.0, this is the world's only Universal Autopilot. The same hardware can autonomously control planes, multicopters, regular helicopters, rovers, even boats, with just a one-click firmware change--no programming required! Best-of-breed mission planning and two-way telemetry, and soon with advanced scripting with Python for robot acrobatics and more.
  • Twice as much dataflash memory, with SD card slot
  • No soldering required
  • When using the internal sensor fusion processor of the MPU-6000, more than half of the Atmega2560 processing capacity is free for new advanced features.
  • Native USB, with all new PPM encoder software


New sensors

The big advance in APM 2.0 is the introduction of the Invensense MPU-6000 sensors, which have an internal Digital Motion Processor (DMP) that does advanced sensor fusion. We’ve tested it for months, including lots of flying, and it significantly outperforms the DCM used in APM 1.0. It’s your choice whether you want to  use the MPU-6000 internal sensor fusion or do it yourself in the main processor, but if you choose the DMP it frees up nearly 40% of the processing power in the Atmega 2560. This is a digital chip, so we were able to eliminate the ADC chip used in APM 1.0, lowering chip count along with cost and size.

We’ve also upgraded the barometric pressure sensor to the MEAS MS5011, which has a resolution of 10cm! This is at least twice as accurate as the pressure sensor on APM 1.0 and should give ArduCopter best-of-class altitude hold capability. Here are some of our side by side tests conducted by Jose Julio (Spain):

We joke about the color of APM 2.0, we say that is the fusion of ArduPilotMega V1.x (Red board) and the Oilpan/Sensor Shield (Blue board) and resulted to be a purple board. Well this might not be the real reason of the purple color, in fact the APM 2.0 fuses the APM 1.0 and the Oilpan/Sensor board into one, in order to save space and make it cheaper.

Micro daughterboard

But why does it have a small daughterboard with an SD slot, GPS and the magnetometer on top? Aha! The big dilemma I had for months! I was very concerned about leaving the GPS and the Compass stacked on the main board. What will happen to the compass if the board is placed near to big electromagnetic fields like a brushless motor? What will happen if the board is inside a carbon fiber frame and GPS reception is blocked? But what happen if none of those issues matters to you and you want a small board with everything on it? What can I do to solve the necessities of everybody?

So I developed a small shield that can be mounted inside the boundaries of the pins and has special connectors to keep a very low profile of the system, so if you want a small board then you have it! But this shield is optional, so you can still attach your old GPS by using the standard APM V1.0 GPS connector or the classic compass port. But because I promised no soldering I have created a special I2C port (similar to the GPS) that allows you to attach an official APM 2.0 Compass board by just plugging it (yeah just plug and play). The SD slot is there because I had no other place with easy access (underneath the main board was messy and you will be obligated to dismount and flip the entire board to remove the card, you don’t want that right?). In the other hand the daughter board will come in four flavors: GPS+MAG+SD, GPS+SD, MAG+SD and SD. For example if you want to attach only the magnetometer (Compass) externally you just buy the option GPS+SD.

SD card dataflash

The SD slot can read regular SD cards. But for the moment we don’t use them in ArduPlane or Arducopter code because writing regular FAT tables is very slow and can screw up the main loop refresh rate (We’re not using a RTOS yet, and won’t until we migrate to ARM in Q1 next year). There’s why I have created a custom SD card with dataflash on it (twice the capacity of the one in APM 1.0), plus it has the advantage of being removable so you can have multiple logs or you can easily replace it when you exceed the life of the chip. But in case you are planning to use APM 2.0 in something that doesn’t require a 200Hz loops (like a very powerful data logger or weather station) you can interface with a regular SD cards and write text files on them. The possibilities are endless!

The board itself is our first four-layer design and is smaller than APM 1.0 (believe it or not it’s just 2.6 x 1.6 inches, even smaller than the UDB) and this includes four mounting holes and rounded edges to give a nicer look and feel! Of course it’s lead free and ROHS complaint.

New PPM encoder and USB interface

Along with the Atmega2560, there is an Atmega32-U2 that works as the USB (FTDI) serial programmer (Arduino Compatible) and PPM Encoder. This setup allowed us to save even more space and reduce prices by eliminating the FTDI chip in the APM 1.0 board. Best of all, you can update the Atmega32-U2 firmware without buying a SPI programmer; you can easily update via USB!

The Atmega32-U2 also features something called “Serial0 Auto Switch”. This function automatically toggles the serial port 0 from the Atmega2560 from the USB Serial programmer and the modem/OSD port. When you are about to upload a new code through the mission planner or Arduino the Atmega32-U2 will auto-route the Serial0 to the USB Com port and load the code, when is done it will automatically switch it back to the Modem or OSD port. This maximize the usage of this serial port that before was wasted the average of the time (not used while flying). On the APM 1.0 the modem won’t work when is programming and you don’t program anything while you are flying so theirs is virtually no downsides in normal operations. Anyway in case you want a dedicated UART for each you can still switch back to the old APM 1.0 configuration with some solder jumpers.


More I/O

APM 2.0 is also packed with 12 analog pins that can be used as digital I/O pins and three of them can be “solder jumpered” to add extra PWM output channels (for gimbal operations). Each analog/digital pins can be used to read or control special devices like current, RPM, voltage and ultrasonic sensors and output devices like cameras and relay’s. The mission planner will allow you to define in which pins you have connected a device and a drop box will give you the options to select pre-defined sensors or declare a new one (Something similar to Remzibi OSD). This sensors or output devices can be later used in missions and do actions when certain conditions are met (Not implemented yet).

APM 2.0 features 8 PWM outputs (and can be increased to 11 if you give up 3 of your 12 analogs) and 8 PWM inputs. You can also bypass one of the pins with a solder jumper to insert your own PPM signal, still you can use the other PWM inputs left to control something else (so you can have more than 8 inputs).

The +5V servo power is optionally separated from the rest of the board, you can join both powers by insert a regular jumpers. This saves us a lot of problem in some setups. It also features a protection diode to protect the board from reverse polarities.  Reset pins are left exposed with ground, so you can add an external reset switch if you wish.

Thanks to the incredible work of the DIY Drones Dev Team, the ArduPlane and ArduCopter code will support the APM 2.0 board when it ships. Special thanks to Pat Hickey, an embedded programmer rock-star, who led the team who ported the code to the new board. Others who worked tirelessly on this include Jose Julio, Andrew Tridgell, Doug Weibel., Randy MacKay, Jason Short, John Arne Birkeland, Olivier Adler, Sandro Benigno, Max Levine the 3DRobotics team and scores of others. It was a huge job!

Special thanks to Chris Anderson for making this possible.

The new code is already in the repository and supports both APM 1.0 and APM 2.0.  The Mission Planner will autodetect your board and load the appropriate code (Note: the official 3D Robotics APM 2.0 board has a unique signature and the MP will look for that. Other people can make their own APM 2.0 boards, but the official MP will probably not support them). But if you want to do it manually in Arduino just change this line in Config.h from APM1 to APM2: # define CONFIG_APM_HARDWARE APM_HARDWARE_APM1


APM 1.0 (back) vs APM 2.0 (front)


As you can see the board is more than great! But when you discover the prices you will be double amazed:

APM 2.0 + Daughter board (with all sensors) + 1 x dataflash Card for datalogging + USB micro cable + All pre-soldered and tested for just $399… But we have a special DIYDrones promotion; if you buy it within the next 100 years you only will pay $199.95 (yeah you read it right $199 US Dollars). =P

Seriously. $199 for everything, for everyone, always.

Important note: The board is already available and tested, but with this incredible price you can expect a very high demand (even before formal announcement) so the only way you will be able to get one board soon is by pre-order at the link below. The expected waiting time is from 1 to 6 weeks. First come, first served. We expect to end this delay by February when the shortage of some sensors is over. (We’re going to limit the first batches of board to users; unfortunately we can’t allow distributor sales until customer pre-orders are filled)


Views: 226348

Comments are closed for this blog post

Comment by Sgt Ric on February 14, 2012 at 3:07pm


A previous poster complaining about the wait, mentioned that Chris should "show respect for people that actually pay you to work at your hobby"

...well they obviously don't know anything about Chris Anderson. 

From what I can gather, he certainly doesn't rely on DIYDrones to fund his R/C hobby...

DIYDrones is his hobby! 

 It must be disheartening to have to listen to complainers, and answer the same questions over and over)

Comment by Rod Cole on February 14, 2012 at 3:50pm

Sgt Ric:

I couldn't agree more wholeheartedly with your statement. I do not personally know any of the folks at DIYDrones, but reading their answers to the same question over and over certainly validates your statement and is a testament to their patience. On top of that, they take the time to answer other questions about APM2.

Reading between the lines, I gather that the staff is busting their butts around the clock to rectify a problem that was outside of their control. That they have been able to ramp up production beginning with the very day they received the missing parts speaks volumes about their dedication to the continued success of this project and the complete satisfaction of all customers who have been impacted by the delay receiving the part.

But it doesn't stop there. The staff are getting ready to repeat the cycle again with the new 3.0 code and likely, a new hardware design. IMO, it looks like they are on a self imposed treadmill, doing so because they love what they are doing. Theirs is a very aggressive development cycle, especially for a small company that appears to be pretty much self funded.

I am just as anxious to receive my APM2 as anyone else, but I also feel like we collectively need to give DIYDrones enough breathing room to complete this run so they can fill the orders of all the folks not lucky enough to have gotten on this build.

Kudos to everyone involved in the project. You are much appreciated.

Comment by Brian Linger on February 14, 2012 at 6:06pm

@Sgt. Rick, in school we learned, or should have, that to quote a person requires accuracy.  I stated, and will state again.


To Chris Anderson:

"I wish you and DIY luck, and suggest personally that you show the gratitude you must have for customers willing to trust DIY with what to some people is a lot of money in this economy."

That is a quote, respect and gratitude are different things.  You don't help their position by showing your understanding of general communications.  I stated, my opinion, and do again to correct your error.

Comment by Michael Pursifull on February 14, 2012 at 7:17pm

There is a tendency, over time, for the minority, contrary view to grow, while the silent majority view is eclipsed behind this louder voice. People are motivated to action more often by their disappointment, frustration, and anger than their gratitude, their calm, or their joy.

I want to take a moment to thank everyone at DIYDrones and the APM2 team. I ordered an APM2. And I am perfectly pleased to wait for it. I fully understand the challenges of supply chain, of increasing demand, of tooling, expanding the operation, and I understood all of these things and the preorder situation before I placed the preorder. 

I also understand how some few can become frustrated, infected with the "I want it now" bug. I suspect the emotional turmoil in these people is likely to be enhanced (greatly) in cases where they do not already have an APM with which they can jump into the game. I hope you can forgive, or at least overlook, those who are forced, by their emotions, to nash and fury some. I can imagine how much more anticipation and clock-watching I might experience if I did not already operate three APMs, waiting, as I would be, for the APM2 to arrive in my mailbox, disappointed each day when the mail carrier left me bereft. 

You all are doing a great job, the community is very privileged to have each of you contributing your passion and time. I hope you can forgive the few negative, hopeful, frustrated few who did not, it seems, understand the situation when they pinned their passions to a quick delivery of the APM2. I suspect that those few did not understand the situation, and may be relatively new to the community. I do not think their difference of spirit is due to DIYDrones or this community. It happens, and a solid effort was made (and was successful, in my case, at the very least) to make people aware that this is not "an order, wait two days, receive bacon" situation. 

I am thrilled with the APM2. I was surprised at its unveiling. I am grateful that I was able to order one, and I'm perfectly happy to wait, and I while I would be disappointed if the supply chain fell apart, and I did not get one, it would be the disappointment of not being one of the lucky ones who did get one. And I will be even more ecstatic at the next unveiling. The only way that I would truly become distressed or disappointed is if anyone who contributes to this project were to become disenchanted by the few frustrated comments. I appreciate your passion and your contributions, and I earnestly hope you can forgive them their throws. I do not agree with them, but I understand how a few might feel that way. This is part of the same passion for this project that so many share, spilling out in frustration because they cannot participate. 

If there is any cause here, it is the fault of creating something so useful, fun, and exciting that plain wording about the preorder and supply chain process is overlooked in one's anticipation. 

Thank you. Please let me know if there is anything I can do to help. I would be happy to see my order slip in favor of someone who does not already have APMs so that they can dive into this community and participate. I wish there was some more significant way to help, and I expect the logistics would cost the DIYDrones store more time to arrange than it helps, but it is the only idea I had to offer just now. And because it bears repeating, thank you. Thank you for you passion, for your attention to detail, for your willingness to contribute.

Comment by Harrison on February 14, 2012 at 7:22pm

Hahaha whats your order number? I'll take you up on that offer...

Comment by Harrison on February 14, 2012 at 7:30pm

Scratch that according to twitter I've shipped! Although my status online says I'm still on backorder and I didn't recieve an email? Is that happening to everyone?

Comment by Michael Pursifull on February 14, 2012 at 7:30pm

18338 - it was only placed 1/23/2012. Of course, I prepared orders for two or three APMs on several different occasions, from the first announcement to this order, but did not complete the order. I expected there would be a lot of demand, and knew each time by holding off on my order, someone else would be the happier to get one for themselves. In the third week of January, I had a moment of weakness :)

Comment by Martin Szymanski on February 14, 2012 at 7:32pm


I anticipate in time this pre ordered board will develop better.

Am willing to wait.

Comment by Terry Patton on February 14, 2012 at 7:40pm

To Chris and Jordi may I take a great liberty:

You can please some of the people all of the time and all of the people some of the time. But you can't please all of the people all of the time. Welcome to the commercial products and service industry. Just leave it guys. No need to offer such a compensation to anyone for anything. As long as you are doing the best job that you are able then there is no need. If it was anything less, then let your conscience be your guide on a case by case basis and nothing more. To do anything else could set yourselves up for the professional whiners just looking for an opening for compensation.

I'm not saying the above relates to any person here. It's just a global tip and opinion based on your response and offer of compensation.

Comment by Cool Dude on February 14, 2012 at 7:46pm
I share @Mike Pursifull view that the loud minority obscure the silent majority. I was thinking of writing something similar after reading these comments for a while. But English is not my first language and certainly do not possess great writing skills so I could not.


© 2018   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service