Firmwarefeatures

Funkübertragung, Energiesparen und Bedienung am Gerät

Die Firmware ist die Software, die direkt auf dem HC-50 Gateway und den HC-50 Nodes läuft. Sie sorgt dafür, dass Messwerte erfasst, per Funk übertragen und in der EcoSensors.cloud angezeigt werden. Für Gateway und Node wird derselbe Programmcode verwendet. Sie unterscheiden sich nur in ihrer Aufgabe.

Diese Seite beschreibt die Firmware Version 0.9.0. Das ist eine Vorabversion, die auf echter Hardware getestet wurde. Einzelne Funktionen, z.B. die Sensoren für pH-Wert und Wasserstand, folgen in späteren Versionen.

So arbeitet das System

Gateway und Node haben unterschiedliche Aufgaben:

Node (Messstation) Gateway (Basisstation)
Aufgabe Messen und Senden Empfangen und an die Cloud weitergeben
Stromversorgung Batterie, sparsam USB-Netzteil, dauerhaft
Verbindung nur LoRa-Funk LoRa-Funk und WLAN
Betrieb schläft die meiste Zeit hört dauerhaft auf Funksignale

Ein Messzyklus beim Node:

  1. Der Node wacht auf.
  2. Er liest seine Sensoren aus.
  3. Er sendet die Werte per LoRa-Funk an das Gateway.
  4. Er wartet kurz auf eine Empfangsbestätigung.
  5. Er geht wieder schlafen.

Das Gateway nimmt die Werte entgegen, bestätigt den Empfang und leitet sie über WLAN und Internet an die EcoSensors.cloud weiter. Dort erscheinen die Werte des Nodes genauso wie die des Gateways selbst.

Ein Node funkt direkt zu einem Gateway in seiner Reichweite. Planen Sie den Standort des Gateways deshalb so, dass die Nodes es direkt erreichen. Typisch sind mehrere Kilometer, abhängig vom Gelände.

Funktionen im Überblick

Zuverlässige Funkübertragung

  • Empfangsbestätigung: Das Gateway bestätigt jedes empfangene Paket. Kommt keine Bestätigung beim Node an, sendet er bis zu dreimal.
  • Automatische Sendeleistung: Der Node startet mit wenig Leistung und erhöht sie bei Bedarf. Funktioniert eine Stufe zuverlässig, merkt er sie sich und versucht später vorsichtig wieder mit weniger Leistung zu senden. Das schont die Batterie.
  • Nur Änderungen senden: Ein Wert wird nur dann übertragen, wenn er sich seit der letzten Übertragung geändert hat. Das verkürzt die Sendezeit und spart Energie. Die Cloud zeigt bis dahin den letzten bekannten Wert.
  • Sendezeitbegrenzung: Funkgeräte im 433-MHz-Band dürfen nur einen Teil der Zeit senden (mehr zu den Funkparametern unter LoRa Funktechnik). Die Firmware hält diese gesetzliche Grenze selbstständig ein und verlängert die Pausen, wenn es nötig ist. Sie müssen nichts einstellen.

Sparsamer Batteriebetrieb

Der Node schläft zwischen zwei Messungen vollständig. In dieser Zeit verbraucht er kaum Strom, und die Batterie hält entsprechend lange. Das Messintervall ist in der Vorabversion mit etwa 20 Sekunden bewusst kurz eingestellt, damit sich Tests schnell auswerten lassen. Im Feldeinsatz wird es länger gewählt. Je seltener gemessen wird, desto länger hält die Batterie. Was die Laufzeit sonst noch beeinflusst, steht unter Stromversorgung.

Sensoren

Folgende Sensoren werden von der Firmware unterstützt. Sie können an Gateway und Node angeschlossen werden:

Sensor Messwerte
Prozessortemperatur (eingebaut) Temperatur im Gerät
BME280 Temperatur, Luftfeuchtigkeit, Luftdruck
BMP280 Temperatur, Luftdruck
BMP085 Temperatur, Luftdruck
VEML7700 Helligkeit (Lux)
MCP9808 Präzise Temperatur (±0,25 °C)

Die Sensoren müssen nicht konfiguriert werden. Die Firmware prüft beim Start, welche Sensoren angeschlossen sind, und überträgt nur deren Werte. Ein nicht angeschlossener Sensor erzeugt keine Fehlermeldung.

Zusätzlich meldet jedes Gerät Angaben zu seinem eigenen Zustand: Betriebsdauer, Firmware-Version, die Qualität der Funkverbindung (Signalstärke und Rauschabstand) und wie stark die erlaubte Sendezeit ausgelastet ist. Beim Gateway kommen WLAN-Daten dazu, z.B. die WLAN-Signalstärke.

Sensoren für den pH-Wert und den Wasserstand sind in Entwicklung.

Online-Status

Jedes Gerät wird in der Cloud mit seinem Status online oder offline geführt. Ein Gateway meldet sich selbst ab, sobald die Verbindung abbricht. Für Nodes übernimmt das Gateway diese Aufgabe: Hört es längere Zeit nichts mehr von einem Node, markiert es ihn als offline.

Eindeutige Gerätekennung

Jedes Gerät erhält automatisch eine eigene Kennung, abgeleitet von seiner Hardware-Adresse:

  • Gateways: hc50gw-xxxxxx
  • Nodes: hc50nd-xxxxxx

Sie müssen die Kennung nirgends eintragen. Sie ist beim Gateway auf dem Display und auf dem Aufkleber zu finden. Mit ihr ordnen Sie das Gerät in der Cloud zu.

