Convert any RC airplane into a fully-autonomous UAV!
Just add the APM 2 autopilot to any RC aircraft and it becomes a fully-programmable flying robot with a powerful ground station and Mission Planner.  


Features include:

  • Return to Launch with a flick of your RC toggle switch or a mouse click in the graphical Ground Station
  • Unlimited 3D GPS waypoints
  • Built-in camera control
  • Fully-scriptable missions
  • One-click software load, and easy point-and-click configuration in the powerful Mission Planner. NO programming required!
  • Replay recorded missions and analyze all the data with a graphing interface
  • Supports two-way telemetry with Xbee wireless modules. 
  • Point-and-click waypoint entry or real-time mission commands while the UAV is in the air
  • Fly with a joystick or gamepad via your PC--no need for RC control!
  • Built-in failsafe will bring your aircraft home in the case of radio loss


All instructions and software are here.




APM 2 is an open source, Arduino-compatible, pro-quality autopilot. It is the most advanced IMU-based open source autopilot available today, and provides an entire UAV control system with scriptable missions with 3D waypoints, in-flight uploading of commands and powerful ground station software. 


APM 2 supports any kind of of vehicle with a one-click change of code. Available code include ArduPlane (fixed wing), ArduCopter (rotary wing), ArduRover (ground vehicles) and more.


Everything you need to create an ArduPlane UAV:


APM 2.5 autopilot with GPS ($179)

[Optional] Telemetry kit ($75).


You'll also need a at least a five-channel RC radio setup, a soldering iron, a mini USB cable and of course something that flies! (We're partial to the SkyFun delta wing (right) and
Bixlee 2   powered glider (left) or its equivalents ourselves).






Source code/firmware

Note: ArduPilot Mega requires no programming, but it's open source and you're welcome to modify it if you'd like. If you are going to play with the code, you can use the free Arduino IDE to edit and upload the code to the ArduPilot board.



Views: 591959

3D Robotics
Comment by Lorenzo@StoreDIYDrones on September 20, 2011 at 9:23am

@Gary McCray, here's the part number for the led, APT1608SRCPRV.  You can also get in touch with the store and can repair it for you.  Let me know!

Comment by Gary McCray on September 20, 2011 at 12:07pm

Thank You Lorenzo, Kingbright LED from Digikey.

I'll get one the next time I order from them.

3D Robotics
Comment by Chris Anderson on September 22, 2011 at 11:05pm

Jonny: Yes. All this is in the manual. 

Comment by Bill on September 28, 2011 at 2:15am

For dual APM I could feed both APM with the Rx outputs, feed both APM outputs to an extra mux and control that mux from the primary APM mux c/o line.

The extra mux normally passes the primary APM output to the servos.

If the primary APM fails the extra mux switches to the secondary APM output, then if the secondary APM fails it passes the Rx outputs directly to the servos.

Or is there a better way to run dual APMs?


Comment by Richard BH on October 21, 2011 at 2:18am

Can you run HIL simulation with just the APM and no IMU oil pan?

If not, is there a reason?




Comment by Julian Davidson on November 18, 2011 at 5:11am

Dear All,

Greeting~! I'm new in this and hope can have some advise from you all Thanks in advance.

I'm new in embedded/IC programing too, am thinking to start learning through this project :)

(My last 'C' programing class was 12 years ago! Can do some basic HTML only)


Some Q on (1280):

1) I have APM V1 board (ATME1280), the source code can be uploaded in Mission Planer (MP) however later it will say 'Verify failed: exp 10 got C at 126976" ... it is because 1280 board can never be use again? My Mp version > 1.0.77.


2) If I still want to use the 1280 What are the 'APM version' codes I need to upload?Those <V2.2?


Q on APM V1.4 (2560)

3) Bought everything connected and tested. (For Quad.Thank God for that haha) ... tried it on MP, works well in the 'flight data'...however when I 'tilt' the sensors, I dont see any 'response' output from any of the output channel shown on the display. (I thought as I tilt it and as it is in stabilize mode, it should give out some PWM to counter it??) .... My 900Mz Xbee connection dint work..guess I need to change the boudrate to 57K as I just found out both was at 9600


3.1) Where can I find any guideline on how to connect my quad? e.g connection for motor...etc..(I've my own made quad that is tested and workable)


3.2) Can we also use pitot tube for the above together with the sonar sensor?


Other (Programing side)

4) I would really love to learn how to do some GUI (e.g my own GCS) to do some basic control + display. Where should I start?  Learn the "MAVLink protocol command" ?


5) can we modify the current Mission Planner? As in the code is there for us to modify? If so which software I should use to open the file?


6) How can I read files send from the APM via Xbee and how can I sent new command back to the aircraft?



Thanks! Sorry for the lengthy Q .... Looking forward to begin my journey in programming! :) (Dreams come true! Thanks for starting this great project Christ + team + others!)




3D Robotics
Comment by Chris Anderson on November 18, 2011 at 5:27am

Julian, you've asked a lot of question, half of which are actually about ArduCopter, not ArduPlane. But here are some quickies:


--I think 2.24 was the last version that supported the old 1280 boards.

--The ArduCopter manual is here

--You can't use the pitot tube on a quad (since there is no set "forward" direction)

--The MP source code is here. Programmed in dot.Net. Use Git to make a local clone.

--All the instructions on communicating with the aircraft with the MP, including sending commands, are in the ArduPlane manual.

Comment by Julian Davidson on November 18, 2011 at 5:32am

Wow Thanks Chris! You are very efficient!!... Will study every single one of them!

I just notice reason why I can't find solution for the quad is because i dint "click the "+"s to expand those items"


Happy Codding!

Comment by Julian Davidson on November 20, 2011 at 8:21am

Hi Chris,

Sorry I think this is beyond me, what does it mean by "Use Git to make a local clone"

GIT a software that we can download to make a clone (all the files needed) in my computer? If there is any info for novice like me to go through so I can get my self ready to do the 'dot net' programming... how can I start? (I'm currently installing dot net)

Good news is I've my APM ready for flight  and kind of understand the MP already.... guess next step for me is the programing side.


Thanks for your time!

3D Robotics
Comment by Chris Anderson on November 20, 2011 at 8:33am

Julian: Git is the version control system used in our Google Code repository. A intro on how to use it with ArduPlane is in the manual.


You need to be a member of DIY Drones to add comments!

Join DIY Drones


Season Two of the Trust Time Trial (T3) Contest 
A list of all T3 contests is here. The current round, the Vertical Horizontal one, is here

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service