Programowanie Arduino z CLI


Jako codzienny użytkownik VisualStudio i wtyczki PlatformIO do programowania mikrokontrolerów, niedawno stanąłem przed wyjątkowym wyzwaniem. Musiałem zmodyfikować program Arduino zdalnie, mając do dyspozycji jedynie terminal.

Cały proces instalacji kompilacji i wgrywania poniżej.

Instalacja oprogramowania na serwerze Ubuntu

curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh

Dodaj folder bin do zmiennej środowiskowej PATH

export PATH=$PATH:$HOME/bin

Inicjalizacja i aktualizacja indeksów

arduino-cli core update-index

Instalacja rdzenia arduino dla UNO

arduino-cli core install arduino:avr

Sprawdzenie podłączonych płytek arduino

arduino-cli board list

Wynik

Kompilacja i wgranie programu na Arduino UNO

Przejdź do folderu projektu

cd ~/arduinoProject/arduinoHomeHub

Kompilacja projektu arduinoHomeHub.ino

arduino-cli compile --fqbn arduino:avr:uno arduinoHomeHub/

Wgranie programu (w moim przypadku urządzenie wpięte pod ttyUSB0)

arduino-cli upload -p /dev/ttyUSB0 --fqbn arduino:avr:uno arduinoHomeHub/

Monitorowanie serial port arduino

arduino-cli monitor -p /dev/ttyUSB0

uwaga Uwaga! Problemy, które mogą wystapić

Jeżeli Twój użytkownik nie ma uprawnień do portu

sudo usermod -a -G dialout $USER

W moim programie użyłem biblioteki RCSwitch, musiałem znaleźć oraz zainstalować bibliotekę

 arduino-cli lib search RCSwitch

Instalacja biblioteki

 arduino-cli lib install "rc-switch"