Skip to content
Snippets Groups Projects
user avatar
James Bielman authored
- Make sure the values are defined as integers.  We were always using
  SPI rather than using I2C when desired.
ab37f833
History

Getting the source

We'll assume you are putting the source in /home/name/ardupilot.

You can either download the source using the "ZIP" button at https://github.com/diydrones/ardupilot, or you can grab it from github using git:

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

Building using Arduino

First install the libraries:

  1. Copy the libraries directory to your /path/to/arduino/hardware/libraries/ or /path/to/arduino/libraries directory.

  2. Restart the Arduino IDE.

Each library comes with a simple example. You can find the examples in the menu File→Examples

Building using make

  1. Go to the directory of the sketch and type make.

  2. Type make upload to upload according to the parameters in config.mk.

For example:

cd ArduPlane  # or ArduCopter etc.
make
make upload

Building using cmake

cd ArduPlane  # or ArduCopter etc.
mkdir build
cd build

# If you have Arduino installed in a non-standard location you by
# specify it by using -DARDUINO_SDK_PATH=/path/to/arduino
cmake .. -DAPM_BOARD=mega -DAPM_PORT=/dev/ttyUSB0  # Or -DAPM_BOARD=mega2560

make  # Will build the sketch.
make ArduPlane-upload  # Will upload the sketch.

If you have a sync error during upload, reset the board or power cycle the board before the upload starts.

Building using Eclipse

Generating the Eclipse project for your system

mkdir /home/name/apm-build 
cd /home/name/apm-build
cmake -G"Eclipse CDT4 - Unix Makefiles" \
  -D CMAKE_BUILD_TYPE=Debug \
  -D BOARD=mega \
  -D PORT=/dev/ttyUSB0 \
  ../ardupilot/ArduCopter

Change the ../ardupilot/ArduCopter above to be whatever sketch you want to build.

Note: Unix can be substituted for MinGW/MSYS/NMake (for Windows). See http://www.vtk.org/Wiki/Eclipse_CDT4_Generator).

Define options

  • CMAKE_BUILD_TYPE choose from DEBUG, RELEASE etc.

  • PORT is the port for uploading to the board, COM0 etc. on Windows, /dev/ttyUSB0 etc. on Linux.

  • BOARD is your board type, mega for the 1280 or mega2560 for the 2560 boards.

  • ARDUINO_SDK_PATH to specify the path to your Arduino installation if it isn't in the default path.

Importing the Eclipse build project

  1. Import project using Menu File→Import.

  2. Select General→Existing projects into workspace.

  3. Browse to where your build tree is and select the root build tree directory.

  4. Keep "Copy projects into workspace" unchecked.

You should now have a fully functional eclipse project.

Importing the Eclipse source project

You can also import the source repository (/home/name/ardupilot) if you want to modify the source/commit using git.

Configuring Eclipse to recognize PDE files

  • File association: Go to Window→Preferences→General→Content Types. This tree associates a filename or filename pattern with its content type so that tools can treat it properly. Source and header files for most languages are under the Text tree. Add "*.pde" as a C++ Source.

  • Autocompletion: Right click on source project→Properties→Project References→apm-build Project

  • Regenerating the Eclipse source project file: cmake -G"Eclipse CDT4 - Unix Makefiles" -DECLIPSE_CDT4_GENERATE_SOURCE_PROJECT=TRUE /home/name/ardupilot

Build a package using cpack

cd build
cmake ..
make package
make package_source