Mögliches TX-/Routing-Problem – SenseCAP Solar Node P1 empfängt aus der ganzen Schweiz/Deutschland, aber meine Nachrichten werden offenbar nicht empfangen

Hallo zusammen

Vorgeschichte / wichtige Information zur Fehlersuche

Bevor ich an meinem Standort einen eigenen Repeater installiert habe, hatte ich bereits versucht, MeshCore mit einem Seeed Studio SenseCAP T1000-E sowie einem Heltec V4 zu verwenden.

Dabei zeigte sich bereits genau das Problem, das ich heute noch habe:

Der Empfang funktionierte an meinem Standort, teilweise sogar über grössere Entfernungen, aber meine eigenen Nachrichten wurden offenbar von niemandem empfangen.

Zunächst ging ich deshalb davon aus, dass an meinem Standort schlicht die Verbindung zum bestehenden Mesh zu schwach bzw. die Entfernung zu den vorhandenen Repeatern zu gross ist. Genau aus diesem Grund habe ich später den SenseCAP Solar Node P1 als eigenen Dachrepeater installiert und diesen zusätzlich mit der Delock 12504 LoRa 868 MHz 8-dBi-Antenne ausgerüstet.

Interessant und für die Fehlersuche sehr wichtig ist jedoch Folgendes:

Wenn ich meinen Standort verlasse und mich mit dem SenseCAP T1000-E oder Heltec V4 in die Nähe eines anderen funktionierenden Repeaters begebe, kann ich Nachrichten senden und andere Teilnehmer können mich empfangen.

Das Problem scheint also standortabhängig zu sein.

Deshalb gehe ich momentan davon aus, dass die grundsätzliche Konfiguration meiner Companion-Geräte und Apps wahrscheinlich korrekt ist. Ich habe das Verhalten sowohl unter Android als auch iOS und mit KiekR bzw. der MeshCore App getestet.

Vereinfacht dargestellt:

An meinem Standort:

Empfang aus dem Mesh → funktioniert

Eigene Nachrichten ins Mesh → offenbar nicht

An anderen Standorten in der Nähe eines funktionierenden Repeaters:

Empfang → funktioniert

Senden → funktioniert ebenfalls

Das Verhalten trat bereits auf, bevor der SenseCAP Solar Node P1 installiert wurde.

Der P1 wurde letztlich gerade deshalb angeschafft: Ich wollte an meinem Standort einen lokalen Repeater bereitstellen, damit meine Companion-Geräte einen zuverlässig erreichbaren Einstiegspunkt ins bestehende Mesh haben.

Trotz des eigenen P1 auf dem Dach und der deutlich grösseren 8-dBi-Antenne besteht das ursprüngliche Problem jedoch weiterhin.

Das lässt mich inzwischen daran zweifeln, dass ein Hardwaredefekt meines P1 allein die Ursache sein kann. Andererseits möchte ich natürlich trotzdem ausschliessen, dass beispielsweise dessen TX-Seite nicht korrekt funktioniert.

Für mich stellt sich deshalb vor allem die Frage:

Warum kann mein Standort offenbar Pakete aus dem bestehenden Mesh sehr gut empfangen, während Pakete von meinem Standort nicht oder nicht ausreichend in die Gegenrichtung gelangen?

Könnte hier eine asymmetrische Funkverbindung zu den erreichbaren Repeatern vorliegen? Oder gibt es aufgrund der aktuellen Region-, Flood- oder Routing-Konfiguration eine andere plausible Erklärung dafür, dass der Downlink zu meinem Standort funktioniert, der Uplink ins Mesh jedoch nicht?

Eigentliches Problem

ich versuche seit einiger Zeit, ein merkwürdiges Problem mit meinem MeshCore-Setup einzugrenzen, und wäre froh um eure Einschätzung, bevor ich unnötig Hardware ersetze.

Das grundlegende Problem ist:

Ich kann Nachrichten aus grossen Teilen der Schweiz und teilweise sogar aus Deutschland empfangen, aber offenbar kann niemand meine Nachrichten lesen.

