Flashen unter Linux
Vorbereitung
Lade das neueste Release-Archiv der OBS-Firmware von GitHub herunter.
Du benötigst die ZIP-Datei mit dem Namen obs-v9.9.9.9999-initial-flash.zip
(v9.9.9.9999
steht für die Versionsnummer).
Entpacke die Dateien in einem temporären Verzeichnis, sie heißen 0x??????.bin
. Die Zahlen sind die Basisadresse, an die
die Daten geflasht werden sollen.
Installation
Installiere das Programm esptool
, falls es noch nicht installiert ist. Es ist in den
meisten Linux-Distributionen verfügbar.
Debian GNU/Linux, Ubuntu
und davon abgeleitete Distributionen, wie z. B. Linux Mint
sudo apt install esptool
Fedora
sudo dnf install esptool
Alternative Installation
Sollte Deine Linux Distribution dieses Paket nicht enthalten, dann kannst du versuchen es so zu installieren.
- lege ein Verzeichnis an, in dem das Tool installiert werden soll, und wechsle in dieses Verzeichnis
mkdir ~/esptool
cd ~/esptool
- für die Installation gib nacheinander folgende Befehle ein
python3 -m venv venv
. venv/bin/activate
pip install esptool
- nun lass dir die Version anzeigen
esptool.py version
- war die Installation erfolgreich, dann wird die Versionsnummer angezeigt (diese kann bei dir abweichend sein)
esptool.py v3.2
3.2
Gerätenamen herausfinden
Stelle sicher, dass du den Gerätenamen für das USB-Gerät kennst. Sehr wahrscheinlich wird es /dev/ttyUSB0
sein –
dieser Name wird auch im weiteren Beispiel verwendet.
Herausfinden kannst du den Namen mit folgenden Schritten:
- den OpenBikeSensor noch nicht mit dem Computer verbinden
- in einem Terminal eingeben und ausführen
ls -1d /dev/ttyUSB*
- wenn kein solches USB-Gerät an deinem Computer angeschlossen ist, wird ein Fehler angezeigt, anderenfalls eine Liste
der vorhandenen
/dev/ttyUSB
Geräte, z. B.
/dev/ttyUSB0
/dev/ttyUSB1
- nun den OpenBikeSensor anschließen, einige Sekunden warten und nochmal im Terminal eingeben und ausführen
ls -1d /dev/ttyUSB*
- nun sollte in der Liste der Geräte ein Eintrag dazugekommen sein, dies ist der Gerätename für deinen OpenBikeSensor
/dev/ttyUSB0
/dev/ttyUSB1
/dev/ttyUSB2 <-- neu hinzugekommen
Flashen
Führe im selben Verzeichnis, in das du die ZIP-Datei entpackt hast, folgenden Befehl aus:
Achtung
Ersetze/dev/ttyUSB0
mit dem Gerätenamen den du im vorherigen Schritt ermittelt hast.esptool \
--chip esp32 \
--port /dev/ttyUSB0 \
--baud 921600 \
--before default_reset \
--after hard_reset \
write_flash -z \
--flash_mode dio \
--flash_freq 40m \
--flash_size detect \
0x1000 0x01000.bin \
0x8000 0x08000.bin \
0xe000 0x0e000.bin \
0x10000 0x10000.bin
Achtung
Hast du die alternative Installationsanleitung verwendet, dann musst du eventuell zuvor noch folgende Schritte ausführen.cd ~/esptool
. venv/bin/activate
Und das Kommando esptool
durch esptool.py
ersetzen.
Achtung
Erscheint eine Fehlermldung (sinngemäß)bash: esptool: command not found
, dann ersetze im obigen Kommando esptool
durch esptool.py
.
Hilft das nicht, dann versuche einen der folgenden Aufrufe.python3 esptool.py ...
python esptool.py ...
python3 /absoluter/pfad/zu/esptool.py ...
(Pfad beim Paketmanager recherchieren)python /absoluter/pfad/zu/esptool.py ...
(s. o.)python3 -m esptool ...
python -m esptool ...
Führt auch keiner dieser Aufrufe zum Erfolg, melde dich im Forum (https://forum.openbikesensor.org), wir finden gemeinsam eine Lösung.
Versionsupdates
Versionsupdates können in weiterer Folge über die Weboberfläche des OpenBikeSensors erfolgen und nicht mehr durch den oben angeführten, doch recht komplizierten Vorgang.
Jetzt ist dein OpenBikeSensor einsatzbereit und du kannst mit der Konfiguration fortfahren!
Bei Problemen
Wenn du keine Schreibberechtigung hast, kannst du den Dateimodus des Geräts ändern (oder das Kommando als root ausführen):
sudo chmod 0x666 /dev/ttyUSB0
Wenn du öfter mit dem ESP32 arbeitest, installiere dir entsprechende udev-Regeln.
Sollte alles fehlschlagen, und du noch Fragen haben oder weitere Infos suchen, findest du in der Community immer Hilfe.