ArduPlane, ArduCopter, ArduRover, ArduSub source
Go to file
Kevin Hester 9885cc7ed1 Docs: Add XML emit to param_parse.py. See below for more details...
I've refactored the param_parse tool to use various 'emitters'.  An emitter
can take parameter info and output it in a particular format.  Currently the
only supported emitters are the wiki and XML formats.

The goal of these changes is to create a standard machine readable description
of parameters - mainly for use by ground control stations, but it will also
enable spiffy scripting environments where code can refer symbolically to
vehicle parameters (reflectionish).

Open issue: Is there any sort of Ardupilot build id which can be included in
the generated XML?  That would ensure that we select the correct paramdefs
for the load on the target (possibly by asking the target for a SHA or
somesuch).  If that issue is resolved, then the filename for the XML
file should probably be something like:
arduplane-ca5742ac.pdef.xml.

It is worth noting that I've proposed a suffix of ".pdef.xml" for these file
types.  This facilitates automated file handling on Android devices.  On
Android you can register 'handlers' for particular file extensions and if
the user tries to open that extension in email or a web browser your app
will be given a chance to do something about it.  The 'outer' xml extension
will allow naive editors to know that at least this is an xml file.

I will include a sample of the XML format with the pull-request for this CL.
2013-03-10 17:47:42 +11:00
APMrover2 Rover: removed INPUT_VOLTS parameter 2013-03-08 10:01:51 +11:00
ArduCopter Copter: only start delay timer after reaching wp location and altitude 2013-03-06 12:50:41 +09:00
ArduPlane Plane: added TKOFF_THR_MINACC option 2013-03-09 14:41:04 +11:00
cmake Worked on ArduCopter cmake options. 2012-04-19 16:05:08 -04:00
FollowMe import FollowMe into new repo 2013-02-03 12:39:56 -08:00
libraries Examples: Improved compatibility with Mission Planner serial terminal (CLI) 2013-03-09 15:02:56 +11:00
mk Build: fix case of "com3" and add Arduino path override 2013-03-08 16:59:35 +09:00
Tools Docs: Add XML emit to param_parse.py. See below for more details... 2013-03-10 17:47:42 +11:00
.gitignore Git: Adding MacOS gitignore .DS_Store 2013-02-20 21:09:06 -08:00
.project ArduPlane cmake build working. 2011-10-31 13:18:48 -04:00
COPYING.txt cmake overhaul, cleaned up readme, added license 2011-09-30 17:32:51 -04:00
Doxyfile.in Working on doxygen support. 2011-11-25 21:35:20 -05:00
README.md README: rewritten to be up to date 2013-01-14 14:47:52 -08:00
reformat.sh better commit message for uncrustify 2012-08-17 11:36:07 -07:00
uncrustify_cpp.cfg fixes to preprocessor retab settings 2012-08-17 11:36:07 -07:00
uncrustify_headers.cfg small changes to uncrustify_headers.cft 2012-08-21 18:59:13 -07:00

ArduPilot Project

Getting the source

You can either download the source using the "ZIP" button at the top of the github page, or you can make a clone using git:

git clone git://github.com/diydrones/ardupilot.git

Building using Arduino IDE

ArduPilot is no longer compatible with the standard Arduino distribution. You need to use a patched Arduino IDE to build ArduPilot.

  1. The patched ArduPilot Arduino IDE is available for Mac and Windows from the downloads page. On Linux, you should use the makefile build.

  2. Unpack and launch the ArduPilot Arduino IDE. In the preferences menu, set your sketchbook location to your downloaded or cloned ardupilot directory.

  3. In the ArduPilot Arduino IDE, select your ArduPilot type (APM1 or APM2) from the ArduPilot menu (in the top menubar).

  4. Restart the ArduPilot Arduino IDE. You should now be able to build ArduPlane or ArduCopter from source.

  5. Remember that, after changing ArduPilot type (APM1 or APM2) in the IDE, you'll need to close and restart the IDE before continuing.

Building using make

  1. Before you build the project for the first time, you'll need to run make configure from a sketch directory. This will create a config.mk file at the top level of the repository. You can set some defaults in config.mk

  2. In the sketch directory, type make to build for APM2. Alternatively, make apm1 will build for the APM1.

  3. Type make upload to upload. You may need to set the correct default serial port in your config.mk.

User Technical Support

ArduPilot users should use the DIYDrones.com forums for technical support.

Development Team

The ArduPilot project is open source and maintained by a team of volunteers.

To contribute, you can send a pull request on Github. You can also join the development discussion on Google Groups. Note that the Google Groups mailing lists are NOT for user tech support, and are moderated for new users to prevent off-topic discussion.