Introducing ArduPilot: the world's cheapest autopilot!

The decision to port the Basic Stamp autopilot to Arduino turned out to be an unexpected opportunity to make something really cool. I've taken Jordi's open source RC multiplexer/failsafe board, and mashed it up with an Arduino clone to create "ArduPilot", perhaps the cheapest autopilot in the world. ($110! That's one-third the price of Paparazzi)

Here's what it is:

A custom PCB with an embedded processor (ATMega168) combined with circuitry to switch between RC control and autopilot control (that's the multiplexer/failsafe, otherwise known as a "MUX"). This controls navigation (following GPS waypoints) and altitude by controlling the rudder and throttle. These components are all open source. This autopilot is fully programmable and can have any number of GPS waypoints (including altitude) and trigger camera or other sensors

As with the Basic Stamp autopilot, to make a fully autonomous aircraft you need to combine this navigation autopillot with a stabilization system, for which we turn to our old friend, the FMA Co-Pilot (off-the-shelf infrared sensors and control board to keep the plane flying level), which controls the ailerons and elevator.

By using Jordi's MUX, which allows us to switch from autopilot to manual RC control in hardware, we gain several advantages over the Basic Stamp:

1) Because the switching isn't handled by the processors, we don’t need to drive servos in real time, which means we don't need stand-alone servo driver chips (thus a simpler board)

2) We also don't need “mirroring” subroutines to pass through servo commands in RC mode (simpler code)

3) Don’t need power regulator, since we’re using regulated output from the RC receiver (simpler board)

4) The built-in MUX failsafe is cheaper and simpler than using a stand-alone one.

I've taken a quick pass at the schematic and PCB (Eagle 5.0 format) for ArduPilot, although this will evolve as we go through the hardware testing cycle: Schematic, PCB board. You can buy the board here. Arduino code coming soon in alpha now.

All together, this can be the basis of a sub-$500 UAV:


--ArduPilot PCB: $10

--Boarduino kit + FTDI cable: $35 (subtract $17.50 if you already have a FTDI cable)

--PicoSwitch: $20 (we'll probably build this in the board in the next rev)[UPDATE: Jordi's now incorporated that into the board above. It's a TinyAVR chip ("IC3", $2.75) and its associated programming interface jumpers ("ISP")]

--EM-406 GPS module: $60

--Multiplexer chip : $1

--8 Samtec TSW-108-25-G-T-RA right angle servo connectors (available as a free sample): $0

(That's a $110 autopilot, thanks to the open source hardware. By comparison, the Basic Stamp version of this, with processor, development board and failsafe board, would run you $300, and it's not as powerful)


--FMA Co-Pilot: $70

Plane and RC equipment:

--Hobbico SuperStar (includes motor, battery and ESC): $109

--6-Channel radio system (with proportional control for channel 6, to calibrate FMA system): $109

--Three servos: $45

TOTAL: $440

Views: 52721

3D Robotics
Comment by Chris Anderson on May 29, 2008 at 3:41am
Board will be done once we've had a chance to test them. Hopefully as soon as July but we'll see. No pre-ordering until then. Ardupilot beta 3 is the latest version, but we'll probably swap out some different connectors in the final version.

We've never tried a Spectrum, so I don't know, but I don't see why not. Likewise for the FMA CD4A
Comment by Tim Hirzel on June 5, 2008 at 8:43am
Hello. Sounds like the Arduino code is well under way, but I thought I'd offer up some Arduino PID code just in case it's helpful. I'm using it right now for thermal control, but it's got the goods. Here is a link:

It requires with two other files in the same folder (#DEFINES.h, and eeprom_float.h). If anyone wants to use it, just let me know. I'd be happy to help integrate it, or help with other coding if needed. This is a sweet project. email is tim at growdown dot com.


3D Robotics
Comment by Chris Anderson on June 5, 2008 at 12:18pm

Many thanks for that, which looks really helpful.

BTW, we have a new version of the board coming later today. If you haven't ordered the board, please wait for the new one.
Comment by Wyliest on June 5, 2008 at 11:07pm
Whats different about the new board?

3D Robotics
Comment by Chris Anderson on June 5, 2008 at 11:29pm
Here are the Eagle 5 files. We'll polish them off and upload to BatchPCB tomorrow and publish the ordering link then. The main difference is that a diode that was the wrong way around is fixed, many of the connectors are improved (standard connectors for GPS, and Samtec right-angle connectors for Rx and servos) and the labelling is clearer.

Comment by Phil Wilshire on June 6, 2008 at 5:05am
Hi Chris,
I have not built the unit yet ?
Sould we transfer to these boards then ?
Any more updates on the way in hte near future ?

Could you also publish PDFs of the files. I have not yet got eagle installed.
(my bad)

3D Robotics
Comment by Chris Anderson on June 6, 2008 at 5:14am
Yes, if you can wait another day for us to put them on BatchPCB, I'd recommend that you build with these new boards. For anyone who started with the old boards, they'll still work fine but you have to reverse a diode. PM for more on that if you're in that situation.

This will probably be the final through-hole board, and is best for those doing their own soldering. The board will be working on after that will be surface mount, so it can be produced in an automated way and sold as a pre-made autopilot. Functionally, the two should be identical, with the exception that the SMD one may have a built in barometer, while that's something you add on a daughterboard in the through-hole version.

PDF of new board follows:

Comment by Phil Wilshire on June 6, 2008 at 5:19am
Thanks Chris,

I'll have two unmade older boards for the record books then.
Anyone want them ?

I'll order a new one when you let us know they are ready.

Thanks again for the pdf file.

Comment by Brian on June 12, 2008 at 7:13pm
I ordered this board just before you announced these latest updates. I've been tdy for my job anyway so it doesn't matter. Anyway, even though July is just around the corner as is the "new board" I'm still planning on building one (the version picture on this post is the one I ordered), is the program code available for this version?

3D Robotics
Comment by Chris Anderson on June 12, 2008 at 7:24pm
No code yet (give me a week or two). These boards will work fine (although you may have to change some pin numbers in the code) are functionally identical to the new ones, but DO NOT solder in the diode D1. It's just there as a safety in case you reverse the battery input polarity, but unfortunately we made a mistake on the trace and it's miswired.


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

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service