Warum ein eigenes Funknetz?
Wenn Strom, Mobilfunk oder Internet ausfallen, sind die meisten Geräte stumm. LoRa (Long Range) ist ein Funkverfahren, das mit sehr wenig Energie kleine Datenpakete über viele Kilometer schickt. Mit MeshCore wird daraus ein Mesh-Netz: Jeder Repeater reicht Nachrichten weiter, bis sie ankommen. Kein Provider, keine SIM-Karte, keine Cloud.
Wir wollten wissen, wie weit man damit im Saarland kommt. Also haben wir zwei eigene Clients gebaut und einen solarbetriebenen Repeater auf unser Bürodach in der Europaallee gesetzt.
Funk
868 MHz im lizenzfreien SRD-Band, Nachrichten Ende-zu-Ende verschlüsselt.
Repeater
Solarbetrieben und wetterfest auf dem Dach. Reicht alles weiter, was er hört.
Geräte
ESP32 mit OLED, GPS und Bluetooth. Gekoppelt ans Handy über die MeshCore-App.
MeshCore statt Meshtastic
Angefangen haben wir mit Meshtastic, dem bekannteren der beiden Projekte. Ein Blick auf die Abdeckung hat uns dann umgestimmt: Im Saarland ist MeshCore deutlich weiter verbreitet. Die beiden Firmwares sind nicht kompatibel, laufen aber auf derselben Hardware. Der Umstieg war also nur ein neuer Flash.
Für MeshCore spricht außerdem das Routing: Nachrichten laufen gezielt über bekannte Repeater, statt das ganze Netz zu fluten. Das hält den Kanal ruhiger und skaliert besser, wenn viele mitmachen. Dazu kommt eine klare Rollentrennung: Companions sind die Handgeräte, die du per Bluetooth mit dem Handy koppelst. Repeater stehen fest und leiten nur weiter.
Hardware-Liste
Genau diese Teile haben wir bestellt. Preise Stand Oktober 2026, sie schwanken je nach Händler.
- 1×diymore ESP32 LoRa V4 ↗ESP32-S3, 16 MB Flash, 863–928 MHz, L76-GNSS-Modul. LoRa- und GPS-Antenne liegen bei. Formfaktor wie Heltec V3/V4.36,98 €
- 1×18650-Akkupack mit Stecker ↗Einzelzelle 3,7 V / 2600 mAh mit Schutzschaltung, Kabel und Stecker fürs Board13,99 €
- 1×Gedrucktes Gehäusezwei Hälften, siehe untenFilament
- 4×Schrauben M2 × 9 mmhalten die beiden Gehäusehälften zusammen

Die mitgelieferte Antenne reicht völlig, einen zusätzlichen SMA-Adapter haben wir nicht gebraucht. Und bevor du den Akku einsteckst: Polarität am Board-Aufdruck prüfen. Rot ist Plus, und nicht jeder Stecker ist gleich belegt.
Den Repeater haben wir nicht selbst gebaut, sondern fertig gekauft. Für ein Gerät, das bei jedem Wetter auf dem Dach hängt, war uns ein wasserdichtes Komplettpaket lieber als ein Eigenbau.
- 1×KEEPTEEN D5L Mesh Solar LoRa Repeater ↗RAK19007-Baseboard mit RAK4631, 5-W-Solarpanel, Laderegler, 868-MHz-Antennen, IP67-Gehäuse119,99 €
- 2×18650-Zellennicht im Lieferumfang. Vorher voll laden und die zwei spannungsgleichsten als Paar einsetzen.ca. 10 €
Das Gehäuse
Ausgangspunkt war das Design „Meshtastic node body for 18650 battery“ von Gamalai auf Thingiverse (Public Domain). Das haben wir im CAD-Programm für unsere Clients angepasst und dann gedruckt: zweimal dasselbe Gehäuse, einmal in Orange und einmal in Grau-Grün. Die Platine sitzt ohne Kleber, Tasten bleiben bedienbar und das Display liegt frei.





