Dieses Dokument bietet einen Überblick über die CLI-Befehle, die an MeshCore Repeater, Raumserver und Sensoren gesendet werden können.
Starten Sie den Knoten neu
Verwendung:
reboot
Uhrzeit zurücksetzen und neu starten
Verwendung:
clkreboot
Synchronisieren Sie die Uhr mit dem Remote-Gerät.
Verwendung:
clock sync
Aktuelle Zeit in UTC anzeigen
Verwendung:
clock
Stelle die Zeit auf einen bestimmten Zeitstempel ein.
Verwendung:
time <epoch_seconds>Parameter:
epoc_seconds : Unix-Epochenzeit
Senden Sie eine flood advert
Verwendung:
advert
Senden Sie eine zero-hop advert
Verwendung:
advert.zerohop
Starten Sie ein Firmware-Update über Funk (OTA).
Verwendung:
start ota
Löschen/Auf Werkseinstellungen zurücksetzen
Verwendung:
eraseNur seriell: Ja
Warnung: Dies ist zerstörerisch!
Listen Sie Nachbarn in der Nähe auf
Verwendung:
neighborsHinweis: Die Ausgabe dieses Befehls ist auf die 8 neuesten Anzeigen beschränkt.
Hinweis: Jede Zeile ist wie folgt kodiert: {pubkey-prefix}:{timestamp}:{snr*4}
Entfernen Sie einen Nachbarn
Verwendung:
pubkey_prefix: Der öffentliche Schlüssel des Knotens, der aus der Nachbarnliste entfernt werden soll. Dies kann ein kurzes Präfix oder der vollständige Schlüssel sein. Alle Nachbarn, die mit dem angegebenen Präfix übereinstimmen, werden entfernt.
Hinweis: Du kannst alle Nachbarn entfernen, indem du ein Leerzeichen als Präfix sendest. Das Leerzeichen steht für ein leeres Präfix, das mit allen vorhandenen Nachbarn übereinstimmt.
Statistiken löschen
Verwendung:
clear stats
Systemstatistiken – Akku, Betriebszeit, Warteschlangenlänge und Debug-Flags
Verwendung:
stats-coreNur seriell: Ja
Funkstatistik – Rauschpegel, Letzter RSSI/SNR-Wert, Sendezeit, Empfangsfehler
Verwendung:
stats-radioNur seriell: Ja
Paketstatistik – Paketzähler: Empfangen, Gesendet
Verwendung:
stats-packetsNur seriell: Ja
Beginne die Erfassung des RX-Protokolls im Knotenspeicher
Verwendung:
log start
Ende der Erfassung des RX-Logs im Knotenspeicher
Verwendung:
log stop
Erfasstes Protokoll löschen
Verwendung:
log erase
Geben Sie das erfasste Protokoll im seriellen Terminal aus.
Verwendung:
logNur seriell: Ja
Holen Sie sich die Version
Verwendung:
ver
Zeigt den Hardwarenamen an
Verwendung:
board
Funkparameter dieses Knotens anzeigen oder ändern
Verwendung:
get radioset radio <freq>,<bw>,<sf>,<cr>Parameter:
freq : Frequenz in MHzbw : Bandbreite in kHzsf : Spreizfaktor (5-12)cr : Kodierungsrate (5-8)
Wird durch Build-Flag gesetzt: LORA_FREQ, LORA_BW, LORA_SF, LORA_CR
Standard: 869.525,250,11,5
Hinweis: Ein Neustart ist erforderlich, um die Anwendung zu ermöglichen.
Sendeleistung dieses Knotens anzeigen oder ändern
Verwendung:
get txset tx <dbm>Parameter:
dbm : Leistungspegel in dBm (1-22)
Wird durch Build-Flag gesetzt: LORA_TX_POWER
Standard: Variiert je nach Board
Hinweis: Diese Einstellung steuert lediglich die Sendeleistung des LoRa-Chips. Einige Knoten verfügen über eine zusätzliche Leistungsverstärkerstufe, die die Gesamtausgangsleistung erhöht. Die korrekte Einstellung finden Sie im Handbuch des jeweiligen Knotens. Ein zu hoher Wert kann gegen geltendes Recht in Ihrem Land verstoßen.
Ändern Sie die Funkparameter für eine festgelegte Dauer
Verwendung:
tempradio <freq>,<bw>,<sf>,<cr>,<timeout_mins>Parameter:
freq : Frequenz in MHzbw : Bandbreite in kHzsf : Spreizfaktor (5-12)cr : Kodierungsrate (5-8)timeout_mins : Dauer in Minuten (muss > 0 sein)Hinweis: Diese Einstellung wird nicht gespeichert und geht beim Neustart verloren.
Frequenz dieses Knotens anzeigen oder ändern
Verwendung:
get freqset freq <frequency>Parameter:
Standard: 869.525
Hinweis: Ein Neustart ist erforderlich, um die Anwendung zu ermöglichen.
Diesen Knotennamen anzeigen oder ändern
Verwendung:
get nameset name <name>Parameter:
name : Knotenname
Wird durch Build-Flag gesetzt: ADVERT_NAME
Standard: Variiert je nach Board
Hinweis: Die maximale Länge variiert. Bei Angabe eines Speicherorts beträgt die maximale Länge 24 Byte, andernfalls 32 Byte. Emoji- und Unicode-Zeichen können mehr als ein Byte belegen.
Breitengrad dieses Knotens anzeigen oder ändern
Verwendung:
get latset lat <degrees>Parameter:
degrees : Breitengrad in Grad
Wird durch Build-Flag gesetzt: ADVERT_LAT
Standard: 0
Längengrad dieses Knotens anzeigen oder ändern
Verwendung:
get lonset lon <degrees>Parameter:
degrees : Längengrad in Grad
Wird durch Build-Flag gesetzt: ADVERT_LON
Standard: 0
Die Identität dieses Knotens (Privater Schlüssel) anzeigen oder ändern
Verwendung:
get prv.keyset prv.key <private_key>Parameter:
private_key : Privater Schlüssel im Hexadezimalformat (64 Hexadezimalzeichen)Serial Only:
get prv.key : Jaset prv.key : NeinHinweis: Ein Neustart ist erforderlich, damit die Einstellung wirksam wird.
Ändern Sie das Administratorpasswort dieses Knotens.
Verwendung:
password <password>Parameter:
password : AdministratorpasswortWird durch Build-Flag gesetzt: ADMIN_PASSWORD
Standard: password
Hinweis: Zur Bestätigung zurückgesendet.
Hinweis: Jeder Knoten, der dieses Passwort verwendet, wird der Admin-ACL-Liste hinzugefügt.
Gastpasswort für diesen Knoten anzeigen oder ändern.
Verwendung:
get guest.passwordset guest.password <password>Parameter:
password : GastpasswortWird durch Build-Flag gesetzt: ROOM_PASSWORD (Nur für den Raumserver)
Standard: <blank> also leer
Eigentümerinformationen dieses Knotens anzeigen oder ändern
Verwendung:
get owner.infoset owner.info <text>Parameter:
text : Eigentümerinformationstext
Standard: <blank> also leer
Hinweis: | Zeichen werden in Zeilenumbrüche umgewandelt.
Hinweis: Erfordert Firmware 1.12 oder höher.
Feinabstimmung der Batterieanzeige
Verwendung:
get adc.multiplierset adc.multiplier <value>Parameter:
value : ADC-Multiplikator (0,0-10,0)
Standard: 0.0 (vom Board festgelegter Wert)
Hinweis: Gibt die Fehlermeldung „Fehler: Von diesem Board nicht unterstützt“ zurück, wenn die Hardware dies nicht unterstützt.
Energiesparstatus dieses Knotens anzeigen oder ändern (nur Repeater)
Verwendung:
powersavingpowersaving onpowersaving offParameter:
state : on | off
Standard: on
Hinweis: Wenn diese Option aktiviert ist, wechselt das Gerät zwischen den Funkübertragungen in den Schlafmodus.
Wiederholungsflag dieses Knotens anzeigen oder ändern.
Verwendung:
get repeatset repeat <state>Parameter:
state : on | off
Standard: on
Hash-Größe des Anzeigenpfads dieses Knotens anzeigen oder ändern
Verwendung:
get path.hash.modeset path.hash.mode <value>Parameter:
value: Größe des Pfad-Hashes (0–2) 0: Hash-Größe von 1 Byte (256 eindeutige IDs) [maximal 64 Floods]1: 2-Byte-Hash-Größe (65.536 eindeutige IDs) [maximal 32 Floods]2: Hash-Größe von 3 Byte (16.777.216 eindeutige IDs) [maximal 21 Floods]3: NICHT VERWENDEN (Reserviert)Standard: 0
Hinweis: Die Einstellung „path.hash.mode“ legt die Größe der Low-Level-ID-/Hash-Kodierung fest, die verwendet wird, wenn der Repeater ein Signal sendet. Diese Einstellung hat keinen Einfluss darauf, welche Paket-ID-/Hash-Größe dieser Repeater weiterleitet; ab Firmware-Version 1.14 sollten alle Größen weitergeleitet werden. Diese Funktion wurde in der Firmware-Version 1.14 hinzugefügt.
Vorläufiger Hinweis: Bei Anzeigen mit ID-/Hash-Größen von 2 oder 3 Byte kann die Ausbreitung von Floods in Ihrem Netzwerk eingeschränkt sein, da diese Funktion erst seit der Firmware-Version 1.13.0 verfügbar ist und ältere Versionen Pakete mit mehr als einem Byte langen Pfad-IDs/Hashes verwerfen, da nur 1-Byte-Hashes unterstützt werden. Bitte stellen Sie sicher, dass der Großteil Ihrer Geräte mit einer Firmware-Version von mindestens 1.14 ausgestattet ist, bevor Sie größere ID-/Hash-Größen implementieren, um eine effektive Netzwerk-Flooding-Funktion zu gewährleisten.
Schleifenerkennung dieses Knotens anzeigen oder ändern
Verwendung:
get loop.detectset loop.detect <state>Parameter:
state:off: Es wird keine Schleifenerkennung durchgeführtminimal: Pakete werden verworfen, wenn die ID/der Hash des Repeaters viermal oder öfter (1 Byte), zweimal oder öfter (2 Byte) bzw. einmal oder öfter (3 Byte) vorkommtmoderate: Pakete werden verworfen, wenn die ID/der Hash des Repeaters zwei- oder öfter (1 Byte), ein- oder öfter (2 Byte) bzw. ein- oder öfter (3 Byte) vorkommtstrict: Pakete werden verworfen, wenn die ID/der Hash des Repeaters ein- oder mehrmals (1 Byte), ein- oder mehrmals (2 Byte) bzw. ein- oder mehrmals (3 Byte) vorkommt
Standard: off
Hinweis: Wenn diese Funktion aktiviert ist, weisen Repeater nun Flood-Pakete zurück, die den Anschein erwecken, als befänden sie sich in einer Schleife. Dies ist in letzter Zeit in einigen Mesh-Netzwerken aufgetreten, wenn nur eine einzige „fehlerhafte“ Repeater-Firmware im Umlauf war (wahrscheinlich eine abgezweigte oder benutzerdefinierte Firmware). Wenn die Nutzdaten manipuliert und dann weitergeleitet werden, verursacht dasselbe Paket einen Paketsturm, der bis zu maximal 64 Hops wiederholt wird. Diese Funktion wurde in Firmware 1.14 hinzugefügt.
Beispiel: Wenn die Einstellung „loop.detect“ auf „minimal“ gesetzt ist und ein Paket mit einer Pfadgröße von 1 Byte empfangen wird, prüft der Repeater, ob seine eigene ID/sein eigener Hash bereits im Pfad enthalten ist. Ist dieser bereits viermal kodiert, lehnt er das Paket ab. Verwendet das Paket eine Pfadgröße von 2 Byte und ist die eigene ID/der eigene Hash des Repeaters bereits zweimal kodiert, lehnt er es ab. Wenn das Paket eine Pfadgröße von 3 Byte verwendet und die eigene ID/der eigene Hash des Repeaters bereits einmal codiert wurde, lehnt er es ab.
Den Wiederholungsverzögerungsfaktor anzeigen oder ändern für flood Datenverkehr
Verwendung:
get txdelayset txdelay <value>Parameter:
value : Übertragungsverzögerungsfaktor (0-2)
Standard: 0.5
Anzeigen oder Ändern des Wiederholungsverzögerungsfaktors für direkten Datenverkehr
Verwendung:
get direct.txdelayset direct.txdelay <value>Parameter:
value : Direkte Übertragungsverzögerungsfaktor (0-2)
Standard: 0.2
[Experimentell] Anzeigen oder Ändern der Verarbeitungsverzögerung für empfangenen Datenverkehr
Verwendung:
get rxdelayset rxdelay <value>Parameter:
value : Empfangsverzögerungsbasis (0-20)
Standard: 0.0
Anzeigen oder Ändern des Sendezeitfaktor (Arbeitszyklusgrenze)
Verwendung:
get afset af <value>Parameter:
value : Sendezeitfaktor (0-9)
Standard: 1.0 (WICHTIG: Für Deutschland bitte Air‐Time und Duty Cycle schauen.)
Lokale Interferenzschwelle anzeigen oder ändern
Verwendung:
get int.threshset int.thresh <value>Parameter:
value : Interferenzschwellenwert
Standard: 0.0
AGC-Rücksetzintervall anzeigen oder ändern
Verwendung:
get agc.reset.intervalset agc.reset.interval <value>Parameter:
value : Intervall in Sekunden, abgerundet auf ein Vielfaches von 4 (17 wird zu 16)
Standard: 0.0
Multi-Acks-Unterstützung aktivieren oder deaktivieren
Verwendung:
get multi.acksset multi.acks <state>Parameter:
state : 0 (deaktivieren) oder 1 (aktivieren)
Standard: 0
flood advert intervall anzeigen oder ändern
Verwendung:
get flood.advert.intervalset flood.advert.interval <hours>Parameter:
hours : Intervall in Stunden (3–168)
Standard: 12 (Repeater) - 0 (Sensor)
zero-hop advert intervall anzeigen oder ändern
Verwendung:
get advert.intervalset advert.interval <minutes>Parameter:
minutes : Intervall in Minuten, abgerundet auf das nächste Vielfache von 2 (61 wird zu 60) (60–240)
Standard: 0
Begrenzen Sie die Anzahl der Hops für eine Flood-Nachricht.
Verwendung:
get flood.maxset flood.max <value>Parameter:
value : Maximale Flood-Hop-Anzahl (0-64)
Standard: 64
Berechtigungen für einen companion hinzufügen, aktualisieren oder entfernen
Verwendung:
setperm <pubkey> <permissions>Parameter:
pubkey : Companion öffentlicher Schlüsselpermissions :
Hinweis: Entfernt den Eintrag, wenn die permissions weggelassen werden.
Aktuelle ACL anzeigen
Verwendung:
get aclNur seriell: Ja
Die „Nur-Lesen“-Kennzeichnung dieses Raumservers anzeigen oder ändern
Verwendung:
get allow.read.onlyset allow.read.only <state>Parameter:
state : on (aktivieren) oder off (deaktivieren)
Standard: off
Regionslisten in großen Mengen laden
Verwendung:
region loadregion load <name> [flood_flag]Parameter:
name : Der Name einer Region. * stellt die Wildcard-Region dar
Hinweis: flood_flag : Optionales F, um flooding zuzulassen.
Hinweis: Einrückungen schaffen Eltern-Kind-Beziehungen (max. 8 Ebenen).
Hinweis: region load mit einem leeren Namen funktioniert nicht aus der Ferne (es ist interaktiv)
Speichern Sie alle seit dem Neustart vorgenommenen Änderungen an Regionen.
Verwendung:
region save
Allow a region
Verwendung:
region allowf <name>Parameter:
name : Der Name einer Region (oder * für Wildcard)
Hinweis: Hinweis: Die Einstellung mit dem Wildcard * lässt Pakete ohne Regions-Transportcodes zu.
Eine Region blockieren
Verwendung:
region denyf <name>Parameter:
name : Der Name einer Region (oder * für Wildcard)Hinweis: Die Einstellung auf Wildcard * verwirft Pakete ohne Regions-Transportcodes.
Informationen für eine Region anzeigen
Verwendung:
region get <name>Parameter:
name : Der Name einer Region (oder * für Wildcard)
Die Heimatregion für diesen Knoten anzeigen oder ändern
Verwendung:
region homeregion home <name>Parameter:
name : Der Name einer Region.
Neue Region erstellen
Verwendung:
region put <name> [parent_name]Parameter:
name : Der Name einer Region.parent_name : Name der übergeordneten Region (optional, Standardwert ist Platzhalter)
Region entfernen
Verwendung:
region remove <name>Parameter:
name : Der Name einer Region (oder * für Wildcard)Hinweis: Alle untergeordneten Regionen müssen entfernt werden, bevor die Region entfernt werden kann.
Alle Regionen anzeigen
Verwendung:
region list <filter>Nur seriell: Ja
Parameter:
filter : allowed | deniedHinweis: Erfordert Firmware 1.12.+
Alle definierten Regionen und flood Berechtigungen löschen
Verwendung:
regionNur seriell: Für Firmware älter als 1.12.0
Beispiel 1: Verwendung des F-Flags mit benannter öffentlicher Region
region load #Europe F <blank line to end region load> region save
Erklärung:
#Europe mit aktiviertem flooding.
Beispiel 2: Verwendung von Wildcard mit dem F-Flag
region load * F <blank line to end region load> region save
Erklärung:
Beispiel 3: Verwendung von Wildcard ohne F-Flag
region load * <blank line to end region load> region save
Erklärung:
View or change GPS state
Verwendung:
gpsgps <state>Parameter:
state : on | off
Standard: off
Hinweis: Ausgabeformat: {status}, {fix}, {sat count} (wenn aktiviert)
Synchronisieren Sie die Uhr dieses Knotens mit der GPS-Zeit.
Verwendung:
gps sync
Legen Sie den Standort dieses Knotens anhand der GPS-Koordinaten fest.
Verwendung:
gps setloc
GPS advert policy anzeigen oder ändern
Verwendung:
gps advertgps advert <policy>Parameter:
policy : none | shared | prefsnone : Geben Sie den Standort nicht in adverts an.shared : GPS-Standort teilen (von SensorManager)prefs : Standort, gespeichert in den Lat- und Lon-Einstellungen des Knotens
Standard: prefs
Liste der Sensoren auf diesem Knoten anzeigen
Verwendung:
sensor list [start]Parameter:
start : Optionaler Startindex (Standardwert ist 0)
Hinweis: Ausgabeformat: <var_name>=<value>\n
Den Wert eines Sensors anzeigen oder ändern
Verwendung:
sensor get <key>sensor set <key> <value>Parameter:
key : Name der Sensoreinstellungvalue : Der Wert, auf den der Sensor eingestellt werden soll
Anzeigen oder Ändern des Flags „Bridge aktiviert“
Verwendung:
get bridge.enabledset bridge.enabled <state>Parameter:
state : on | off
Standard: off
Brückenquelle anzeigen
Verwendung:
get bridge.source
Fügen Sie eine Verzögerung für Pakete hinzu, die über diese Bridge weitergeleitet werden.
Verwendung:
get bridge.delayset bridge.delay <ms>Parameter:
ms : Verzögerung in Millisekunden (0–10000)
Standard: 500
Anzeigen oder Ändern der Quelle von Paketen, die zur externen Schnittstelle gebrückt werden
Verwendung:
get bridge.sourceset bridge.source <source>Parameter:
source : rx : Brücken haben Pakete empfangentx : Brücken übertragene Pakete
Standard: tx
Anzeigen oder Ändern der Geschwindigkeit der Brücke (nur RS-232)
Verwendung:
get bridge.baudset bridge.baud <rate>Parameter:
rate : Baudrate (9600, 19200, 38400, 57600, or 115200)
Standard: 115200
Den für die Überbrückung verwendeten Kanal anzeigen oder ändern (nur ESPNow)
Verwendung:
get bridge.channelset bridge.channel <channel>Parameter:
channel : Kanalnummer (1-14)
ESP-Now-Geheimnis festlegen
Verwendung:
get bridge.secretset bridge.secret <secret>Parameter:
secret : 16-stelliger Verschlüsselungscode
Standard: Variiert je nach Board
Holen Sie sich die Bootloader Version (nur nRF52)
Verwendung: get bootloader.version
Unterstützte Energieverwaltungsfunktionen anzeigen
Verwendung: get pwrmgt.support
Aktuelle Stromquelle anzeigen
Verwendung: get pwrmgt.source
Hinweis: Auf Boards ohne Unterstützung für die Energieverwaltung wird ein Fehler zurückgegeben.
Gründe für Neustart und Herunterfahren anzeigen
Verwendung: get pwrmgt.bootreason
Hinweis: Auf Boards ohne Unterstützung für die Energieverwaltung wird ein Fehler zurückgegeben.
Boot-Spannung anzeigen
Verwendung: get pwrmgt.bootmv
Hinweis: Auf Boards ohne Unterstützung für die Energieverwaltung wird ein Fehler zurückgegeben.