Bei Recherchen zur Frage: 'Wie baut man ein Mesh-Netz sinnvoll auf?` bin ich auf einen interessanten und weiterführenden Artikel von Eric Hendrickson (W6HS) gestossen.
Hier der vollständige Blogpost von W6HS, https://w6hs.net/meshcore-repeater-deployment-timing-considerations-for-wide-area-networks/ mit Hilfe von myAI übersetzt, zusammengefasst und mit Alltagsvergleichen versehen.
Überblick
Die Inbetriebnahme von MeshCore-Repeatern in Weitverkehrsnetzen erfordert eine sorgfältige Abstimmung der Timing-Einstellungen. Der Artikel beschreibt vier zentrale Parameter, die beeinflussen, wie Pakete im Netz weitergeleitet werden:
| Parameter | Funktion |
|---|---|
txdelay |
Sendeverzögerung |
rxdelay |
Empfangsverzögerung (SNR-basiert) |
af |
Airtime-Faktor (internes Pacing) |
flood.max |
Maximale Hop-Anzahl |
Was es macht:
Der txdelay bestimmt, wie lange ein Repeater wartet, bevor er ein empfangenes Paket weitersendet. Die Wartezeit wird berechnet als: Time-on-Air × txdelay-Faktor. Innerhalb dieses Fensters wird ein zufälliger Sendezeitpunkt gewählt.
Zweck:
Verhindert, dass mehrere Knoten gleichzeitig senden und sich gegenseitig stören (Kollision).
Analogie: Die Autobahnauffahrt
Stell dir eine Autobahnauffahrt vor. Wenn alle Autos gleichzeitig auf die Autobahn einbiegen, gibt’s einen Stau oder sogar Unfälle. Deshalb gibt es an manchen Auffahrten Ampeln, die die Autos zeitversetzt durchlassen.
txdelay 0.5 = Kurze Ampelphase → Autos kommen schnell rauf (enger, lokaler Verkehr)
txdelay 1.0 = Mittlere Ampelphase → mehr Abstand, weniger Risiko (regionale Strasse)
txdelay 2.0 = Lange Ampelphase → der grosse Verteiler lässt erstmal alle kleinen Zufahrten durch, bevor er selbst Verkehr einleitet (Autobahnkreuz)
Empfohlene Werte:
| txdelay | Einsatz |
|---|---|
| 0.5 | Persönlicher Repeater, Hausdach, Balkon, mobil |
| 1.0 | Regionaler Repeater auf Hochhaus, einige km Sichtlinie |
| 2.0 | Backbone-Repeater auf Berggipfel/Turm, verbindet entfernte Netze |
2. rxdelay – SNR-basierte Empfangsstaffelung
Was es macht:
Fügt eine Verzögerung hinzu, die vom Signal-Rausch-Verhältnis (SNR) abhängt:
-
Starkes Signal → kurze Verzögerung → wird bevorzugt weitergeleitet
-
Schwaches Signal → lange Verzögerung → muss warten
Analogie: Die Poststelle mit zwei Eingängen
Stell dir vor, du arbeitest an einem Postschalter. Du bekommst denselben Brief über zwei Wege:
Eingang A: Ein Expressbote bringt ihn – sauber, trocken, gut lesbar
Eingang B: Ein durchnässter Brief kommt über Umwege an – kaum leserlich
Natürlich leitest du den sauberen Brief zuerst weiter! Den nassen hältst du zurück – vielleicht brauchst du ihn gar nicht, weil der gute schon angekommen ist.
Genau das macht
rxdelay: Der beste Pfad gewinnt.
Einsatzbereiche:
-
Wenn ein Repeater Pakete über mehrere, unterschiedlich starke Wege empfängt
-
Bei überlappender Abdeckung mehrerer Repeater
3. af (Airtime Factor) – Taktungsfaktor
Was es macht:
Der af ist ein Multiplikator für die internen Timing-Fenster des Repeaters. Er ändert nicht die LoRa-Funkparameter (Spreading Factor, Bandbreite etc.), sondern nur, wie der Repeater sein eigenes Tempo reguliert.
Analogie: Das Metronom in einem Orchester
In einem Orchester gibt das Metronom (oder der Dirigent) den Takt vor. Wenn alle Musiker im selben Tempo spielen, klingt es harmonisch.
Standardmässig schlagen alle Repeater im gleichen “Takt” – das funktioniert gut.
Wenn ein Repeater als Flaschenhals viele Pakete verarbeiten muss, kann man sein Metronom etwas langsamer stellen (af erhöhen) – er arbeitet dann etwas gemächlicher, aber kontrollierter.
Wichtig: Alle Musiker müssen im selben Takt bleiben! Unterschiedliche
af-Werte führen zu “Timing-Drift” – wie ein Musiker, der aus dem Takt kommt.
Empfehlung:
- In der Schweiz Standardwert = af 9, Einhaltung der regulatorischen Vorgaben!
Was es macht:
Definiert die maximale Anzahl an Weiterleitungen (Hops), bevor ein Paket verworfen wird. Standard: 64 Hops / 32 Hops bei 2-Byte Path!
Analogie: Stille Post mit Limit
Kennst du “Stille Post” oder “Chüschele”? Eine Nachricht wird von Person zu Person weitergegeben. Ohne Begrenzung würde die Nachricht endlos im Kreis wandern – und jede Runde wird sie unbrauchbarer.
flood.max = 64sagt: Nach 64 Weitergaben ist Schluss – das Paket wird entsorgt. Das verhindert, dass “Geister-Pakete” das Netz verstopfen.
Empfehlung:
-
64 Hops / 32 Hops bei 2 bytes Path Hash reicht für fast alle Netze
-
Nur bei sehr kleinen Netzen ggf. reduzieren
-
Nicht erhöhen! → Führt zu Netzüberlastung
Das Zusammenspiel aller Einstellungen
Analogie: Eine Bergrettungskette
Stell dir eine Rettungskette in den Alpen vor:
Tal-Helfer (txdelay 0.5): Reagiert sofort, hat aber nur kurze Reichweite zum nächsten Dorf
Mittelstation (txdelay 1.0): Sitzt auf halber Höhe, wartet kurz ab, ob der Tal-Helfer die Nachricht schon weitergeben konnte
Gipfelstation (txdelay 2.0): Hat Sicht ins ganze Tal, wartet aber bewusst am längsten – sie greift nur ein, wenn die unteren Stationen es nicht geschafft haben
So arbeiten alle kooperativ zusammen, ohne sich gegenseitig zu “überschreien”.
Praktische Tuning-Richtlinien
| Situation | Empfehlung |
|---|---|
| Kleine, dichte Abdeckung | Kurze Timing-Werte → schnell & reaktiv |
| Repeater überbrückt entfernte Knoten | txdelay leicht erhöhen |
| Überlappende/asymmetrische Pfade | rxdelay nutzen, um starke Signale zu priorisieren |
| Alle Knoten | af konsistent halten (CH regulatorische Vorgaben!) |
| Standardnetze | flood.max auf 64 / 32 belassen |
Häufige Probleme & Lösungen
| Problem | Ursache | Lösung |
|---|---|---|
| Pakete verschwinden still | Hop-Count überschreitet flood.max |
flood.max prüfen (bei 64 selten) |
| Hohe Latenz | Absichtlich hoher txdelay |
Kompromiss: weniger Kollisionen = etwas mehr Wartezeit |
| Merkwürdige Reihenfolge bei Wiederholungen | SNR-Staffelung durch rxdelay |
Erwartetes Verhalten! |
| Timing-Drift | Unterschiedliche af-Werte im Netz |
af netzwerkweit angleichen |
| Repeater scheint “tot” | Duplikat-Unterdrückung filtert Pakete | Normal – Repeater arbeitet korrekt |
Fazit
Ein gut konfigurierter MeshCore-Repeater arbeitet mit dem Netz, nicht über es.
Durch abgestimmte Timing-Einstellungen breiten sich Pakete gleichmässig und vorhersehbar aus – wie Wellen auf einem ruhigen See, nicht wie Chaos in einem Wellenbad.
Die Empfehlung des Autors: Experimentieren und iterieren! Jede Topografie ist anders, und Feldmessungen sind der Schlüssel zur optimalen Konfiguration.