Das Original findest du auf Thingiverse. Es besteht aus zwei Hälften (body_bottom.stl, body_top.stl), die mit vier M2-Schrauben zusammengehalten werden.
Client flashen
Wir haben die offizielle MeshCore-Firmware 1.17.1 in der Variante Companion BLE genutzt. Damit koppelt sich der Client per Bluetooth mit dem Handy. Für das diymore-Board passt die Heltec-V4-Variante. Nimm die normale heltec_v4, nicht heltec_v4_r8: Die R8-Revision hat einen anderen Leistungsverstärker und andere Pins.
Der einfache Weg: Board per USB-C anschließen, in Chrome oder Edge den MeshCore Flasher öffnen, Heltec V4 und Companion Radio (BLE) wählen, flashen. Wenn das Board nicht erkannt wird: BOOT-Taste beim Einstecken gedrückt halten.
Der Weg, den wir gegangen sind: per Kommandozeile mit esptool. Die fertige Firmware liegt auf GitHub unter Releases, du brauchst die Datei heltec_v4_companion_radio_ble-…-merged.bin.
# esptool installieren (falls noch nicht vorhanden)
pip install esptool
# Board finden – unter macOS meist /dev/cu.usbmodem…
ls /dev/cu.usb*
# Flash komplett löschen, dann die Merged-Firmware ab Adresse 0x0 schreiben
esptool --chip esp32s3 --port /dev/cu.usbmodem2101 erase-flash
esptool --chip esp32s3 --port /dev/cu.usbmodem2101 --baud 921600 \
write-flash 0x0 heltec_v4_companion_radio_ble-v1.17.1-merged.bin
Danach startet das Board neu und zeigt auf dem OLED eine Bluetooth-PIN. In der MeshCore-App (iOS & Android) koppelst du den Client, gibst ihm einen Namen und änderst sofort die PIN.
Repeater flashen
Der KEEPTEEN kam ab Werk mit Meshtastic. Der RAK4631 darin ist ein nRF52-Chip, und der wird nicht per esptool geflasht, sondern per UF2: Die Firmware wird einfach wie eine Datei auf ein USB-Laufwerk kopiert.
# 1. Repeater per USB anschließen
# 2. Reset-Taste am RAK19007 zweimal schnell drücken
# → es erscheint ein Laufwerk "RAK4631"
# 3. Repeater-Firmware aus den MeshCore-Releases daraufkopieren
cp RAK_4631_repeater-v1.17.1-d929643.uf2 /Volumes/RAK4631/
Das Laufwerk verschwindet, der RAK startet als MeshCore-Repeater neu. Alternativ geht das auch im Web-Flasher mit RAK WisBlock 4631 und Repeater.
Repeater einrichten
Wichtig: alles einrichten, bevor der Repeater aufs Dach geht. Danach kommst du per Bluetooth nicht mehr ran, nur noch über das Mesh.
Repeater haben keine App-Oberfläche. Eingerichtet werden sie über eine serielle Konsole: per USB mit 115200 Baud oder bequemer im Browser über config.meshcore.io.
set name SB zeitraum dev
set radio 869.618,62.5,8,8
set tx 22
set repeat on
set lat <breitengrad>
set lon <längengrad>
password <eigenes-admin-passwort>
advert
Die Funkparameter sind das Preset EU/UK (Narrow): 869,618 MHz, 62,5 kHz Bandbreite, Spreading Factor 8, Coding Rate 8. Das nutzt im Saarland das ganze Netz. Wer andere Werte einstellt, hört niemanden. Die Clients stellst du in der App auf dasselbe Preset.
Mit dem Admin-Passwort kannst du den Repeater später aus der App heraus über Funk administrieren, ohne aufs Dach zu müssen.
Im SaarMesh anmelden
Im Saarland organisiert sich die MeshCore-Community als SaarMesh. Der Kanal ist gut belegt, deshalb begrenzen Repeater die Reichweite von Rundrufen über Regionen. Damit unser Repeater auch regional begrenzte Nachrichten weiterleitet, muss er die Regionen kennen:
region def europe|* de|* de-sl|* de-west|* de-rp|* saarlorlux|* saarland|* saarbruecken|*
region allowf *
region default saarlorlux
region home saarbruecken
set flood.max.unscoped 3
set path.hash.mode 1
region save
advert
In der App stellst du unter Experimentelle Einstellungen den Default Region Scope auf saarlorlux und die Path Hash Size auf 2 Byte, so wie es SaarMesh empfiehlt. Danach haben wir uns in der Telegram-Gruppe vorgestellt und auf der Live-Karte geprüft, dass der Repeater auftaucht.
Montage
Der Repeater hängt an einem Haken auf dem Dach unseres Büros in der Europaallee. Die mitgelieferten Stabantennen sitzen direkt an der Box, ein extra Kabel brauchst du nicht.
Ergebnis
Der erste Test lief noch ohne Dach: einen Abend lang ein Client am Fenster. Trotzdem tauchten Repeater in 20 km (auf einer Halde) und 45 km Entfernung auf. Das war der Moment, in dem klar war, dass MeshCore hier funktioniert.
Seit dem 8. September hängt unser Repeater SB zeitraum dev im SaarMesh. Schon am ersten Tag haben ihn Empfangsstationen bis nach Luxemburg gehört. Mitte Oktober leitete er rund 100 Pakete am Tag weiter.

Mitmachen
Das SaarMesh lebt davon, dass mehr Leute Repeater aufstellen. Auf der SaarMesh-Live-Karte siehst du, welche Knoten es schon in deiner Nähe gibt. Wenn du schon dabei bist oder mitbauen willst: schreib uns. Fragen zum Nachbau beantworten wir gern.