Ich möchte deshalb herausfinden, ob ich ein Konfigurations-, Routing-, Region-/Flood-Problem habe oder ob möglicherweise die TX-/Sendestufe meines SenseCAP Solar Node P1 einen Defekt hat.

Hardware des Repeaters

Repeater:
SenseCAP Solar Node P1

Antenne:
Delock 12504 LoRa 868 MHz

  • Frequenzbereich: 860–870 MHz
  • Gewinn: 8 dBi
  • Rundstrahlantenne
  • Outdoor
  • N-Anschluss

Antennenkabel:
TRENDnet TEW-L202, H/W V2.1R

  • Länge: 2 Meter
  • zwischen SenseCAP Solar Node P1 und Delock 12504

Ich habe bewusst eine relativ grosse 8-dBi-Antenne montiert, weil ich zunächst davon ausgegangen bin, dass mein Problem möglicherweise einfach zu wenig Antennengewinn bzw. zu geringe Sende-/Empfangsreichweite ist.

Da ich inzwischen aber sehr viel Traffic aus teilweise grossen Entfernungen empfangen kann, bin ich mir nicht mehr sicher, ob die Antenne bzw. Reichweite überhaupt das Problem ist.

Standort

Der Repeater befindet sich auf einem Dach und soll primär lokal bzw. regional weiterleiten. Er ist nicht als exponierter Berg-/Backbone-Repeater gedacht.

Standort:

Breitengrad: 47.112600
Längengrad: 7.836700
Höhe: 646 m ü. M.

Deshalb habe ich bewusst:

txdelay = 0.5

und nicht beispielsweise 2.0 für einen Berg-/Backbone-Repeater gewählt.

Software / Firmware

Auf dem SenseCAP Solar Node P1 läuft:

MeshCore Repeater v1.17.1

Zusätzlich habe ich den für den P1 angepassten Bootloader mit OTA-Fix von MeshCore installiert.

Radioeinstellungen

Die Radioeinstellungen sind:

869.618 MHz
BW 62.5 kHz
SF 8
CR 8

Gesetzt wurde:

set radio 869.618,62.5,8,8

TX-Leistung:

set tx 20

also:

20 dBm TX Power

Duty Cycle:

set dutycycle 10

also:

10 % Duty Cycle

Repeater-Funktion:

set repeat on

Delay-Einstellungen

Da es sich um einen lokalen/regionalen Dachrepeater handelt:

set txdelay 0.5

Zusätzlich:

set direct.txdelay 0.2

set rxdelay 0

Damit sind aktuell:

txdelay: 0.5
direct.txdelay: 0.2
rxdelay: 0

Path Hash

Da wir im Schweizer Mesh mit 2 Byte arbeiten:

set path.hash.mode 1

Also ausdrücklich:

path.hash.mode = 1 = 2 Byte

Auch beim Companion bzw. in den Apps ist 2 Byte aktiviert.

Loop Detection

Gesetzt wurde:

set loop.detect moderate

Also:

loop.detect = moderate

Flood-Einstellungen

Aktuell habe ich folgende Werte:

set flood.max 14

set flood.max.unscoped 3

set flood.max.advert 8

set flood.advert.interval 49

Damit:

flood.max: 14
flood.max.unscoped: 3
flood.max.advert: 8
flood.advert.interval: 49

Wichtig:

Ich blockiere flood * nicht vollständig.

Meine Idee war, unscoped Flood nicht grundsätzlich abzuschneiden, sondern über:

flood.max.unscoped = 3

zu begrenzen.

Regionskonfiguration

Ursprünglich hatte ich:

*
→ europe
→ ch
→ ch-de
Die gewünschte aktuelle Struktur ist deshalb:

*
→ europe
→ ch
→ ch-de

Dazu wurden unter anderem folgende Befehle verwendet:

region put europe *

region put ch europe

region put ch-de ch

Flood wurde für die verbleibenden Regionen freigegeben:

region allowf *

region allowf europe

region allowf ch

region allowf ch-de

Home und Default Region

