Zum Inhalt springen

Observer-Konfiguration

Was ist ein Observer?

Observer liefern die Daten-Grundlage für nützliche Web-Tools wie den BSmesh Analyzer und MeshMapper. Sie empfangen MeshCore-Pakete via LoRa und leiten sie über das Internet an die MQTT-Server weiter; von dort landen sie in den Tools. Observer helfen uns also dabei, zu verstehen wie das Mesh funktioniert.

Für Redundanz im Betrieb verwenden wir zwei MQTT-Server: unseren eigenen Broker unter mqtt.bsmesh.de und den Broker von MeshCoreNetz.de unter mqtt.meshcorenetz.de.

Um einen Observer zu betreiben hast du zwei Möglichkeiten: Ein eigenständiger Repeater auf ESP32-Basis welcher empfangene Pakete per WLAN zum Analyzer sendet oder ein Repeater per USB bzw. ein Companion per USB/WLAN/BLE an einem separatem Linux-Gerät welches das Senden der Pakete übernimmt.

ESP32-basierter Repeater ohne zusätzliche Hardware

Die passende Firmware für dein Gerät kannst du im Web-Flasher finden und direkt aufs Gerät laden. Diese Einstellungen machst du dann per USB direkt im Web-Flasher:

  • “EU/UK Narrow”-Preset: 869,618 MHz, 62,5 kHz Bandbreite, Spreading-Factor 8, Coding-Rate 5:
    • set radio 869.618,62.5,8,5
  • Sendeleistung einstellen: 22 dBm; weniger falls du ein Gerät mit Verstärker nutzt
    • set tx 22
  • Observer-Region, BWE fürs BSmesh
    • set mqtt.iata BWE
  • Im ersten Slot die Verbindung zum BSmesh-MQTT-Server aktivieren
    • set mqtt1.preset bsmesh
  • Verbindung zu MeshCoreNetz.de im zweiten Slot aktivieren:
    set mqtt2.preset custom
    set mqtt2.server mqtt.meshcorenetz.de
    set mqtt2.port 1883
    set mqtt2.username observer
    set mqtt2.password observer2026
  • Zeitzone korrekt einstellen
    • set timezone Europe/Berlin
  • den Name deines Observers im Mesh festlegen
    • set name Mein-Observer
  • SSID des WLANs das der Observer nutzen soll
    • set wifi.ssid WLAN-Name
  • das Password für das WLAN
    • set wifi.pwd WLAN-Password

Zum Abschluss musst du noch mit reboot einen Neustart auslösen. Nach diesem Neustart nimmt dein Observer die Arbeit auf. Um das zu überprüfen kannst du in der Observer-Liste des Analyzers nach dem Namen suchen.

Damit sich dein Repeater gut ins Mesh einfügt, solltest du zusätzlich noch die Repeater-Einstellungen übernehmen. Das Template kannst du dann leider nicht nutzen, die Einstellungen musst du manuell setzen.

Repeater oder Companion plus Linux-Gerät

Wenn du einen Repeater per USB als Observer nutzen willst verwendest du am Besten meshcoretomqtt.
Der Abschnitt Hardware Setup erklärt welche Änderungen du an der MeshCore-Firmware machen musst. Im Anschluss übernimmst du noch die Repeater-Einstellungen, damit sich dein Repeater gut ins Mesh einfügt.

Für einen Companion nutzt du meshcore-packet-capture. Der einfachste Weg ist der Managed-service installer.

meshcoretomqtt und meshcore-packet-capture nutzen identische Konfigurations-Formate, bei beiden gibst du als IATA BWE ein und nutzt das BSmesh-Preset und die MeshCorenetz-Einstellungen.

Hier findest du die vollständige Konfiguration:

[general]
iata = "BWE"

[serial]
# Den Port musst du an deine Geräte anpassen.
# Nutze am Besten einen Pfad aus `/dev/serial/by-id`
# um spätere Probleme zu verhindern.
ports = ["/dev/ttyACM0"]

[[broker]]
name = "BSmesh"
enabled = true
server = "mqtt.bsmesh.de"
port = 8885
transport = "websockets"
keepalive = 55
qos = 0
retain = true

[broker.tls]
enabled = true
verify = true

[broker.auth]
method = "token"
audience = "mqtt.bsmesh.de"

[[broker]]
name = "MeshCoreNetz"
enabled = true
server = "mqtt.meshcorenetz.de"
port = 1883
transport = "tcp"
keepalive = 55
qos = 0
retain = true

[broker.tls]
enabled = false

[broker.auth]
method = "password"
username = "observer"
password = "observer2026"