Diese Seite erklärt, was zwischen dem Senden eines LoRaWAN-Frames durch einen Sensor und dem Erscheinen eines Messwerts auf seinem Gerät in Hermetry passiert. Lesen Sie sie einmal durch, bevor Sie Gateways und Geräte hinzufügen; die meiste Fehlersuche beginnt bei diesem Bild.
Die Bestandteile
| Bestandteil | Was er macht |
|---|---|
| Endgerät (Sensor) | Sendet kurze Funkframes (Uplinks) und hört kurz auf Antworten (Downlinks). |
| Gateway | Empfängt jeden LoRaWAN-Frame in Reichweite und leitet ihn über das Internet an den Network Server weiter. Es sendet auch Downlinks. Ein Gateway weiß nicht, welche Geräte Ihnen gehören. |
| Network Server | Hermetrys eingebauter Server. Er prüft jeden Frame, führt Kopien zusammen, die mehrere Gateways empfangen haben, behält Session und Zähler des Geräts, betreibt die MAC-Schicht (ADR und andere Funkeinstellungen) und plant Downlinks. |
| Join Server | Teil des Network Servers. Er beantwortet Join-Anfragen von OTAA-Geräten und erzeugt deren Session-Schlüssel. |
| Codec | Wandelt die Bytes eines Frames in benannte Werte um, zum Beispiel temperature und humidity. |
| Flows | Die Nachrichten Ihrer Geräte laufen durch den Root-Flow, der die Werte speichert und Alarmregeln ausführt. |
Gateways und Endgeräte sind beide Geräte in Hermetry. Ein Gateway liegt auf dem eingebauten Profil LoRaWAN gateway; ein Endgerät, das Sie von Hand hinzufügen, liegt auf dem eingebauten Profil LoRaWAN EU868 Class A OTAA (1.0.3). Beide werden beim ersten Bedarf angelegt.
Vom Sensor zum Messwert
- Der Sensor sendet einen Uplink. Jedes Gateway in Reichweite empfängt ihn.
- Jedes Gateway leitet seine Kopie mit der gemessenen Signalstärke (RSSI) und Qualität (SNR) an die Netzwerkserver-Adresse Ihrer Organisation weiter.
- Der Network Server sammelt die Kopien desselben Frames über ein kurzes Zeitfenster (standardmäßig 200 ms) und führt sie zu einem Uplink zusammen. Kopien werden nur innerhalb einer Organisation zusammengeführt: Ein Frame, den das Gateway eines anderen Kunden empfängt, wird nie mit Ihrem vermischt.
- Er prüft den Frame: Die Geräteadresse (DevAddr) muss zur Session eines Ihrer Geräte gehören, die Integritätsprüfung (MIC) muss mit dem Schlüssel dieser Session bestehen, und der Frame-Zähler muss vorwärts laufen. Ein fehlerhafter Frame wird verworfen und mit seinem Grund im Frames-Log angezeigt.
- Er verarbeitet die MAC-Befehle, die das Gerät gesendet hat, und entscheidet, ob eine Antwort nötig ist (eine Bestätigung, eine MAC-Anfrage oder ein eingereihter Downlink).
- Er dekodiert die Application Payload mit dem Codec des Geräts. Ohne Codec oder wenn die Dekodierung fehlschlägt, wird die Rohnutzlast als Hex unter dem Schlüssel
rawweitergegeben. - Er schreibt eine Gerätenachricht für den Uplink. Ist die Profileinstellung Add the radio values (lora.rssi, lora.snr, …) to every message aktiviert, enthält die Nachricht außerdem
lora.rssi,lora.snr,lora.gw_count,lora.dr,lora.frequndlora.fcnt_up. - Die Nachricht läuft wie jede Gerätenachricht durch Ihren Root-Flow. Der Root-Flow speichert die Werte.
Ein Uplink ergibt eine Gerätenachricht, egal wie viele Gateways ihn empfangen haben. Frames auf FPort 0 (nur MAC-Befehle) schreiben keine Gerätenachricht.
Deduplizierung
Mehrere Gateways empfangen denselben Uplink oft gleichzeitig. Der Network Server ordnet jede Kopie anhand Ihrer Organisation und der exakten Frame-Bytes zu. Die erste Kopie eröffnet eine Gruppe; Kopien, die innerhalb des Zeitfensters eintreffen, schließen sich ihr an; wenn das Fenster schließt, wird der Uplink genau einmal verarbeitet, mit der Liste aller Gateways, die ihn empfangen haben. Eine Kopie, die nach Ablauf des Fensters eintrifft, wird als verspätet gezählt und ignoriert.
Das beste Gateway (höchster SNR, dann RSSI) liefert die Funkwerte in der Nachricht und ist die erste Wahl für eine Antwort.
Joins
Ein OTAA-Gerät muss sich anmelden (joinen), bevor es Daten senden kann. Seine Join-Anfrage läuft über dieselben Gateways und dieselbe Deduplizierung. Der Join Server prüft DevEUI, JoinEUI, AppKey und DevNonce des Geräts, erstellt eine Session und sendet die Join-Accept-Nachricht über das beste Gateway zurück, das das Gerät noch rechtzeitig erreichen kann. Siehe Wie ein Gerät beitritt.
Ein ABP-Gerät meldet sich nicht an. Seine Session (Adresse und Schlüssel) wird beim Hinzufügen eingegeben.
Antworten und Downlinks
Ein Class-A-Gerät hört nur in zwei kurzen Fenstern nach jedem Uplink (RX1 und RX2). Der Network Server wählt Gateway und Fenster, die es noch erreichen können, unter Berücksichtigung der Laufzeit des Gateways und seines Duty-Cycle-Budgets. Ein Class-C-Gerät hört ständig, daher gehen seine eingereihten Downlinks sofort raus. Siehe Geräteklassen und Downlinks senden.
Trennung zwischen Organisationen
Jede DevEUI und jede Gateway-EUI kann auf der gesamten Plattform nur einmal registriert werden. Wenn Sie eine registrieren wollen, die eine andere Organisation hält, sagt Hermetry, dass sie vergeben ist, und nennt nie, wer sie hält. Frames von Geräten einer anderen Organisation, die Ihre Gateways empfangen, werden als „A device of another network“ verworfen, und Ihnen wird nichts über dieses Gerät angezeigt.
Was nicht gespeichert wird
Der Network Server behält nur ein kurzes Frames-Log (den letzten Tag, höchstens 1.000 Frames pro Organisation) und den letzten Empfang jedes Geräts. Der Empfangsverlauf wird nur gespeichert, wenn Ihr Flow die lora.*-Schlüssel zusammen mit den anderen Werten speichert, was der Standard-Root-Flow tut, wenn das Profil sie zur Nachricht hinzufügt.

