3D Robotics

ArduPlane home page




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!3689354440?profile=original (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.



E-mail me when people leave their comments –

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

Join diydrones


  • Developer

    Try getting data using U-Center first to rule out a hardware problem. I am not a U-Center expert, but there are a few threads here about it.
  • @Doug Weibel
    i'm powering up by usb and battery at the same time. my imu Led B is getting a solid yellow. while my LED C is flashing .so i'm guessing i'm not getting any gps lock?
    my U-Center is flashing dark green and light green, but i am not receiving any information about the location. i'm using baudrate 38400.
  • Developer
    The current APM software uses libraries for all of the gps code. Please review the manual.

    Powering the APM by USB may or may not supply enough power to get lock with your gps. It depends on how much power your computer will source through the usb cable.
  • Excellent. Thanks Michael. I just wanted to be sure.
  • Developer
    Remove the solder blob from SJ1 on the APM board. This separates the servo power rail from the APM power rail. Then you need to power APM either via the USB connector on the oilpan, or via the power pins on the APM board (down by the solder jumper, not the servo pins).
  • If I power the APM separately, can I still power the servos from the main motor battery?

    Is there a way to power the servos/motor and the Ardupilot/IMU from completely separate sources?

  • Developer
    The USB interface won't provide enough power to reliably run servos.

    As long as you are *careful* connecting 5V via the servo connectors, you will be fine powering APM that way.

    If you have removed the solder from SJ1, you can power APM via the adjacent power connector. 12V is probably too much; try 7-8V there at most.
  • Hello Everyone, I have another Noob question.
    I have my airframe all set up, I have a test bench DC power supply (0-50v Variable) connected to debug this issue, but I'm stuck. If I have my hardware plugged into my USB port on my computer it seems like it's not getting enough power,(rebooting constantly) but when I provide 12 volts, it seems like it's getting too much, ( and still rebooting constantly, and making the servos twitch)

    What is the correct way to power the APM?
    Can I use the power coming from the motor controller?
    Should I power them separately, if so, How?

    Thanks for the help.

    Steve I--
  • Developer
    @toh - sorry, I can't make sense of what you're saying here
    @jimmy - if you are using a USB port on a hub or keyboard, try one that's actually directly connected to your motherboard

    In general though, properly implemented USB ports shut down completely when they are overloaded, so the symptoms you're seeing don't sound like current limit issues.
  • My Mediatek GPS only works when hooked up to the battery. Does not lock on when plugged into USB, so I'd say that's normal.
This reply was deleted.