8

Développer pour arduino sous OpenBSD

Ça fait un petit moment que j'ai envie de m'amuser avec un arduino. J'ai acheté un kit et commence à me faire la main. Avec quelques notions de C, c'est en fait très simple à programmer et utiliser. De plus, c'est une occasion de mettre en pratique mes cours d'électricité de collège :D.

Puisque mon système principal est OpenBSD, et puisque les instructions "officielles" ne sont plus d'actualité, voici quelques notes pour développer sur arduino UNO avec OpenBSD. Plusieurs éléments sont repris du billet de jcs.

Il faut les paquets suivants :

# pkg_add arduino arduino-makefile

Ensuite, pour commencer un nouveau projet, on va créer un dossier ainsi qu'un fichier Makefile comme suit:

mkdir projet
cd projet
vi Makefile

Dans le fichier, indiquez :

BOARD_TAG    = uno
include /usr/local/share/arduino-makefile/Arduino.mk

Afin de compiler votre projet, il faudra utiliser la commande gmake. Placez auparavant le code dans un fichier .ino. Assurez-vous de ne pas avoir défini de variables d'environnement de type "LDFLAGS".

Pour charger le code sur l'arduino branché par cable USB sur votre machine, exécutez gmake upload.

Cependant, vous verrez peut-être ce message d'erreur :

serial.serialutil.SerialException: [Errno 13] could not open port
/dev/ttyU0: [Errno 13] Permission denied: '/dev/ttyU0'

Hé oui, OpenBSD est sécurisé. Par défaut, un simple utilisateur n'a pas le droit d'utiliser un port série. Vous devez appartenir au groupe "dialer".

# usermod -G dialer user

user doit ensuite se reconnecter.

Pour accéder aux messages envoyés sur le port série (Serial.println), la commande suivante fera l'affaire:

cu -s 9600 -l /dev/cuaU0

Pour ma part, je compile, envoie le code dans la carte et surveille la console en une fois :

gmake && gmake upload && cu -l /dev/cuaU0 -s 9600

Pour l'instant, j'ai réussi à avoir un mini lecteur mp3 avec des contrôles simples pour mon petit droïde, ainsi qu'un détecteur de mouvement qui allume des LEDs lorsqu'on ouvre un placard. J'aimerais faire de même lorsqu'on passe la main devant une vitre... D'ici là, je dois d'abord apprendre à souder :s

27/06/2020 15:51

📧 Un commentaire?