NAME

duino - Command-line toolkit for working with Arduino boards

VERSION

version 0.08

SYNOPSIS

duino COMMAND [OPTIONS]
List the supported Arduino models:
$ duino models
Build a sketch:
$ duino build --board uno
Upload the sketch to the Arduino:
$ duino upload --board uno --port /dev/ttyACM0
Build and upload a given sketch file:
$ duino build --board uno some_sketch.ino
$ duino upload --board uno --port /dev/ttyACM0 some_sketch.ino
Upload a previously built hex file:
$ duino upload --board uno some_file.hex
Communicate with the Arduino:
$ duino com --port /dev/ttyACM0
Clean the build directory:
$ duino clean --board uno

DESCRIPTION

duino is a command-line toolkit for working with Arduino boards that can replace the Arduino IDE. It can be either used directly on the command-line or integrated into third-party IDEs. With duino you can quickly build and upload sketches to a variety of Arduino boards, and communicate with them using the built-in serial monitor.

To work it needs the Arduino software environment that can be found on the Arduino website, or in most package repositories (e.g. the arduino-core package on Debian/Ubuntu).

OPTIONS

--board, -b

The Arduino board model. The environment variable ARDUINO_BOARD will be used if present and if the command-line option is not set. If neither of them is set the default value (uno) will be used.

--port, -p

The path to the Arduino serial port. The environment variable ARDUINO_PORT will be used if present and if the command-line option is not set. If neither of them is set the default value (/dev/ttyACM0) will be used.

--sketchbook, -s

The path to the user's sketchbook directory. The environment variable ARDUINO_SKETCHBOOK will be used if present and if the command-line option is not set. If neither of them is set the default value ($HOME/sketchbook) will be used.

--root, -d

The path to the Arduino installation directory. The environment variable ARDUINO_DIR will be used if present and if the command-line option is not set. If neither of them is set the default value (/usr/share/arduino) will be used.

--libs, -l

List of space-separated, non-core Arduino libraries to build. The environment variable ARDUINO_LIBS will be used if present and if the command-line option is not set. If neither of them is set no libraries are built.

Example:

$ duino build --libs "Wire Wire/utility SPI"
--hardware, -r

The "type" of hardware to target. The environment variable ARDUINO_HARDWARE will be used if present and if the command-line option is not set. If neither of them is set the default value (arduino) will be used.

This option is only useful when using MCUs not officially supported by the Arduino platform (e.g. ATTiny).

CONFIGURATION

Per-project configurations can be specified in the duino.ini file under the project directory. Valid configurations are:

board

The Arduino board model.

libs

A list of non-core libraries needed by the project.

Example:

board = leonardo
libs  = Wire Wire/utility SPI SD SD/utility

AUTHOR

Alessandro Ghedini <alexbio@cpan.org>

LICENSE AND COPYRIGHT

Copyright 2013 Alessandro Ghedini.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.