Software installieren (CLI)
Inhaltsverzeichnis
- Übersicht
- Installation von git
- Installation PlatformIO
- Kompilieren und Upload
- Over The Air (OTA) Updates
Übersicht
Diese Installationsanleitung richtet sich an Benutzer, die sich auf der Kommandozeile (CLI) wohl fühlen. Die Anleitung ist ausschließlich auf Linux getestet, sollte aber auch auf MacOS funktionieren.
Ab der Version 4 für den ESP32 bzw. für den ESP8266 (bis Version 3.1.3) werden folgende Softwaretools benötigt:
- Git
- Python
- PlatformIO (via pip)
Installation von git
Wir empfehlen euch git direkt über den Paketmanager eurer Distribution zu installieren, üblicherweise heißt das Paket git
. Auf MacOS geht der Weg via homebrew am schnellsten.
Klont das Projekt in einen Ordner eurer Wahl:
$ git clone https://github.com/rancilio-pid/clevercoffee.git
$ cd clevercoffee/
Installation PlatformIO
Erstellt zuerst ein Virtual Environment mit Python:
$ python -m venv env
Dieser Befehl erstellt ein Python Virtual Environment mit dem Name env
.
Aktiviert das virtual environment:
$ source env/bin/activate
Installiert nun alle nötigen Abhängigkeiten (requirements) via pip
:
(env) $ pip install -U pip
(env) $ pip install setuptools platformio
Kompilieren und Upload
Schließt euren ESP32 per USB an den Rechner/Laptop an und überprüft ob PlatformIO den Mikrocontroller erkennt:
(env) $ pio device list
Die Ausgabe sollte wie folgt aussehen. Der wichtige Teil ist das Gerät /dev/ttyUSB0
:
[...]
/dev/ttyUSB0
------------
Hardware ID: USB VID:PID=10C4:EA60 SER=0001 LOCATION=1-3
Description: CP2102 USB to UART Bridge Controller - CP2102 USB to UART Bridge Controller
Hinweis: Vor den folgenden Schritten könnt ihr euch alle verfügbaren Build-Targets anzeigen lassen:
(env) $ pio run --list-targets
Jetzt könnt ihr das Filesystem bauen und hochladen:
(env) $ pio run -e esp32_usb -t uploadfs
Jetzt noch die Firmware bauen und auf das ESP laden:
(env) $ pio run -e esp32_usb -t upload
Das ESP ist fertig vorbereitet. Um es neu zu starten reicht es den Reset-Button zu drücken, oder das USB-Kabel aus- und wieder einzustecken.
Over The Air (OTA) Updates
Neuere Versionen können per OTA-Funktion auf das ESP32 geladen werden. Stellt dafür sicher dass die Einstellungen in platformio.ini
im Abschnitt [env:esp32_ota]
korrekt sind.
Stellt auch sicher dass keine Firewall den Zugriff des ESPs auf einen unpriviligierten Port auf eurem Host blockiert (standardmäßig ein zufälliger TCP-Port 10000-60000). Dieser kann als statischer Port konfiguriert werden, siehe PlatformIO docs - Authentication and upload options.
Wenn es seit dem letzten Flashen des ESPs Änderungen im data/
-Verzeichnis des Projekts gab:
(env) $ pio run -e esp32_ota -t uploadfs
Kompilieren und Hochladen der neuen Version:
(env) $ pio run -e esp32_ota -t upload