MicroPython-Firmware komplett neu aufspielen

Wer kann mir helfen:

Ich muss die Firmware des BOB Projektes komplett neu flashen.
Welche firmware ist jetzt die korrekte:
https://github.com/hiveeyes/hiveeyes-micropython-firmware
oder
https://github.com/Hiverize/Sensorbeuten

Dann habe ich ATOM und will ALLE Daten erzwungen NEU auf den FiPy flashen …
Aber wie?

Hi Ingo,

ich bin grade nur kurz angebunden bzw. auf dem Sprung und kann dann vermutlich nicht beim weiteren Support mithelfen, aber ich kann Dir vielleicht wenigstens halb aufs Pony helfen.

Die Codebase bei https://github.com/Hiverize/Sensorbeuten ist im Kontext von Pycom/MicroPython ein definitiver Holzweg. Dort findest Du Python-Code, den Du auf einem RaspberryPi-basierten/-ähnlichen Single-Board-Computer (SBC) betreiben kannst.

Die originale Hiverize-Datenlogger-Firmware findest Du bei GitHub - Hiverize/FiPy. Um sie aufzuspielen, könnten vielleicht @Diren, @caro, @vinz oder @clemens weiterhelfen.

Viele Grüße,
Andreas.

Hiveeyes MicroPython Datalogger

Die alternative Hiveeyes-Datenlogger-Firmware findest Du bei GitHub - hiveeyes/hiveeyes-micropython-firmware: Hiveeyes MicroPython Datalogger - data logging for humans.

Sandbox

Wenn Du bei der Entwicklung mithelfen willst, wäre die Sandbox-Installation der richtige Weg, die wir bei Operate the MicroTerkin firmware sandbox beschrieben haben.

Release

Wenn Du jedoch einfach nur ein aktuelles Release aufspielen willst, findest Du bei Releases · hiveeyes/hiveeyes-micropython-firmware · GitHub die entsprechenden Release-Archive. Die “source” Archivdateien enthalten den Python Quelltext, während die “mpy” Archivdateien eine Bytecode-übersetzte Variante enthalten, die effizienter übertragen und ausgeführt, dafür jedoch nicht nachträglich bearbeitet werden kann.

image

Beide Archive enthalten die Dateien im richtigen Directory-Layout, wie es auf den FiPy passt.

Übertragung

Übertragen werden können die Dateien am komfortabelsten per FTP. Es bietet sich an, vorher über das Pycom Firmware Tool eine aktuelle Basis-Firmware von Pycom zu installieren und auf das LittleFS-Dateisystem umzustellen, das im Betrieb deutlich robuster ist als das vorinstallierte FatFS.

Dokumentation und Support

Weiterführende Dokumentation zu verschiedenen Aspekten und zur entsprechenden Konfiguration (Stichwort "settings.py") findest Du hier im Forum. Vielleicht kannst Du Dir über die Suchfunktion selbst weiterhelfen oder @clemens hilft mit ein paar Querverweisen auf die Sprünge. Möglicherweise könnten Dir auch @MKO oder seit Unterstützung beim Debugging von Abstürzen und der Installation der Firmware auch @htons zur Seite stehen, die ihre Firmwares mittlerweile ebenfalls bereits erfolgreich selbst auf das Gerät neu aufgespielt haben.


Viel Erfolg bei den weiteren Schritten!

Ich mache es so:

  • auf Win10 Atom und Pymkr installieren.
  • ein kleines Projekt als Dateibaum installieren z.B. meine Übungen: BOB-Test1.zip (7,4 KB)
  • FiPy mit Expansionboard und Platine BOB-HAT-V5 mit Sensoren über USB anschliessen
  • Atom öffnen und interaktiv testen oder Programm mit Upload laufen lassen.
  • hiveeyes-micropython-firmware-0.6.0-source.zip oder FiPy-master.zip auspacken
  • Projekt mit Atom bearbeiten

Manchmal werden bei einem Projektwechsel nicht alle Dateien korrekt gelöscht oder überspielt. Dafür habe ich ein leeres Projekt nur mit boot.py und main.py

1 Like

@didilamken: Herzlichen Dank für die Anleitung!

Nur Interessehalber: Ist es so, dass bei der Übertragung eines solchen leeren Projekts alle Dateien auf dem Gerät gelöscht werden?

Bislang konnte ich so alles löschen.

Wunderbar, danke! Alle diejenigen, die die MicroPython-Sandbox installiert haben, kommen ja per "make format-flash" gut über die Runden. Für alle anderen hatte ich bisher noch kein einfaches Patentrezept zur Hand, außer über FTP alle Dateien und Verzeichnisse zu entfernen.

1 Like

Eine Möglichkeit ist noch, beim flashen der Firmware erase filesystem auszuwählen. Das gibt’s als Option beim pycom Flasher. Allerdings hat das bei der alten Flasher Version nicht zuverlässig funktioniert, seit ein paar Tagen gibt es eine neuere, aber noch nicht gecheckt, ob alles wirklich gelöscht wurde.

Ich befürchte, dass Atom nur die Dateien löscht, die es vorher als Projektteil auch hochgelafen hat, man kann es jedenfalls testen, indem man ein leeres Projekt anlegt und über Atom die Dateien herunter lädt das geht da auch.

Oder eben über FTP, siehe Remote via WLAN auf den WiPy / FiPy zugreifen

Wenn der FiPy neu geflasht wurde macht er übrigens einen Access Point auf und der muss so nicht im lokalen Netz eingebunden sein. Man könnte den FiPy als auch flashen, sich mit ihm über WLAN als Access Point verbinden FTP starten und so die Daten übertragen. Beim übertragen die neueste Firmware littleFS aktivieren, und filesystem löschen.

die FiPy Master habe ich genommen … in der Version ausGitHub ist allerdings noch der Fehler mit der CSV Variablen existent

in Zeile 88 fehlt     global _csv ?

Heißt, dass sobald der AP aktiviert wird eigentlich ein Satz ins Log geschrieben wird und dann das System steht > unhandled Exception

Hi Ingo,

diese Geschichte hatten wir ja bereits bei WiFi-Konnektivität bei der Inbetriebnahme des FiPy hakelt ff., stimmts? Vielleicht könnten Du oder @pinguin die Verbesserungen über einen entsprechenden Pull Request einreichen?

Viele Grüße,
Andreas.