Der Repeater soll zur Schweiz gehören.

Deshalb:

region home ch

und:

region default ch

Somit habe ich:

Home Region: ch

Default Region: ch

Anschliessend wurde die Regionskonfiguration gespeichert:

region save

Zusammenfassung der relevanten Einstellungen

Die von mir verwendete Konfiguration sieht damit zusammengefasst folgendermassen aus:

set radio 869.618,62.5,8,8

set tx 20

set dutycycle 10

set repeat on

set txdelay 0.5

set direct.txdelay 0.2

set rxdelay 0

set path.hash.mode 1

set loop.detect moderate

set flood.max 14

set flood.max.unscoped 3

set flood.max.advert 8

set flood.advert.interval 49

Regions:

region put europe *

region put ch europe

region put ch-de ch

region allowf *

region allowf europe

region allowf ch

region allowf ch-de

region home ch

region default ch

region save

Die Regionsstruktur sollte somit sein:

* → europe → ch → ch-de

Home und Default sind beide:

ch

Companion

Als Companion verwende ich einen:

Seeed Studio SenseCAP Card Tracker T1000-E

Getestet habe ich sowohl mit iPhone als auch Android.

Verwendet werden dabei MeshCore/KiekR bzw. entsprechende MeshCore-Apps.

In den Apps ist:

Region = CH

und:

Path Hash = 2 Byte

eingestellt.

Auch die Channels haben nach meinem Verständnis den korrekten Region Scope.

Ein wichtiges Beispiel ist:

#chtest

Dort ist die Region:

ch

gesetzt.

Ich habe auch Channels mit europe getestet.

Was funktioniert?

Der Empfang funktioniert erstaunlich gut.

Ich empfange Nachrichten aus verschiedenen Teilen der Schweiz und teilweise sogar aus Deutschland.

Ich weiss beispielsweise, dass Nachrichten unter anderem über folgende Repeater bei mir ankommen:

MS Repeater 1

Felix / 18 Esel

HB9CL Repeater

RX-seitig scheint die Kombination aus P1, Kabel und Delock-Antenne daher ziemlich gut zu funktionieren.

Und genau deshalb verstehe ich mein TX-Problem nicht.

Das eigentliche Problem

Wenn ich selbst eine Nachricht schreibe, beispielsweise im:

#chtest

mit Region:

ch

zeigt die App zunächst an, dass die Nachricht versendet wurde.

Bei der Nachricht sehe ich:

zwei Haken und dahinter eine 1.

Trotzdem scheint niemand meine Nachricht tatsächlich lesen zu können.

Das Problem tritt auf, obwohl:

  • der Channel auf Region ch steht
  • der Companion auf CH steht
  • 2-Byte Path Hash aktiviert ist
  • der Repeater Home Region ch hat
  • der Repeater Default Region ch hat
  • ch für Flood erlaubt ist
  • * nicht vollständig blockiert wird
  • flood.max.unscoped lediglich auf 3 begrenzt ist
  • die Schweizer Radioeinstellungen verwendet werden
  • der Repeater sehr viel Traffic von weit entfernten Stationen empfängt

Das Ganze wirkt deshalb auf mich sehr asymmetrisch:

RX funktioniert sehr gut.

Meine eigenen TX-Nachrichten scheinen dagegen nicht richtig ins Mesh zu gelangen bzw. nicht bei anderen Nutzern anzukommen.

Was bedeuten zwei Haken + 1 genau?

Das wäre eine meiner wichtigsten Fragen.

Wenn ich nach dem Senden:

✓✓ 1

sehe:

Was bedeutet das technisch genau?

Bedeutet die 1, dass mindestens ein anderer MeshCore-Node bzw. Repeater meine Funkübertragung tatsächlich empfangen bzw. bestätigt hat?

Oder kann dieser Status auch entstehen, ohne dass bewiesen ist, dass ein anderer Repeater mein RF-Paket erfolgreich empfangen hat?

Das wäre für die Fehlersuche sehr wichtig.

Könnte die TX-/PA-Stufe des P1 defekt sein?

