Arduino cli

Je me suis offert une petite carte Arduino avec un Starter Kit de chez SnootLab. J’en suis très content, je suis une bille complète en éléctronique et en seulement 3 jours de documentations et autres tutoriels j’ai déjà quelques bases et j’entrevoie des possibilités infinies liant harware et software.

Seulement, l’IDE officiel d’arduino m’a vite gonflé, je suis très réticent à prendre en main de nouveaux logiciels, surtout quand ils sont graphiques, c’est plus fort que moi, trop de boutons et autres ClickClickClick ça me file des … boutons. J’ai donc essayé de coder pour arduino en utilisant mon IDE habituel, c’est à dire vim et make, voilà la manip (pour une machine debian)

# La lib arduino http://arduino.cc/en/Main/Software (ici linux x86_64)
wget http://arduino.googlecode.com/files/arduino-0022-64-2.tgz -O - | tar xvzf -
# Le travail est déjà tout fait ici: http://mjo.tc/atelier/2009/02/arduino-cli.html
wget http://mjo.tc/atelier/2009/02/acli/arduino-mk_0.6.tar.gz -O - | tar xvzf -
sudo mkdir -p /usr/local/bin
sudo install -m 755 -o root -g root arduino-mk-0.6/ard-parse-boards /usr/local/bin/

Ensuite copiez le fichier arduino-mk-0.6/Arduino.mk dans votre projet et incluez le dans un Makefile:

TARGET = hello # Le nom du programme final (doit correspondre à un fichier hello.pde)
ARDUINO_DIR = /path/to/arduino-0022
BOARD_TAG = uno # Voir Arduino.mk pour toutes les cartes supportées
ARDUINO_PORT = /dev/ttyACM0          
AVR_TOOLS_PATH = /usr/bin
AVRDUDE_CONF = $(ARDUINO_DIR)/hardware/tools/avrdude.conf
AVRDUDE = $(ARDUINO_DIR)/hardware/tools/avrdude
include Arduino.mk
# Petit alias perso, make com lance cu sur le bon port avec un baud de 9600
com:
cu -l $(ARDUINO_PORT) -s 9600

Ne pas oublier les outils indispensables:

sudo apt-get install gcc-avr binutils-avr avr-libc libyaml-perl cu

Pour compiler c’est make et pour envoyer le code sur la carte make upload.