Observer
Observer
Een observer is een MeshCore node (client of repeater) die naast het normale mesh-verkeer ook een internetverbinding heeft. Via die verbinding stuurt de node informatie over ontvangen pakketten door naar externe diensten die het netwerk inzichtelijk maken.
Observers vormen samen de "ogen en oren" van online dashboards: zonder observers zouden sites als cornmeister, Letsmesh en MC-Radar geen beeld hebben van wat er op de mesh gebeurt.
Wat doet een observer?
- Ontvangt pakketten via LoRa, net als iedere andere node
- Stuurt die pakketten via het internet door naar een verwerkende dienst, meestal over MQTT (een lichtgewicht publish/subscribe-protocol dat veel in IoT gebruikt wordt)
- Draagt bij aan dekkingkaarten, netwerkstatistieken en storingsanalyse
Waarom observers belangrijk zijn
MeshCore is een gedecentraliseerd netwerk zonder centrale server. Observers helpen om te zien:
- Welke nodes actief zijn
- Hoe ver berichten komen
- Waar dekking ontbreekt
- Of een repeater goed functioneert
- Of er bronnen zijn van overmatig veel verkeer, en waar die zijn
Door een observer te draaien help je de hele community met inzicht in het netwerk.
Zelf een observer draaien
Om een observer op te zetten heb je nodig:
- Een MeshCore device; liefst een die werkt als repeater, maar een companion of room mag ook
- Een stabiele internetverbinding op de plek van de node (bijvoorbeeld via WiFi of Ethernet)
Voor Meshcore devices die geen ingebouwde WiFi ondersteuning hebben:
- Een Raspberry Pi of ander computertje waarop de client software (bijvoorbeeld meshcoretomqtt) kan draaien.
- Firmware voor je Meshcore device met packet logging enabled (bijvoorbeeld van Let's Mesh, of als je een nieuwere versie wil, van Weebl)
- Een USB kabel om Meshcore device en Raspberry Pi aan elkaar te koppelen
Voor Meshcore devices die wel ingebouwde WiFi ondersteuning hebben (bijvoorbeeld Heltec V3 en V4):
- Geen Raspberry Pi nodig!
- Meshcore firmware die WiFi en MQTT ondersteunt; bijvoorbeeld die van DutchMeshCore
Client software
Er bestaan verschillende implementaties die een node als observer laten functioneren:
| Client | Omschrijving |
|---|---|
| meshcoretomqtt | Python-script dat pakketdata van een MeshCore repeater doorstuurt naar MQTT. Draait op een Raspberry Pi of vergelijkbaar Linux-apparaat met een aangesloten repeater. |
| DutchMeshCore firmware | Meshcore firmware met native MQTT ondersteuning, die pakketdata naar (preconfigured) DutchMeshCore brokers stuurt. MQTT en WiFi configuratie gaat via de command line interface. |
| agessaman Meshcore fork | Meshcore firmware met native MQTT ondersteuning. |
| meshcore-packet-capture | Standalone Python-script voor het opvangen en analyseren van pakketten van MeshCore companion radios, met MQTT-ondersteuning. Specifiek voor companion nodes (voor repeaters en roomservers wordt meshcoretomqtt aanbevolen).
|
| meshcore-ha | Home Assistant integratie voor MeshCore nodes, die ook als observer data kan doorgeven. |
| pyMC Repeater | Lichte repeater daemon in Python, gebouwd op de pymc_core library. Draait op Raspberry Pi met een SPI LoRa HAT.
|
Globale stappen
- Kies een client software uit bovenstaande tabel die past bij jouw hardware en doel
- Volg de installatie- en configuratiedocumentatie van dat specifieke project; de exacte stappen verschillen per implementatie
- Registreer je observer indien nodig bij het dashboard waar je data naartoe wilt sturen (bijvoorbeeld MC-Radar of Letsmesh)
- (Optioneel) Voeg brokers toe, bijvoorbeeld die van dutchmeshcore.nl, met behulp van hun config generator. Je observer wordt dan toegevoegd aan bijvoorbeeld cornmeister.nl.
Meshwiki MQTT Broker
Meshwiki heeft ook een Broker draaien, hier kan jij als observer data naartoe sturen
Zie ook
- Terminologie - Uitleg van veelgebruikte termen
- MC-Radar - Dashboard dat observers gebruikt
- MQTT
- Publieke kanalen