Oe1kbc (Diskussion | Beiträge) K |
Oe1kbc (Diskussion | Beiträge) |
||
Zeile 5: | Zeile 5: | ||
======von Kurt OE1KBC – Referat für nat. & int. Projekte====== | ======von Kurt OE1KBC – Referat für nat. & int. Projekte====== | ||
− | <span style="color: #0070C0">TBEAM, TLORA, HELTEC | + | <span style="color: #0070C0">TBEAM, TLORA, HELTEC & Co.</span> |
+ | [[Datei:LoRa-Node.jpg|mini|TBEAM Lora mit OLED-Display]] | ||
+ | Die aktuelle Meshtastic Firmware (1.2.53 ff) ist auf Boards, welche einen ESP32 oder nRF52 Prozessor, einen LoRa-Chip, GPS von Ublox und WIFI sowie Bluetooth Hardware am Modul anbieten, von einigen Herstellern verfügbar. Am Markt sehr günstig zu erhalten sind die Boards von Lilygo, Heltec und Wisblock. Auf Einkaufsplattform direkt in China Banggood oder via AMAZON mit folgenden Begriffen suchen. | ||
− | + | [[Datei:TTGO LoRa.png|mini|links|Heltec Lora 32]] | |
− | * | + | *'''<big>Lilygo TTGO T-Beam</big>''' |
+ | *'''<big>Lilygo TTGO Lora</big>''' | ||
+ | *'''Heltec Lora 32 (V2)''' | ||
+ | *'''Wisblock RAK4631''' | ||
− | |||
− | |||
− | |||
− | + | [[Datei:LoRaNode im Gehäuse.png|mini|TBEAM im 3D-gedrucktem Gehäuse]] | |
− | + | =====<span style="color: #0070C0">Beim Kauf sind wichtige Hardware-Features zu beachten</span>===== | |
− | |||
− | |||
− | |||
− | <span style="color: black">Ein Netzgerät mit 5V USB-A Buchse, wird meist nicht mitgeliefert, solle aber fast immer im Shake vorhanden sein.</span> | + | *'''<big>Ganz wichtig Frequenz EU433</big>''' |
+ | *Soll ein GPS-Modul vorhanden sein? (TTGO_LORA hat das nicht) | ||
+ | *Soll das Modul gleich im Gehäuse geliefert werden? | ||
+ | *Entweder ist ein OLED-Display bereits verbaut oder wird zum selbst auflöten mitgeliefert. | ||
+ | *<span style="color: black">Ein Netzgerät mit 5V USB-A Buchse, wird meist nicht mitgeliefert, solle aber fast immer im Shake vorhanden sein.</span> | ||
− | <span style="color: #0070C0">Was ist der Unterschied zwischen LoRa-Node und LoRa-Gateway</span> | + | <br /> |
+ | =====<span style="color: #0070C0">Was ist der Unterschied zwischen LoRa-Node und LoRa-Gateway</span>===== | ||
− | |||
'''<span style="font-size:14.0pt;line-height:107%">LoRa-Nodes</span>''' mit Meshtastic-Firmware bilden, wenn sich die Funkmodule gegenseitig hören, eine Mesh-HF-Wolke aus wo die Kommunikation wie in einem kleinen Netzwerk funktioniert. Es können SMS-Meldungen, POSITIONS-Meldungen , NODE-Informationen und/oder MESSWERT-Daten ausgetauscht werden. Wichtig! dass man auf allen teilnehmenden NODES das gleiche Frequenzband (70cm) und die gleichen Modulationsparameter (Datenrate, Spreadingfaktor, usw.) eingestellt hat. | '''<span style="font-size:14.0pt;line-height:107%">LoRa-Nodes</span>''' mit Meshtastic-Firmware bilden, wenn sich die Funkmodule gegenseitig hören, eine Mesh-HF-Wolke aus wo die Kommunikation wie in einem kleinen Netzwerk funktioniert. Es können SMS-Meldungen, POSITIONS-Meldungen , NODE-Informationen und/oder MESSWERT-Daten ausgetauscht werden. Wichtig! dass man auf allen teilnehmenden NODES das gleiche Frequenzband (70cm) und die gleichen Modulationsparameter (Datenrate, Spreadingfaktor, usw.) eingestellt hat. | ||
Was ein großer Vorteil der Mesh-Vernetzung ist, dass sich nicht alle teilnehmenden NODES tatsächlich auf dem HF-Weg „hören“ müssen. Datenpakete werden über Partner-NODES solange mittels HF-Übertragung weiter gegeben bis diese alle LoRa-Nodes erreicht haben. Wie lange ein Paket weiter gegeben wird hängt unter anderem vom HOP-Limit ab (siehe Konfiguration). | Was ein großer Vorteil der Mesh-Vernetzung ist, dass sich nicht alle teilnehmenden NODES tatsächlich auf dem HF-Weg „hören“ müssen. Datenpakete werden über Partner-NODES solange mittels HF-Übertragung weiter gegeben bis diese alle LoRa-Nodes erreicht haben. Wie lange ein Paket weiter gegeben wird hängt unter anderem vom HOP-Limit ab (siehe Konfiguration). | ||
+ | |||
'''<span style="font-size:14.0pt;line-height:107%">LoRa-Gateways</span>''' welche ebenfalls mit Meshtastic-Firmware geflashed wurden, können auch ein Gateway zu einem sogenannten Broker-Server aufbauen. Die Übermittlung wird mit dem Protokoll '''<span style="color: #202122">Message Queuing Telemetry Transport (MQTT)</span>''' vermittelt. Ein Broker-Server dient dazu, die Datenpakete, egal welcher Inhalts-Type, zwischen mehreren LoRa-Gateways auszutauschen. | '''<span style="font-size:14.0pt;line-height:107%">LoRa-Gateways</span>''' welche ebenfalls mit Meshtastic-Firmware geflashed wurden, können auch ein Gateway zu einem sogenannten Broker-Server aufbauen. Die Übermittlung wird mit dem Protokoll '''<span style="color: #202122">Message Queuing Telemetry Transport (MQTT)</span>''' vermittelt. Ein Broker-Server dient dazu, die Datenpakete, egal welcher Inhalts-Type, zwischen mehreren LoRa-Gateways auszutauschen. | ||
+ | |||
Genau hier setzt das Projekt '''<span style="font-size:14.0pt; | Genau hier setzt das Projekt '''<span style="font-size:14.0pt; | ||
− | line-height:107%">MeshCom</span>''' an. Der MeshCom-Server ist ein Broker-Server welcher das '''MQTT-Protokoll''' beherrscht. Jene Leser welche den Aufbau dieses Protokolls genauer studieren wollen verweise ich auf den WIKI Artikel '' | + | line-height:107%">MeshCom</span>''' an. Der MeshCom-Server ist ein Broker-Server welcher das '''MQTT-Protokoll''' beherrscht. Jene Leser welche den Aufbau dieses Protokolls genauer studieren wollen verweise ich auf den WIKI Artikel''https://de.wikipedia.org/wiki/MQTT'' bzw. auf die Beschreibung des detaillierten Aufbau des Inhalts mit dem Namen PROTOBUF''https://de.wikipedia.org/wiki/Protocol_Buffers''. |
− | <span style="color: #0070C0">Warum ein eigener MeshCom-Server als MQTT-Broker</span> | + | ===== <span style="color: #0070C0">Warum ein eigener MeshCom-Server als MQTT-Broker</span> ===== |
− | *<span style="color: black">Volle Anpassung | + | *<span style="color: black">Volle Anpassung an das etwas speziellere MQTT-Protokoll welches die Meshtastic-Firmware benutzt.</span><span style="color: black">Gestaltung im Header wie Topic, Paket-ID, Gateway-ID 32-Bit usw.</span> |
− | *<span style="color: black">Frei | + | *<span style="color: black">Frei definierbare Logik bei der Weitergabe der MQTT-Pakete mit Mengensteuerung</span> |
− | *<span style="color: black">Klares | + | *<span style="color: black">Klares Zuschneiden auf Zwecke der Funkamateure</span> |
− | *<span style="color: black">Schnittstellen | + | *<span style="color: black">Schnittstellen zu anderen Message-Systemen wie APRS, DAPNET, HAMMessenger u.v.m</span> |
− | *<span style="color: black">Skalierbare | + | *<span style="color: black">Skalierbare Vernetzung von mehreren MeshCom-Servern mit</span><span style="color: black">Berücksichtigung der teilweise fragilen HAMNET-Vernetzungswege.</span> |
− | *<span style="color: black">Skalierbare | + | *<span style="color: black">Skalierbare Vernetzung von Großregionen</span> |
− | <span style="color: #0070C0">Was sind die 1. Schritte</span> | + | ===== <span style="color: #0070C0">Was sind die 1. Schritte</span> ===== |
+ | <span style="color: black">Die Programmier-Software zum laden der Firmware in die LoRa-Module ist im ÖVSV-WIKI Schrittweise beschrieben''[[MeshCom/MeshCom-ErsteSchritte|https://wiki.oevsv.at/wiki/MeshCom/MeshCom-ErsteSchritte]]''.</span> | ||
− | <span style="color: black">Die | + | <span style="color: black">Die aktuelle Firmware, welche schon sehr wichtige Wünsche zum Projekt aufgenommen hat, kann aus dem ÖVSV-WIKI geladen werden ''[[MeshCom/MeshCom-Firmware|https://wiki.oevsv.at/wiki/MeshCom/MeshCom-Firmware]]''. Diese Seite stellt auch die aktuellen Änderungen dar. Ein Auszug der wichtigen Änderungen um ein gemeinsames HF-Projekt zu leben sind:</span> |
− | + | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Bluetooth PIN wurde fix auf "000000" gesetzt, das erleichtert die Verbindung mit dem Smartphone via Bluetooth ohne jeweils das Display ablesen zu müssen.</span> | |
− | + | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">HOP-Limit für Nachrichten wurde auf 5 erhöht, damit Nachrichten im Mesh-Netzwerk 5 mal von anderen Nodes weitergesendet werden. Das ist sehr wichtig da an jedem '''LoRa-NODE''' bzw. einem '''LoRa-Gatewa'''y jeweils das HOP-Limit um 1 reduziert wird und bei „0“ wird das Paket nicht weiter verteilt.</span> | |
− | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Bluetooth PIN | + | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">MeshCom logo und ÖVSV link</span> |
− | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif"> | ||
− | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">MeshCom logo | ||
*<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Beide sleep modi (light sleep, deep sleep) sind deaktiviert damit das Modul jederzeit zur Kommunikation mit dem Netzwerk als auch dem Smartphone zur Kontrolle und Abfrage bereit ist.</span> | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Beide sleep modi (light sleep, deep sleep) sind deaktiviert damit das Modul jederzeit zur Kommunikation mit dem Netzwerk als auch dem Smartphone zur Kontrolle und Abfrage bereit ist.</span> | ||
− | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Wifi Refresh | + | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Wifi Refresh für Gateway reduziert auf 5 sec. Damit werden auch ältere Router im Heimnetzwerk bedient, welche die Antwort-Tunnel meist nur 6 Sekunden „offen“ halten.</span> |
− | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">fixe | + | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">fixe Voreinstellung der HF-Parameter von:</span> |
− | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">PSK | + | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">PSK Encryption NONE,</span> |
*Channel: Very Long Range Very Slow (BW125kHz) | *Channel: Very Long Range Very Slow (BW125kHz) | ||
*<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Region: EU433</span> | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Region: EU433</span> | ||
− | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Reconnect zum | + | *<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Reconnect zum MeshCom-Server nach einem Neustart. Wichtig damit die LoRa-Gateways rasch reconnecten wenn der MeshCom-Server, gerade in der Testphase ist das öfters, neu gestartet wurde.</span> |
− | <span style="color: black"> | + | <span style="color: black">Wenn die Firmware mit dem ESPTool für Windows oder mittels Pyhon esptool geladen ist verbindet man sich mit einer Konsole (ich verwende eine GITBash-Konsole) um die Konfigurations-Befehle zu laden. Diese sind:</span> |
− | |||
'''<span style="font-size:14.0pt;line-height:107%">LoRa-Nodes</span>''' | '''<span style="font-size:14.0pt;line-height:107%">LoRa-Nodes</span>''' | ||
Zeile 76: | Zeile 79: | ||
<span style="color: black">Die Befehle können auch i einer Zeile eingegeben werden:</span> | <span style="color: black">Die Befehle können auch i einer Zeile eingegeben werden:</span> | ||
− | *'''meshtastic --set-owner OE9XXX --set region EU433 | + | *'''meshtastic --set-owner OE9XXX --set region EU433 --ch-index 0 --ch-set psk none''' |
<span style="color: black">Sollten mehrere Module am PC angeschlossen sein muss die USB-Schnittstelle zusätzlich in jeder Befehlszeile gesetzt werden:</span> | <span style="color: black">Sollten mehrere Module am PC angeschlossen sein muss die USB-Schnittstelle zusätzlich in jeder Befehlszeile gesetzt werden:</span> | ||
− | *'''meshtastic --port com22 --set-owner | + | *'''meshtastic --port com22 --set-owner OE9XXX''' |
<span style="color: black">Wenn ein LoRa-Module verwendet wird welcher keinen GPS-Empfänger verbaut hat kann die Position bei Bedarf auch fix eingestellt werden. Wichtig! Die Positions-Parameter unbedingt in einer Zeile setzen:</span> | <span style="color: black">Wenn ein LoRa-Module verwendet wird welcher keinen GPS-Empfänger verbaut hat kann die Position bei Bedarf auch fix eingestellt werden. Wichtig! Die Positions-Parameter unbedingt in einer Zeile setzen:</span> | ||
− | *'''meshtastic --port com22 --setlat | + | *'''meshtastic --port com22 --setlat 44.33 --setlon 15.5315 --setalt 252''' |
<span style="color: black">Der Breitengrad und der Längengrad werden in Dezimalgraden ausgedrückt. Die Seehöhe wird in Ganzzahl und Metern angegeben.</span> | <span style="color: black">Der Breitengrad und der Längengrad werden in Dezimalgraden ausgedrückt. Die Seehöhe wird in Ganzzahl und Metern angegeben.</span> | ||
Zeile 92: | Zeile 95: | ||
*'''meshtastic –port com22 –info''' | *'''meshtastic –port com22 –info''' | ||
+ | [[Datei:LoRa-Konfiguration.png|gerahmt|Ausgabe auf Befehl: '''meshtastic --info''']] | ||
<span style="color: black">Ein erster Test ob man im MeshCom-Netz ankommt ist die Eingabe einer Text-Meldung über die selbe Konsole welche zum Konfigurieren verwendet wurde:</span> | <span style="color: black">Ein erster Test ob man im MeshCom-Netz ankommt ist die Eingabe einer Text-Meldung über die selbe Konsole welche zum Konfigurieren verwendet wurde:</span> | ||
− | *'''meshtastic --sendtext ‘hello | + | *'''meshtastic --sendtext ‘hello world‘''' |
+ | |||
+ | <span style="color: black">Kontrolle am Dashboard unter Menü ACTIVITY:</span> | ||
+ | |||
+ | * <span style="color: black">via HAMNET</span> <span style="color: #0070C0">[http://meshcom.ampr.at/ <span style="color: black"><span style="color: black">'''http://meshcom.ampr.at'''</span></span>]</span> | ||
+ | * <span style="color: black">via INTERNET</span> '''<span style="color: #0070C0">[https://srv08.oevsv.at/mqtt <span style="color: black"><span style="color: black">https://srv08.oevsv.at/mqtt</span></span>]</span>''' | ||
− | |||
'''<span style="font-size:14.0pt;line-height:107%">LoRa-Gateways</span>''' | '''<span style="font-size:14.0pt;line-height:107%">LoRa-Gateways</span>''' | ||
Zeile 112: | Zeile 120: | ||
*'''<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Neustart des Gateway-Nodes nach erfolgter Konfiguration bzw. jeder Änderung</span>''' | *'''<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Neustart des Gateway-Nodes nach erfolgter Konfiguration bzw. jeder Änderung</span>''' | ||
− | *'''<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Ein | + | *'''<span style="font-size:10.5pt;font-family:"Open Sans",sans-serif">Ein LoRa-Gateway läuft unstabil wenn man es im Betrieb am PC/Laptop angeschlossen bleibt. Es sollte auch kein Debug- oder Log-Modus während eines Regelbetriebs gestartet sein.</span>''' |
− | <span style="color: black">Die Kontrolle der LoRa-Gateway-Verbindung kann über das Dashboard | + | <span style="color: black">Die Kontrolle der LoRa-Gateway-Verbindung kann über das Dashboard:</span> |
− | <span style="color: #0070C0"> | + | * <span style="color: black">via HAMNET</span> <span style="color: #0070C0">[http://meshcom.ampr.at/ <span style="color: black"><span style="color: black">'''http://meshcom.ampr.at'''</span></span>]</span> |
+ | * <span style="color: black">via INTERNET</span> '''<span style="color: #0070C0">[https://srv08.oevsv.at/mqtt <span style="color: black"><span style="color: black">https://srv08.oevsv.at/mqtt</span></span>]</span>''' <span style="color: black">erfolgen.</span> | ||
+ | ===== <span style="color: #0070C0">Wie kann ich mittels meines LoRa-Nodes Text-Meldungen absenden bzw. empfangen.</span> ===== | ||
+ | [[Datei:MeshCom Textmessages.jpg|links|rahmenlos]] | ||
<span style="color: black">Die Positionsmeldungen werden ja automatisch gesendet jedoch Textmeldungen benötigen einen Client. Es gibt folgende Clients:</span> | <span style="color: black">Die Positionsmeldungen werden ja automatisch gesendet jedoch Textmeldungen benötigen einen Client. Es gibt folgende Clients:</span> | ||
− | |||
− | |||
*<span style="color: black">Kommando-Zeile aber nur zum Senden von Text</span> | *<span style="color: black">Kommando-Zeile aber nur zum Senden von Text</span> | ||
Zeile 127: | Zeile 136: | ||
*IPhone APP ''<nowiki>[https://meshtastic.discourse.group/t/meshtastic-ios-app-first-alpha-release/2733]</nowiki>'' Dieser Download ist ein Testflight. <span style="color: black">Derzeit sind leider die Anzahl der Tester vom Entwickler limitiert und abgelaufen.</span> | *IPhone APP ''<nowiki>[https://meshtastic.discourse.group/t/meshtastic-ios-app-first-alpha-release/2733]</nowiki>'' Dieser Download ist ein Testflight. <span style="color: black">Derzeit sind leider die Anzahl der Tester vom Entwickler limitiert und abgelaufen.</span> | ||
− | |||
− | |||
− | *<span style="color: black">OE6 Deutschlandsberg | + | |
− | *<span style="color: black">OE4 Allhau bei | + | [[Datei:MeshComKarte.jpg|mini|Iphone APP - Kartendarstellung]] |
− | *<span style="color: black">OE3 ÖVSV-HQ Wr. | + | |
− | *<span style="color: black">OE3 | + | ===== <span style="color: black">Derzeit gibt es LoRa-Getways in OE und DL:</span> ===== |
− | *<span style="color: black">OE3 Sieghartskirchen | + | |
− | *<span style="color: black">OE3 Jauerling | + | * <span style="color: black">OE6 Deutschlandsberg welcher bis nach Graz reicht</span> |
− | *<span style="color: black">OE5 Linz | + | |
+ | *<span style="color: black">OE4 Allhau bei Oberwart</span> | ||
+ | *<span style="color: black">OE3 ÖVSV-HQ Wr. Neudorf</span> | ||
+ | *OE3 Klosterneuburg | ||
+ | *<span style="color: black">OE3 Alt-Erlaa</span> | ||
+ | *<span style="color: black">OE1 Wien 15</span> | ||
+ | *<span style="color: black">OE3 Sieghartskirchen (Tullnerfeld)</span> | ||
+ | *<span style="color: black">OE3 Jauerling bei Stein/Donau</span> | ||
+ | *<span style="color: black">OE5 Linz Lichtenberg und weitere Standorte nähe Linz</span> | ||
*<span style="color: black">OE7 nähe Innsbruck</span> | *<span style="color: black">OE7 nähe Innsbruck</span> | ||
− | *<span style="color: black">Weitere kommen | + | *DL Süd/Bayern Waging |
+ | *DL West | ||
+ | *<span style="color: black">Weitere kommen rasch dazu. Info via Dashboard.</span> | ||
Version vom 16. Februar 2022, 03:12 Uhr
Was benötigt man um am MeshCom Projekt teilzunehmen
von Kurt OE1KBC – Referat für nat. & int. Projekte
TBEAM, TLORA, HELTEC & Co.
Die aktuelle Meshtastic Firmware (1.2.53 ff) ist auf Boards, welche einen ESP32 oder nRF52 Prozessor, einen LoRa-Chip, GPS von Ublox und WIFI sowie Bluetooth Hardware am Modul anbieten, von einigen Herstellern verfügbar. Am Markt sehr günstig zu erhalten sind die Boards von Lilygo, Heltec und Wisblock. Auf Einkaufsplattform direkt in China Banggood oder via AMAZON mit folgenden Begriffen suchen.
- Lilygo TTGO T-Beam
- Lilygo TTGO Lora
- Heltec Lora 32 (V2)
- Wisblock RAK4631
Beim Kauf sind wichtige Hardware-Features zu beachten
- Ganz wichtig Frequenz EU433
- Soll ein GPS-Modul vorhanden sein? (TTGO_LORA hat das nicht)
- Soll das Modul gleich im Gehäuse geliefert werden?
- Entweder ist ein OLED-Display bereits verbaut oder wird zum selbst auflöten mitgeliefert.
- Ein Netzgerät mit 5V USB-A Buchse, wird meist nicht mitgeliefert, solle aber fast immer im Shake vorhanden sein.
Was ist der Unterschied zwischen LoRa-Node und LoRa-Gateway
LoRa-Nodes mit Meshtastic-Firmware bilden, wenn sich die Funkmodule gegenseitig hören, eine Mesh-HF-Wolke aus wo die Kommunikation wie in einem kleinen Netzwerk funktioniert. Es können SMS-Meldungen, POSITIONS-Meldungen , NODE-Informationen und/oder MESSWERT-Daten ausgetauscht werden. Wichtig! dass man auf allen teilnehmenden NODES das gleiche Frequenzband (70cm) und die gleichen Modulationsparameter (Datenrate, Spreadingfaktor, usw.) eingestellt hat.
Was ein großer Vorteil der Mesh-Vernetzung ist, dass sich nicht alle teilnehmenden NODES tatsächlich auf dem HF-Weg „hören“ müssen. Datenpakete werden über Partner-NODES solange mittels HF-Übertragung weiter gegeben bis diese alle LoRa-Nodes erreicht haben. Wie lange ein Paket weiter gegeben wird hängt unter anderem vom HOP-Limit ab (siehe Konfiguration).
LoRa-Gateways welche ebenfalls mit Meshtastic-Firmware geflashed wurden, können auch ein Gateway zu einem sogenannten Broker-Server aufbauen. Die Übermittlung wird mit dem Protokoll Message Queuing Telemetry Transport (MQTT) vermittelt. Ein Broker-Server dient dazu, die Datenpakete, egal welcher Inhalts-Type, zwischen mehreren LoRa-Gateways auszutauschen.
Genau hier setzt das Projekt MeshCom an. Der MeshCom-Server ist ein Broker-Server welcher das MQTT-Protokoll beherrscht. Jene Leser welche den Aufbau dieses Protokolls genauer studieren wollen verweise ich auf den WIKI Artikelhttps://de.wikipedia.org/wiki/MQTT bzw. auf die Beschreibung des detaillierten Aufbau des Inhalts mit dem Namen PROTOBUFhttps://de.wikipedia.org/wiki/Protocol_Buffers.
Warum ein eigener MeshCom-Server als MQTT-Broker
- Volle Anpassung an das etwas speziellere MQTT-Protokoll welches die Meshtastic-Firmware benutzt.Gestaltung im Header wie Topic, Paket-ID, Gateway-ID 32-Bit usw.
- Frei definierbare Logik bei der Weitergabe der MQTT-Pakete mit Mengensteuerung
- Klares Zuschneiden auf Zwecke der Funkamateure
- Schnittstellen zu anderen Message-Systemen wie APRS, DAPNET, HAMMessenger u.v.m
- Skalierbare Vernetzung von mehreren MeshCom-Servern mitBerücksichtigung der teilweise fragilen HAMNET-Vernetzungswege.
- Skalierbare Vernetzung von Großregionen
Was sind die 1. Schritte
Die Programmier-Software zum laden der Firmware in die LoRa-Module ist im ÖVSV-WIKI Schrittweise beschriebenhttps://wiki.oevsv.at/wiki/MeshCom/MeshCom-ErsteSchritte.
Die aktuelle Firmware, welche schon sehr wichtige Wünsche zum Projekt aufgenommen hat, kann aus dem ÖVSV-WIKI geladen werden https://wiki.oevsv.at/wiki/MeshCom/MeshCom-Firmware. Diese Seite stellt auch die aktuellen Änderungen dar. Ein Auszug der wichtigen Änderungen um ein gemeinsames HF-Projekt zu leben sind:
- Bluetooth PIN wurde fix auf "000000" gesetzt, das erleichtert die Verbindung mit dem Smartphone via Bluetooth ohne jeweils das Display ablesen zu müssen.
- HOP-Limit für Nachrichten wurde auf 5 erhöht, damit Nachrichten im Mesh-Netzwerk 5 mal von anderen Nodes weitergesendet werden. Das ist sehr wichtig da an jedem LoRa-NODE bzw. einem LoRa-Gateway jeweils das HOP-Limit um 1 reduziert wird und bei „0“ wird das Paket nicht weiter verteilt.
- MeshCom logo und ÖVSV link
- Beide sleep modi (light sleep, deep sleep) sind deaktiviert damit das Modul jederzeit zur Kommunikation mit dem Netzwerk als auch dem Smartphone zur Kontrolle und Abfrage bereit ist.
- Wifi Refresh für Gateway reduziert auf 5 sec. Damit werden auch ältere Router im Heimnetzwerk bedient, welche die Antwort-Tunnel meist nur 6 Sekunden „offen“ halten.
- fixe Voreinstellung der HF-Parameter von:
- PSK Encryption NONE,
- Channel: Very Long Range Very Slow (BW125kHz)
- Region: EU433
- Reconnect zum MeshCom-Server nach einem Neustart. Wichtig damit die LoRa-Gateways rasch reconnecten wenn der MeshCom-Server, gerade in der Testphase ist das öfters, neu gestartet wurde.
Wenn die Firmware mit dem ESPTool für Windows oder mittels Pyhon esptool geladen ist verbindet man sich mit einer Konsole (ich verwende eine GITBash-Konsole) um die Konfigurations-Befehle zu laden. Diese sind:
LoRa-Nodes
- meshtastic --set-owner OE9XXX
- meshtastic --set region EU433
- meshtastic --ch-index 0 --ch-set psk none
Die Befehle können auch i einer Zeile eingegeben werden:
- meshtastic --set-owner OE9XXX --set region EU433 --ch-index 0 --ch-set psk none
Sollten mehrere Module am PC angeschlossen sein muss die USB-Schnittstelle zusätzlich in jeder Befehlszeile gesetzt werden:
- meshtastic --port com22 --set-owner OE9XXX
Wenn ein LoRa-Module verwendet wird welcher keinen GPS-Empfänger verbaut hat kann die Position bei Bedarf auch fix eingestellt werden. Wichtig! Die Positions-Parameter unbedingt in einer Zeile setzen:
- meshtastic --port com22 --setlat 44.33 --setlon 15.5315 --setalt 252
Der Breitengrad und der Längengrad werden in Dezimalgraden ausgedrückt. Die Seehöhe wird in Ganzzahl und Metern angegeben.
Die gesetzten Parameter können mit folgendem Befehl überprüft werden:
- meshtastic –port com22 –info
Ein erster Test ob man im MeshCom-Netz ankommt ist die Eingabe einer Text-Meldung über die selbe Konsole welche zum Konfigurieren verwendet wurde:
- meshtastic --sendtext ‘hello world‘
Kontrolle am Dashboard unter Menü ACTIVITY:
- via HAMNET http://meshcom.ampr.at
- via INTERNET https://srv08.oevsv.at/mqtt
LoRa-Gateways
Es werden noch zusätzlich zu obigen LoRa-Nodes Konfigurations-Befehlen folgende Befehle gespeichert:
- meshtastic --set wifi_ap_mode false
- meshtastic --set wifi_ssid 'AP-SSID'
- meshtastic --set wifi_password 'AP-PASSWORT'
- meshtastic --set mqtt_server 44.143.8.143
- meshtastic --ch-index 0 --ch-set uplink_enabled true
- meshtastic --ch-index 0 --ch-set downlink_enabled true
Wichtig sind folgende Vorgangsweisen:
- Neustart des Gateway-Nodes nach erfolgter Konfiguration bzw. jeder Änderung
- Ein LoRa-Gateway läuft unstabil wenn man es im Betrieb am PC/Laptop angeschlossen bleibt. Es sollte auch kein Debug- oder Log-Modus während eines Regelbetriebs gestartet sein.
Die Kontrolle der LoRa-Gateway-Verbindung kann über das Dashboard:
- via HAMNET http://meshcom.ampr.at
- via INTERNET https://srv08.oevsv.at/mqtt erfolgen.
Wie kann ich mittels meines LoRa-Nodes Text-Meldungen absenden bzw. empfangen.
Die Positionsmeldungen werden ja automatisch gesendet jedoch Textmeldungen benötigen einen Client. Es gibt folgende Clients:
- Kommando-Zeile aber nur zum Senden von Text
- WEB-Interface muss aber zusätzlich installiert werden und ist im ÖVSV-WIKI beschrieben
- ANDROID APP [https://meshtastic.org/docs/software/android/android-installation] Hinweis: ist nicht im Google Playstore sondern nur im Amazon Appstore zu erhalten.
- IPhone APP [https://meshtastic.discourse.group/t/meshtastic-ios-app-first-alpha-release/2733] Dieser Download ist ein Testflight. Derzeit sind leider die Anzahl der Tester vom Entwickler limitiert und abgelaufen.
Derzeit gibt es LoRa-Getways in OE und DL:
- OE6 Deutschlandsberg welcher bis nach Graz reicht
- OE4 Allhau bei Oberwart
- OE3 ÖVSV-HQ Wr. Neudorf
- OE3 Klosterneuburg
- OE3 Alt-Erlaa
- OE1 Wien 15
- OE3 Sieghartskirchen (Tullnerfeld)
- OE3 Jauerling bei Stein/Donau
- OE5 Linz Lichtenberg und weitere Standorte nähe Linz
- OE7 nähe Innsbruck
- DL Süd/Bayern Waging
- DL West
- Weitere kommen rasch dazu. Info via Dashboard.
73 de Kurt
OE1KBC
Nat. & Int. Projekte im ÖVSV