Bedienung am Gerät

Display

Gateway-Modelle mit Display (Heltec WB32LA) zeigen Status und Messwerte an. Um Energie zu sparen und das Display zu schonen, schaltet es sich nach einer Minute ohne Bedienung aus.

Taste (PRG)

  • Kurz drücken: weckt das Display auf.
  • Gleichzeitig löst die Taste eine Testübertragung aus. So prüfen Sie am Einsatzort, ob die Funkverbindung steht.

LED

Die LED leuchtet nur bei Ereignissen, nicht dauerhaft:

  • Kurzes Aufleuchten: Funkaktivität, also ein Paket wurde gesendet oder empfangen.
  • Viermal schnelles Blinken: ein Fehler ist aufgetreten.

Die LED lässt sich über die Cloud auch von Hand ein- und ausschalten und dient dann z.B. als Hilfe, um ein Gerät vor Ort zu finden. Die automatischen Anzeigen können dabei abgeschaltet werden.

WLAN einrichten (Gateway)

Die WLAN-Zugangsdaten werden nicht fest in die Firmware geschrieben, sondern bei der Inbetriebnahme per Smartphone eingegeben. So bleibt Ihr Passwort nur auf Ihrem Gerät gespeichert.

  1. Installieren Sie die kostenlose App ESP BLE Provisioning (Espressif Systems) für Android oder iOS.
  2. Schließen Sie das Gateway an die Stromversorgung an. Solange es noch kein WLAN kennt, startet es automatisch den Einrichtungsmodus.
  3. Öffnen Sie die App und suchen Sie das Gerät. Es meldet sich mit dem Namen PROV_….
  4. Geben Sie die PIN ein. Sie steht auf dem Display des Gateways oder, bei Modellen ohne Display, auf dem Aufkleber bzw. QR-Code am Gerät, sofern das Gerät so ausgeliefert wurde. Jedes Gerät hat seine eigene PIN.
  5. Wählen Sie Ihr WLAN aus und geben Sie das Passwort ein. Das Gateway verbindet sich und meldet sich in der Cloud an.

Automatische Wiederherstellung: Funktionieren die gespeicherten Zugangsdaten nicht mehr, z.B. weil das WLAN-Passwort geändert wurde, löscht das Gateway sie von selbst und startet den Einrichtungsmodus neu. Sie müssen das Gerät dazu nicht öffnen und kein Kabel anschließen. Wiederholen Sie die Schritte oben.

Firmware aktualisieren

Es gibt drei Wege. Welcher passt, hängt vom Gerät ab:

Gerät Weg Aufwand
Gateway Per WLAN über eine Webseite im Browser gering, kein Kabel nötig
Node Per Bluetooth mit dem Smartphone mittel, Sie müssen vor Ort sein
Gateway und Node Per USB-Kabel Gehäuse muss erreichbar sein

Gateway: per WLAN

  1. Rufen Sie im Browser http://<IP-Adresse des Gateways>/update auf. Smartphone oder PC müssen im selben WLAN sein. Die IP-Adresse finden Sie in Ihrem Router oder in der Cloud beim Gerät.
  2. Wählen Sie die Firmware-Datei (.bin) aus und senden Sie sie ab.
  3. Das Gateway spielt die Firmware ein und startet selbständig neu.

Node: per Bluetooth

Ein Node schläft fast die ganze Zeit. Er muss deshalb vorher in den Update-Modus versetzt werden, ohne dass Sie ihn öffnen müssen:

  1. Fordern Sie den Update-Modus für den Node an. Das geht schon vor der Anfahrt über die Cloud-Anbindung (MQTT). Wenden Sie sich dazu bei Bedarf an den Support.
  2. Bei seinen nächsten Messzyklen hält der Node jeweils kurz Bluetooth bereit. Dieser Zustand bleibt etwa 30 Minuten bestehen.
  3. Verbinden Sie sich vor Ort mit der Android-App ESP32 OTA BLE und wählen Sie die Firmware-Datei aus. Die Reichweite beträgt einige Meter bis einige Dutzend Meter.
  4. Nach dem Einspielen startet der Node neu. Ist niemand innerhalb der Zeit angekommen, kehrt er von selbst in den normalen Betrieb zurück.

Per USB-Kabel

Immer möglich, wenn Sie das Gerät in der Hand haben. Hierfür sind ein Computer und die Entwicklungsumgebung nötig. Wenden Sie sich bei Bedarf an den Support.

Spielen Sie nur Firmware-Dateien ein, die Sie direkt von EcoSensors erhalten haben. Die Updates per WLAN und Bluetooth prüfen in der aktuellen Version noch nicht, ob die Datei echt ist. Eine digitale Signaturprüfung wird nachgerüstet.

Gut zu wissen

  • Verbindung bricht ab: Sind Internet oder WLAN kurz gestört, verbindet sich das Gateway selbständig neu. Werte, die in dieser Zeit eintreffen, können verloren gehen.
  • Mehrere Gateways in Reichweite: Alle Geräte nutzen denselben Funkkanal. Bei mehreren Gateways in gegenseitiger Reichweite sollten Sie sich vorher beraten lassen.
  • Bessere Funkverbindung: Positionieren Sie Gateway und Nodes möglichst frei, z.B. an einem Mast oder auf dem Dach, und nicht in der Nähe großer Metallflächen. Mehr dazu unter LoRa Funktechnik.