Ich frage mich inzwischen, ob möglicherweise die Sendestufe / PA des SenseCAP Solar Node P1 defekt oder stark beeinträchtigt sein könnte.

Ist es technisch möglich, dass der SX1262 bzw. der P1 über die externe Antenne ausgezeichnet empfängt, während beim Senden nur eine sehr geringe oder gar keine brauchbare HF-Leistung an der Antenne ankommt?

Das würde zumindest erklären, warum ich sehr weit entfernte Stationen empfangen kann, aber meine eigenen Nachrichten niemand sieht.

Andererseits:

Wenn die zwei Haken + 1 tatsächlich bedeuten, dass mindestens ein anderer Node/Repeater meine Nachricht über Funk bestätigt hat, wäre eine komplett defekte Sendestufe vermutlich eher unwahrscheinlich.

Deshalb würde mich sehr interessieren, was diese Anzeige tatsächlich aussagt.

Antenne und Kabel

Nochmals zur HF-Seite:

P1
→ TRENDnet TEW-L202 H/W V2.1R
→ 2 m Kabel
→ Delock 12504
→ 8 dBi

TX ist bewusst auf:

20 dBm

eingestellt.

Ich bin also nicht auf die maximale mögliche Ausgangsleistung des P1 gegangen.

Die grössere Antenne habe ich ursprünglich installiert, weil ich dachte, dass mein Problem möglicherweise zu wenig Antennenleistung bzw. Reichweite ist.

Inzwischen frage ich mich allerdings, ob ich damit lediglich den Empfang verbessert habe, während möglicherweise auf der TX-Seite ein anderes Problem besteht.

Bevor ich einen zweiten P1 kaufe

Ich überlege mir inzwischen, einen zweiten SenseCAP Solar Node P1 zu kaufen bzw. den vorhandenen zu ersetzen, um einen Hardwaredefekt der TX-Stufe auszuschliessen.

Bevor ich aber unnötig Geld ausgebe, würde ich gerne sämtliche Konfigurations- und Routingmöglichkeiten ausschliessen.

Deshalb meine Fragen an euch:

  1. Seht ihr in meiner oben aufgeführten Konfiguration einen offensichtlichen Fehler?
  2. Ist flood.max = 14 für einen lokalen/regionalen Dachrepeater sinnvoll?
  3. Kann flood.max.unscoped = 3 meine Nachrichten beeinflussen, obwohl beispielsweise #chtest ausdrücklich auf Region ch gesetzt ist?
  4. Ist die Hierarchie

* → europe → ch → ch-de

so korrekt?

  1. Ist es sinnvoll, sowohl

region home ch

als auch

region default ch

zu verwenden?

  1. Ist path.hash.mode = 1, also 2 Byte, für das aktuelle Schweizer Mesh korrekt?
  2. Was bedeutet zwei Haken + 1 nach dem Senden technisch genau?
  3. Gibt es unter MeshCore Repeater v1.17.1 eine CLI-Möglichkeit oder einen Debug-/Logging-Modus, mit dem ich sehen kann, ob der P1 tatsächlich mit den eingestellten 20 dBm sendet?
  4. Kann ich feststellen, welcher Repeater meine Nachricht tatsächlich empfangen bzw. weitergeleitet hat?
  5. Gibt es eine Möglichkeit, TX- und RX-Pakete direkt am Repeater zu beobachten?
  6. Würdet ihr für einen Test flood.max, flood.max.unscoped oder andere Einstellungen vorübergehend wieder auf Default setzen?
  7. Gibt es eine bekannte Problematik mit dem SenseCAP Solar Node P1 + MeshCore Repeater v1.17.1 + OTA-Fix-Bootloader bezüglich TX?
  8. Könnte das Antennenkabel bzw. ein Anschlussproblem ein Verhalten verursachen, bei dem RX noch hervorragend funktioniert, TX aber stark beeinträchtigt ist?
  9. Oder würdet ihr an diesem Punkt tatsächlich einen zweiten P1 zum Vergleich verwenden, um einen Defekt der TX-/PA-Stufe auszuschliessen?

