Diese vier Werte müssen auf jedem Gerät im CarinthiaMesh identisch sein. Stimmt einer nicht, bist du für alle anderen unsichtbar.
| Parameter | Wert |
|---|---|
| Frequenz | 869,618 MHz |
| Bandbreite | 62,5 kHz |
| Spreading Factor | SF8 |
| Coding Rate | 8 |
Kurzform in der CLI:
set radio 869.618,62.5,8,8
Das Preset heißt in der Community EU/UK Narrow. Es gilt nicht nur bei uns, sondern im ganzen österreichischen MeshCore-Netz – wer damit funkt, ist überall in AT anschlussfähig.
Es kursieren ältere Werte, die teilweise noch als Voreinstellung in Firmware-Builds stecken:
| Falsch | Richtig |
|---|---|
| 869,525 MHz | 869,618 MHz |
| 250 kHz | 62,5 kHz |
| SF11 | SF8 |
Mit den alten Werten funktioniert das Gerät technisch einwandfrei – es ist nur allein auf seiner Frequenz. Das Symptom sieht aus wie ein Hardwaredefekt: Gerät läuft, App verbindet, aber es kommt nie eine Nachricht an.
Bevor du irgendetwas anderes prüfst, prüfe diese vier Werte.
Weil die Frequenzwahl eine Absprache ist, keine Vorschrift.
Die Regulierung gibt ein Band frei, keine einzelne Frequenz. Im Bereich 869,4–869,65 MHz sind nach der harmonisierten EU-Entscheidung 2006/771/EG (Band 54, „Non-specific short-range devices") bis zu 500 mW e.r.p. bei 10 % Sendezeitanteil zulässig. In Österreich umgesetzt über die Frequenznutzungsverordnung, Anlage 2.
Sowohl 869,525 als auch 869,618 MHz liegen in diesem Band. Beides ist legal. Auf dem Default funkt man nur allein.
Der eigentliche Grund für die schmale Variante ist die Sendezeit. Die 10 % gelten pro Gerät und Stunde, unabhängig von der Frequenz. Ein Paket mit SF11 und 250 kHz belegt die Luft deutlich länger als dasselbe Paket mit SF8 und 62,5 kHz. Das schmale Preset kauft mehr nutzbare Nachrichten innerhalb derselben rechtlichen Grenze – und lässt mehr Nodes nebeneinander Platz finden.
Ein Kanalraster gibt es für dieses Band nicht. Das oft zitierte 25-kHz-Raster steht in benachbarten Zeilen der Entscheidung und gilt für Alarmanlagen-Bänder, nicht für dieses.
Frequenz, Bandbreite und Spreading Factor müssen auf allen Geräten gleich sein. Die Coding Rate nicht.
Sie steht im LoRa-Header jedes Pakets, der Empfänger liest sie von dort. Ein Gerät mit CR5 und eines mit CR8 verstehen einander deshalb problemlos.
| CR | Fehlerkorrektur | Sendezeit |
|---|---|---|
| 5 | weniger | kürzer |
| 8 | mehr | länger |
Auf Repeatern ist CR5 die bessere Wahl: kürzere Sendezeit pro Paket, mehr Pakete im selben Duty-Cycle-Budget (was das in Zahlen heißt). Im CarinthiaMesh laufen die Repeater mit CR5.
Für Handgeräte ist der Unterschied klein. Wer unsicher ist, bleibt beim Preset-Wert 8.
set path.hash.mode 1
Legt fest, wie lang der gekürzte Hash ist, mit dem MeshCore Wegpunkte kennzeichnet: 0 = 1 Byte, 1 = 2 Byte, 2 = 3 Byte.
Mit einem Byte kollidieren in einem wachsenden Netz irgendwann zwei Nodes auf demselben Hash. Im CarinthiaMesh: 2 Byte, auf Repeatern und Companions gleichermaßen.
set multi.acks 1
Direktnachrichten werden damit zweimal bestätigt statt einmal. Der Wert zählt die zusätzlichen ACKs – gültig sind nur 0 und 1. Details → Repeater Setup Guide
Die vier Werte oben entscheiden, ob dich jemand hört. Regionen entscheiden, wie weit deine Pakete weitergereicht werden.
Ein Region-Scope ist ein Name wie at, at-ktn oder at-ktn-vl, der an einem Paket hängt. Jeder Repeater führt eine Liste der Regionen, die er weiterflutet. Kommt ein Paket mit einem Scope herein, den er nicht freigeschaltet hat, leitet er es nicht weiter – er wirft es weg, ohne Fehlermeldung.
Das ist die einzige Bremse im Netz, die nach Gebiet trennt. Ohne sie läuft jedes Paket, das irgendwo in Österreich gesendet wird, über jeden Repeater in Österreich.
Sendezeit ist die knappste Ressource. Ein Flood-Paket beschäftigt jeden Repeater in seiner Region – bei 35 Repeatern in Kärnten sind das 35 Aussendungen für eine einzige Nachricht → Best Practises. Ein Scope, der eng genug gesetzt ist, hält lokalen Verkehr lokal, statt das halbe Bundesland damit zu beschäftigen.
Umgekehrt gilt: Ein zu enger Scope macht dich unerreichbar. Wer nur at-ktn-vl freischaltet, hört den Rest des Landes nicht mehr weiterleiten.
Auf Repeatern, Room Servern und Observern alle diese Regionen auf Flood Allowed:
region allowf *
region put at
region put at-ktn
region put at-sued
region put europe
region put at-ktn-<bezirk>
region save
Freigeschaltet gehören *, at, at-ktn, at-ktn-<bezirk>, at-sued und europe → Kein Empfang?
region put die Region gleich mit Flood Allowed an.region put <name> zusätzlich region allowf <name>. Ohne vorheriges put greift allowf ins Leere, weil die Region noch nicht existiert.<bezirk> ersetzt du durch deinen eigenen Bezirk, das Kfz-Kürzel: K, KL, VI, VL, FE, HE, SV, SP, VK oder WO. Die volle Liste steht im → Repeater Setup GuideIn der App heißt derselbe Punkt Manage Regions, die Einstellung dort ist Flood Allowed.
region savenicht vergessen. Ohne Speichern gilt die Freischaltung nur bis zum nächsten Neustart. Ein Repeater, dem nach einem Stromausfall die Regionen fehlen, läuft weiter, sendet weiter Adverts und leitet trotzdem nichts mehr weiter. Auf der Karte sieht das aus wie ein gesunder Knoten, im Netz fehlt er.
* bedeutetProblem: * sieht aus wie ein Platzhalter für „alle Regionen". Das ist es nicht.
* ist die Null-Region: Sie steht für Pakete ohne Scope. Der Entwickler schreibt selbst, sie hätte besser „Null-Region" heißen sollen (Quelle).
region allowf * Pakete ohne Scope werden weitergeleitet
region denyf * Pakete ohne Scope werden verworfen
Mit Paketen mit Scope hat * nichts zu tun. Ein Paket mit einem Scope, den der Repeater nicht freigeschaltet hat, wird immer verworfen, egal wie * steht (Regel seit Firmware v1.10.0).
Einschränkung: Repeater mit Firmware vor v1.10 filtern gar nicht. Über sie sickern Pakete mit Scope auch in andere Gebiete durch.
region denyf * ist im CarinthiaMesh derzeit nicht gewünscht. Zur Info: Als mildere Variante gibt es set flood.max.unscoped <n>, das nur Pakete ohne Scope auf n Hops begrenzt.
An der Stille – und daran, dass sie nicht zur Empfangslage passt:
Handgeräte sind davon nicht betroffen. Companions leiten ohnehin nicht weiter → Rollen. Die Regionsprüfung machen nur Repeater.
Nein. Der Name allein erzeugt keine Hierarchie. Der Bindestrich in at-ktn hat für die Firmware keine Bedeutung: at-ktn hängt nicht automatisch unter at.
Am Paket hängt nur ein Hash des exakten Namens. Ein Repeater kann nur Scopes zuordnen, deren Namen er selbst kennt. Ein Paket mit Scope at-ktn leitet ein Repeater, der nur at kennt, nicht weiter.
Eine Baumstruktur gibt es nur, wenn man sie ausdrücklich anlegt (region put <name> <parent> oder region def). Für uns ist das nicht nötig → Repeater Setup Guide
Fazit: Jeden Scope einzeln anlegen, wie im Snippet oben. Die bisherige Empfehlung bleibt richtig, die Begründung ist jetzt geklärt.
Namen müssen exakt stimmen: nur Kleinbuchstaben, Ziffern und Bindestrich.
at-ktnundat_ktnsind zwei völlig verschiedene Regionen. Quelle: CLI-Befehle, Region Management
# vor dem Namen?Manche Geräte zeigen eine Region als #at, andere als at. Das ist vermutlich dieselbe Region.
Seit Januar 2026 ist das # im Regionsnamen nicht mehr nötig. Die Entwickler schreiben, dass es für die Rückwärtskompatibilität intern vorangestellt wird. at ist also intern #at. Ob eine Anzeige das # zeigt, hängt von Firmware und App ab.
Bei uns heißt es einheitlich ohne #: at, at-ktn, at-ktn-<bezirk>. Das # gehört bei uns nur zu den Kanalnamen wie #at-ktn → Kanäle.
Nicht getestet: Ob jemand, der selbst
#ateintippt, dieselbe Region bekommt wie beiat, sagt keine Quelle ausdrücklich. Das#gehört auch nicht zu den erlaubten Zeichen (siehe oben). Wer es probiert hat, meldet es bitte in der Telegram-Gruppe.
region defaultAb Firmware v1.15.0 gibt es auf Repeatern und Room Servern region default <name>. Die Region wird als Standard-Scope gesetzt, mit region default <null> wird er gelöscht.
Damit tragen die Adverts deines Repeaters einen Scope und bleiben in deiner Region. Auf Companions heißt die Einstellung anders und gilt für die Nachrichten, die du sendest → Rollen.
Quellen (Stand 30.10.2026):
# wird intern vorangestelltregion default, Auto-Anlage, v1.15.0region default und region putDer Spreading Factor ist der Parameter, über den im Netz gerade diskutiert wird. Damit die Argumente nicht bei jeder Runde neu zusammengesucht werden müssen, hier der Stand.
Ein höherer Spreading Factor spreizt das Signal stärker. Das macht es robuster und reichweitenstärker, aber langsamer: Jede Stufe nach oben verdoppelt ungefähr die Sendezeit, jede Stufe nach unten halbiert sie.
869.618 / 62,5 kHz / SF8 sieht auf den ersten Blick wie ein Kompromiss aus, ist aber ein bewusster Tausch gegenüber dem alten Default 869.525 / 250 kHz / SF11:
Unterm Strich also ungefähr gleiche Reichweite bei einem Drittel weniger Sendezeit. Man gibt keine Verbindungsqualität her, man macht sie effizienter. Daher der Name „Narrow".
Für ein volles Paket von 126 Byte:
| Preset | pro Paket | Pakete/Stunde im 10-%-Budget |
|---|---|---|
| alter Default, SF11 / 250 kHz / CR8 | 1673 ms | 215 |
| heute: SF8 / 62,5 kHz / CR8 | 1132 ms | 318 |
| SF8 / 62,5 kHz / CR5 | 738 ms | 487 |
| SF7 / 62,5 kHz / CR8 | 648 ms | 555 |
| SF7 / 62,5 kHz / CR5 | 420 ms | 856 |
SF7 zusammen mit CR5 wäre fast das Dreifache des heutigen Budgets.
Reichweite, und diesmal ohne Ausgleich. Rund 2,5 dB weniger Empfindlichkeit pro SF-Stufe. Die Bandbreite lässt sich nicht noch einmal halbieren, ohne andere Probleme zu bekommen - der Ausgleich, der den Sprung von SF11 auf SF8 so günstig gemacht hat, steht hier nicht zur Verfügung.
Verbindungen, die heute gerade so halten, brechen bei SF7 weg. Deshalb wird getestet, bevor entschieden wird.
SF8 ist auf Reichweite optimiert, SF7 auf Kapazität. Was richtig ist, hängt von der Dichte des Netzes ab.
Solange Löcher in der Abdeckung sind - bei uns Feldkirchen und Hermagor -, hilft Reichweite. Wenn genug Repeater stehen, wird Sendezeit zum Engpass und Reichweite ist Verschwendung. Ein dichtes Netz auf SF8 ist wie eine Autobahn, auf der alle 30 fahren.
Der Spreading Factor muss übereinstimmen. Anders als die Coding Rate, die im Paket-Header mitläuft und deshalb pro Gerät frei wählbar ist.
Wer bei SF8 bleibt, während der Rest auf SF7 geht, ist schlagartig taub - und sieht genau das Fehlerbild von weiter oben: Gerät läuft, App verbindet, nie ein Paket. Ein Wechsel braucht also einen Stichtag, eine Ankündigung und alle gleichzeitig.
Und weil das Preset österreichweit gilt, entscheidet das nicht Kärnten allein.
Stand August 2026: Wir funken auf SF8. Ein Wechsel auf SF7 wird im österreichischen Netz diskutiert, es gab dazu bereits Reichweitentests. Entschieden ist nichts. Wenn es so weit ist, steht der Stichtag hier und im Kanal
#at-ktn.
Der Kanal Public ist in jeder MeshCore-App vorkonfiguriert und aktuell unser Treffpunkt.
Im österreichischen Netz sind ausserdem regelmässig aktiv: #austria, #test, #vienna, #bot.
Unser Kanal heißt #at-ktn. In der App einen Kanal anlegen und diesen Namen eintragen – den Schlüssel berechnet die App selbst.
Zur Kontrolle: a198f68a114f515766f3abbfa96f5b11
Public bleibt der überregionale Treffpunkt. Unterschiede zwischen den Kanalarten → Kanäle
Unterschiede zwischen Public, Hashtag- und privaten Kanälen → Kanäle
Kanäle sind AES-verschlüsselt, aber der Schlüssel eines öffentlichen Kanals ist öffentlich. Jeder in Funkreichweite kann mitlesen und unter beliebigem Namen senden. Behandle einen offenen Kanal wie ein offenes Funkgespräch: keine Adressen, keine Telefonnummern, keine Passwörter. Für Privates gibt es Direktnachrichten oder einen eigenen Kanal mit eigenem Schlüssel.
Start · Schnellstart · Rollen · Firmware flashen · Funkeinstellungen · Kanäle · Geräte · Repeater · Repeaterliste · Repeater Setup Guide · Observer · meshinfra · MeshBot · Karte · FAQ · Glossar · Mitmachen · Alle Themen