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


  • Admin
    @John C,

    The APM_RC folder (which includes the APM_RC.h file) should go in the IDE libraries folder. The whole APM_RC.h folder must go in the libraries folder. The same holds for the APM_ADC folder, and the other two folders called out in the APM_1_0.pde file.

    Hope this helps.

  • Admin

    Check this discussion: http://www.diydrones.com/forum/topics/trouble-reading-inputs-from

    Hope this helps.

  • I got an error on atmega328 chip on my APM. Can enyone help me.
    Where can I find the programming code, and fuse settings for the ppm-encoder on APM.

  • Great. my IMU has arrived yesterday.

    Is there a schematic available?
  • Yeah, I'm having a hard time figuring out where the header/libraries go.

    I've tried in some various include directories, but haven't had any luck.

    Where does APM_RC.h go in relation to APM_1_0_header.h?
  • Admin

    I found that the APM_RC.h had been corrupted, so I loaded it into the same file that the ArduPilotMega_1_0.pde is in and used the fix encoding and reload tool to fix the APM_RC.h and then loaded it back into the library. I am attaching a known good copy of the APM_RC.h file.


  • Admin

    Are you trying this test inside or outside you house. It can take up to 15 ~ 20 minutes for the Ublox to get an initial fix and you really should be outside.

    If you have a working ArduPilot, I would hook the Ublox to the ArduPilot and install ver 2.4 or 2.5 and see if you can initialize the Ublox and then test it with the ArduPilot Mega if you can.

    Also, have you adjusted the AMP_1_0_header.h to reflect the GPS module that you are trying to use:

    //0-4 GPS Type
    //#define GPS_PROTOCOL 2 // 0 = NMEA, 1=SIRF, 2=uBlox, 5 = Simulated GPS mode (Debug)

    Just a thought.

  • @wilsonj - look back on Page 6 of this thread near the bottom for APM_RC.h
  • Just got the connectors soldered to the APM. Successfully processing all 8 PWM inputs, reading and scaling rate gyro and accel data. Progress!

  • I just tried that code to bench test my mega also, but I get "51:error APM_RC.h: no such file or directory"
This reply was deleted.