Was ich gerne gezielt testen würde

Am hilfreichsten wäre für mich ein kontrollierter Test:

T1000-E → mein P1 → bekannter entfernter Repeater/Benutzer

Dabei würde ich gerne für jeden Schritt feststellen können:

1. T1000-E hat gesendet

2. Mein P1 hat das Paket empfangen

3. Mein P1 hat das Paket tatsächlich erneut ausgesendet

4. Ein anderer Repeater hat dieses Paket empfangen

5. Die Nachricht wurde weiter durchs Mesh transportiert

Und umgekehrt:

entfernter Benutzer/Repeater → mein P1 → T1000-E

Diese Richtung scheint bereits sehr gut zu funktionieren.

Wenn es eine Möglichkeit gibt, anhand von Logs, Packet Paths oder CLI-Ausgaben eindeutig festzustellen:

T1000-E → P1 RX → P1 TX → Remote Repeater RX

könnte man vermutlich sehr schnell unterscheiden, ob wir hier ein:

  • Companion-TX-Problem
  • P1-RX-Problem
  • P1-TX-/PA-Problem
  • Repeater-Konfigurationsproblem
  • Region-/Scope-Problem
  • Flood-/Routingproblem
  • oder ein Problem bei den nachfolgenden Repeatern

haben.

Ich möchte das gerne systematisch diagnostizieren, bevor ich einfach den P1 ersetze und danach möglicherweise feststelle, dass ein neuer P1 exakt dasselbe Verhalten zeigt.

Hat jemand eine Idee oder vielleicht sogar einen ähnlichen Fall gehabt?

Insbesondere Erfahrungen von Leuten, die einen SenseCAP Solar Node P1 als MeshCore-Repeater im Schweizer Netzbetreiben, wären sehr hilfreich.

Danke für die Hilfe

Gruss
Alisha

Hoi Alisha

Sieht Dein Repeater auch Nachbarn ?

Lg

Lars

Hallo Lars,

Da ich ihn heute gestartet habe noch keine. In der Regel sieht er nach ca. 50 Stunden 3-5 Nachbaren.

Gruss

 Alisha

Die Codingrate 5 ist falsch. Es wäre die Codingrate 8. Unbedingt auf EU/UK narrow stellen! Weitere Infos zu den Einstellungen findest Du hier: SETTINGS | MeshCore Switzerland

1 Like

Gilt im übrigen auch für Deinen zweiten Repeater :wink:

1 Like

Hallo Mammut_AG,

Ich habe ihn zurück gesetzt, darum ein neuer Name um sicher zu sein dass nichts übernommen wird. Es gibt nur einen Repeater und nicht zwei.

Wenn ich get radio eingebe auf dem CLI via Companion kommt folgendes zurück: 869.6179809,62.5,8,8

Von daher muss es stimmen, ausser die Webseite der MeshCore Map hat ein Problem, oder aber die Meshcore Software für Repeater für den SeeedCap Solaro P1 hat ein Bug das was eingestellt ist nicht dem entspricht was ausgesendet wird.

Ich hatte es gestern so gesetzt: set radio 869.618,62.5,8,8

Danach habe ich den Repeater neu gestartet.

Ich habe es nun nochmals gesetzt, und den Repeater neu gestartet und wieder kommt danach bei der CLI Abfrage 869.6179809,62.5,8,8 zurück.

Gruss

Alisha

Ich weiss es nicht auswendig, wie das mit der CLI zu programmieren ist. Das ist aber auch absolut unnötig. Mit der Meshcore App unter Kontakte, Dein Repeater anwählen, Passwort eingeben und dort alles einstellen und speichern. Danach neu starten und das Problem sollte weg sein. Einfacher kann es fast nicht sein. Das CLI würde ich nur nehmen, für Einstellungen, welche nicht unter dem Kontakt eingestellt werden können. Alternativ kannst Du den Repeater mit dem Computer verbinden (Windows), neu flashen und gleich danach auf Configuration klicken. Dann kannst Du alles am Computer eintragen.

