Kurzer Reichweitenversuch mit zwei günstigen LoRa-Modulen ohne Verwendung eines Gateways.
LoRa ist eine neue interessante Funktechnik, die eigentlich zur Übertragung zwischen einem Funkmodul und einem sog. Gateway gedacht ist (LoRaWAN). Vom Gateway ab kommt man dabei normalerweise ins Internet und kann seine Daten zur Auswertung irgendwo hin transferieren. Bei der Verwendung eines, gut positionierten (z.B. Funkturm), Gateways können damit Reichweiten bis über 3 km erreicht werden.
Leider sind Gateways, vor allem im ländlichen Gebiet, noch eine Seltenheit und man kann LoRaWAN, wie vorgesehen, nur an sehr wenigen Orten betreiben.
Natürlich kann man sich ein eigenes Gateway zulegen und irgendwo montieren – aber das ist aufwendig und teuer (ab 200€ im Moment) Es ist aber auch möglich, einfach zwei günstige Funkmodule direkt miteinander kommunizieren zu lassen. Leider konnte ich dafür keine Praxiserfahrungen im Internet finden und ich hab mich gefragt, welche Reichweite man eigentlich mit zwei günstigen LoRa Funkmodulen ohne Gateway erreichen kann. Und das natürlich unter halbwegs realistischen Bedingungen, wie z.B. kein Sichtkontakt wegen Bebauung.
Für den Versuch hab ich mir zwei halbwegs günstige LoRa Node 151 von Heltek besorgt (ca. 20€). Mein Hauptgrund dafür war, dass es einen STM32-Prozessor hat, was ich einfach sehr mag. Die Module waren sehr schön verpackt und Antennen waren auch dabei – fertig zum loslegen.
Für die Entwicklung hab ich das neueste mbed-os verwendet. Der LoRa-Chip SX1276 wird dort schon direkt unterstützt. Leider das Board nicht wirklich. Das Target XDOT_L151CC kam dem ganzen am nächsten und ein kleiner Patch tat den Rest.
Bei meinem ersten Versuch kam ich damit nur etwa 350m weit. Beim zweiten Anlauf kam ich (durch Änderung des Spreading-Factors von 7 auf 12) auf etwa 550m.
Leider weit weg von den möglichen >3km aber dennoch beachtlich – immerhin ein halber Kilometer. Mal schaun – vielleicht gibt es ja eine nützliche Anwendung dafür.
Ablauf war dabei folgender: Sender liegt, ohne spezielle Ausrichtung, einfach auf meinem Schreibtisch und sendet alle 50ms ein Paket. Der Empfänger toggelt einfach beim Empfang eine LED und zeigt dadurch dass er ein Paket empfangen hat. Den Empfänger hatte ich einfach auf der Ablage im Auto liegen
Zum Quellcode