Hallo Mammut_AG,

Okay ich habe es nun nochmals über die Offizielle Meshcore App gemacht dort “EU/UK narrow” ausgewählt, gespeichert mit dem Hacken und neu gestartet.

Gruss

Alisha

1 Like

Bis jetzt ist es auf der Map noch nicht ersichtlich. Das sollte ein Advert lösen. Danach würde ich es mal ausprobieren und sehen, ob es nun geht.

Einen Advent habe ich vor 14 Minuten gesendet ohne Erfolg es es steht last Updated immer noch vor 6 Stunden. Ich gehe nun mal schlafen und schaue morgen nochmals. Danke für deine Hilfe mal schauen was morgen ist.

1 Like

Guten morgen alle zusammen,

Kurzes Update, auf der Meshcore Map Seite steht immer noch der Falsche Eintrag, auch nachdem ich einen Advert gesendet habe. Der zweite Repeater ist in der Zwischenzeit gelöscht auf der Map so dass nur noch einer angezeigt wird.

Sollte bis morgen Abend immer noch der falsche Wert stehen auf der Meshcore Map Seite werde ich je nach dem wie es das Wetter zulässt am Mittwochabend nochmals auf das Dach steigen. Den SenseCAP Solar Node P1 nochmals Platt machen mit Flash Erase, Meshcore V1.17.1 nochmals installieren und neu Konfigurieren direkt mit Switzerland … setzen.

Ausser jemand von euch hat sonnst noch eine Idee die ich machen kann zuvor.

Gruss

Alisha

Hallo aus Ostwestfalen in Deutschland,

bin eher ein MC Normal-User ohne tiefgreifendes technisches Hintergrundwissen. Wenn ich es richtig verstehe, nutzt du 2 Meter Antennenkabel. Es ist immer wieder zu lesen, dass dieses Kabel zwischen Node und Antenne so kurz wie möglich gehalten werden soll ZITAT: “Ein zu langer Weg verringert die Sendeleistung an der Antenne massiv; zudem verschlechtert sich das Signal-Rausch-Verhältnis beim Empfang (RX).”

Ob es die Ursache für dein Problem ist, vermag ich nicht zu sagen. Es ist nur so ein spontaner Gedanke beim Lesen deines Beitrags gewesen.

Liebe Grüße

Peter

1 Like

@Mammut_AG Wie ich nun erfreulicher Weise gesehen habe, wurde die Parameter auf der Meshcore Map upgedated.

Das Problem ist leider noch immer vorhanden, ich bin mir nun mal am überlegen ob ich zuerst einen andere Antenne montieren soll 3dBi oder 5dBi die einen anderen Öffnungswinkel hat als die 8dBi Antenne.

@DT-OWL Da ich ein gutes Kabel Verwende müsste das kein Problem sein, da es ein hochwertiges ist das Verlust/Dämpfungsarm ist.

Gruss

Alisha

1 Like

Gut, dann hat das geklappt. Bei den Antennen bin ich überfragt. Da fehlt mir bis jetzt die Erfahrung. An allen meinen Thinknode M6 Repeatern ist die originale 3dBi Antenne dran, ausser bei meiner zuhause. Dort habe ich eine grosse Thundermässige 3dBi Antenne dran, wie im Bild ersichtlich. Mit dieser habe ich besseren Empfang, als mit der originalen. Gekauft bei Amazon.

@Mammut_AG Ich habe mir nun eine Sirio GP 868 C Antenne bestellt.

Anbei ein älteres Video zu dieser Antenne: https://www.youtube.com/watch?v=pZrMvQqkgTA

Könnte es sein dass Du an einem ungünstigen Standort bis?

Wenn ich sporadisch in Wollishofen arbeite - ohne Repeater auf dem Dach - dann kommt zwar häufig etwas rein, aber raus geht nichts.

In meiner Alphütte in der Surselva war es bis vor kurzem ähnlich. Durch den repeater_heinzenberg und LoveRepeater bei Tamins gehen nun auch Nachrichten raus.

Herzliche Grüsse, Pascal