LoRa Reichweite mit TTNmapper abschätzen

Nachdem wir jetzt auch einen Gateway fertig haben (ich werde in einem eigenen Beitrag berichten) und mehrere Sensoren funktionieren, wäre es doch mal interessant, die Reichweite der Signale kennenzulernen.

Grundsätzlich senden meine Sensoren bisher nur Messdaten, im Moment aber noch eher statische kurze Textmitteilungen. Was mir fehlt sind die GPS-Positionsdaten, damit ich feststellen kann, von welcher Position mit welcher Signalstärke Pakete empfangen wurden (RSSI).

Nachtrag Juli 2017: wir haben mit dem Aufbau einer Community bei The Things Network in Wien begonnen. Das Ziel ist die Schaffung eines freien und offenen Netzes für IoT. Nachdem ich mehrfach auf meinen Blog hin angeschrieben wurde, es den Personen aber nicht bewusst war, dass sich hier was tut, möchte ich auf folgende Links verweisen: folgt uns auf Twitter (@TTN_Vienna), für Updates und Infos zu den nächsten Treffen oder besucht die Wiener Community Seite!

Bevor ich mich damit beschäftige, mit dem LoRa/GPS Shield auch die GPS-Daten mitzusenden, möchte ich mit ttnmapper.org mal die GPS-Daten dazuschummeln. TTNmapper hat einen super Ansatz dafür gewählt: in der Annahme, dass ich mein Smartphone (Android) und meinen Sensor bei mir habe (mit mir herumtrage oder in meinem Fall beides mit dem selben Auto unterwegs ist), ergänzt TTNmapper mit einer eigenen App einfach die GPS-Position vom Smartphone. Clever!

Funktionsweise

Klarerweise muss ich auf meinem Android Smartphone die App aus dem Play Store installieren. Danach melde ich mich in der App mit meinen Login-Daten bei The Things Network an und wähle aus meinen Applikationen und Devices den Sensor aus, mit dem ich aktuell messen möchte. (Falls jemand seine Logindaten nicht bekanntgeben möchte, kann man auch direkt die Zugangsdaten für den MQTT-Zugang des Device eingeben, das ist natürlich viel umständlicher, aber man muss die Zugangsdaten nicht eingeben).

Ab sofort höre ich jedesmal, wenn ein Paket angekommen ist (die App erfährt das über MQTT wirklich sofort) einen Ton.

Also habe ich eine kleine Magnetfußantenne für 868 MHz neben meine APRS-Antenne auf’s Auto montiert und die App bei meiner heutigen Ausfahrt mitlaufen lassen. Die Stromversorgung über 12V Anschluss auf einen Verteiler mit USB-Hub war zum Glück für Amateurfunkzwecke schon vorhanden und musste ich nur mehr dazustecken.

Es hat super funktioniert! Beim Starten des Motors ist sofort das erste Klingeln am Smartphone hörbar gewesen.

Nach einer kurzen Ausfahrt hat sich folgendes Bild ergeben:

An die Farbgebung muss man sich noch gewöhnen, zum Glück ist eine Legende dabei. Die besten Signalstärken sind rot, die schlechtesten grün und türkis/blau.

Erfreulicher Weise hat mich auch der Gateway von Peter im 2. Bezirk ein paar Mal empfangen.

Zum Vergleich: links die heutige Route über APRS protokolliert und rechts die Punkte, an denen LoRa-Pakete angekommen sind:

16 Gedanken zu „LoRa Reichweite mit TTNmapper abschätzen“

  1. Hallo,
    interesant wäre, wenn man das 2m Aprs Signal mit dem LoRa Signal vergleichen könnte. Wie sehr kann die LoRa Modulation die Nachteile der höhren Frequenz ausgleichen oder sogar unter bestimmten Umständen ein besseres Ergebnis erzielen?
    Wenn ich es richtig deute, kommen die visualisierten APRS Baken nicht durch einen Empfänger an Deinem QTH zustande?!

    73 de Frederik, DO9FM

    1. Hallo,

      guter Gedanke, möchte ich mir mal anschauen! 😉

      In diesem Fall sind die APRS iGates/Empfänger an anderen Standorten. Wir möchten eh weitere LoRa-Gateways installieren, da bietet sich bestimmt auch mal ein Amateurfunk-Standort an. Dann werde ich das mal vergleichen.

      Bei TTNmapper sind die Daten als CSV exportierbar bei ARPS ähnlich bzw. hab‘ ich sie selbst. Das lässt sich schon machen.

      73!

  2. Hallo Stefan! Ich komme aus der Südsteiermark und bin auf der Suche nach LoRa Lösungen auf deine Seite gestoßen.

    Ich bin auf der Suche nach der Möglichkeiten GPS Rtcm3 Daten über ca. 5 km zu Übertragen (Ländliches Gebiet)

    Datenrate: GPS_GLONASS_1Hz, 2458b/s

    Bietet sich hier mit LoRa ein Möglichkeit? Mit Arduino kenne ich mich aus. Übertragunsmöglichkeit wäre UART Schnittstelle.

    lg Andreas

    1. Hallo Andreas,

      ich denke damit lässt sich das gut machen. Die Reichweite und die Übermittlung von kurzen Daten sind genau die Spezialitäten von LoRa bzw. LoRaWAN.

      Vor allem kann man es leicht ausprobieren. Auch ohne TTN gibt es zB. von Dragino (schau‘ mal auf tindie.com) recht günstige Shields, mit denen sowas auch direkt umgesetzbar und auch SW vorhanden ist.

      Sichtverbindung wäre natürlich weiterhin interessant. Ansonsten müsstest du einen Gateway zB. auf einem Berg installieren, der beide anderen Punkte direkt sieht.

      Je nach Datenmenge oder Anzahl der Übertragungen möchte ich dir den Hinweis auf die Duty Cycles geben: das Frequenzband ist zeitlich hinsichtlich Nutzung limiert (zB. https://www.thethingsnetwork.org/forum/t/duty-cycle-time-on-air/122). Damit ist eine permanente Verbindung nicht möglich, aber ein Übermitteln zB. mehrmals je Stunde machbar.

      LgS

  3. Zum Duty Cycle hab ich mal auf RTR nachgeschaut:

    At 869,4 MHz it’s allowed to send with 500mw and 10 % duty cycle limit..

    Ich hätte die Möglichkeit vom meinen GPS auf einen Silo mit Sichtverbindung die Daten zu schicken bzw. dort weiterzuverteilen.

    Kannst du mir bei der Hardware eine Empfehlung geben?

    lg Andreas

    1. Hallo,

      ich habe jetzt auch keine große Erfahrung damit, aber wenn dir Arduino liegt, bin ich gut mit den Produkten von Dragino vorangekommen:
      https://www.tindie.com/stores/edwin/

      Die Shields sind für Arduino, die HATs für Raspberry. Wenn du wirklich einen Gateway bauen möchtest, würde ich das HAT empfehlen. Ansonsten wäre direkte Kommunikation zwischen zwei Shields gut machbar.
      Hier kannst du zwischen zwei Shields (mit oder ohne eingebautem GPS-Modul je nach belieben) auf einer fertigen Lösung aufsetzen:
      http://wiki.dragino.com/index.php?title=Lora_Shield

      LgS

  4. Hey,
    Ich interesse mich hobbymäßig für Arduinos und besonders für Motorsteuerungen ,bin aber leider erst 13 Jahre alt und habe deswegen nicht so viel Ahnung.
    Meine Frage: Ist so ein LoRa Shield geeignet um einen Quadrocipter zu steuern? bzw. Welche Informationen kann so ein Shield senden und kommen die Signale auch schnell genug an?

    lg Julian

    1. Hallo Julian,

      es ist eher unüblich, LoRa zur Steuerung von Quadcoptern zu nutzen. Wobei es grundsätzlich funktionieren müsste. Die Übertragung ist jedoch nicht besonders schnell (dafür hohe Reichweite und sehr energiesparend). Auch die Menge der zu übertragenden Daten ist auf einige Byte limitiert (das könnte aber für eine Steuerung ausreichen).
      Ich kenne Steuerungen für Quadcopter eher im 2,4 GHz-Bereich (vgl. WLAN-Frequenzen).

      Falls du das Thema mit LoRa weiterverfolgst würden mich deine Fortschritte sehr interessieren. Ich glaube aber, dass du bei anderen Frequenzen fertige Lösungen finden wirst, mit denen du schneller zu einem Ergebnis kommst.

      LgS

      1. Hi Stefan,

        ich habe mich sehr über deine schnelle und gute Antwort gefreut. Mit LoRa habe ich mich extra wegen der großen Reichweite befasst. Ich werde mich also weiterhin über LoRa informieren.
        Meine Frage ist wegen „Die Übertragung ist jedoch nicht besonders schnell“. Weißt du wie schnell die Übertragung ist wenn die Drohne beispielsweise 5 km entfernt ist ?
        Denn wenn es zu lange dauert kann man die Drohne ja kaum noch steuern.

        lg Julian

        1. Hallo,

          die Geschwindigkeit der Übertragung war weniger auf die Laufzeit der Pakete gemeint, sondern auf die Datenrate. Ich weiß nicht, welche Bandbreite du benötigst, um eine Drohne zu steuern. Da bin ich leider kein Experte. Wenn Sichtverbindung besteht, müsste LoRa über 5km ganz gut funktionieren.

          LgS

  5. Hi Stefan,

    Hope all is well. I am using a NiceRF LoRa 1278 Module and I am having some distance problems. It doesnt reach more than 50 meters in an open environment. Would you kindly guide me through some of the things I might be doing wrong?

    Thank you very much!

    Scott

    1. Hi Scott,

      I need to understand more about the problem: what backend are you using? What Gateway are you using? Normally with LoRaWAN you get a JSON Object that shows the RSSI (Receiver Signal Strenght). What value does that show?
      Which library are you using at the sensor? LMIC? AFAIK LMIC sends everything with +14 dbm.
      What antenna do you use? (at sensor and at gateway/receiver)

      LgS

      1. Hi Stefan,

        Thank you for responding. I just checked with one of my partners and he gave me these answers (see below). To give you more context we are trying to develop network of sensors that will go on the surface of a street and they will communicate to a central that goes on top of the light traffic light.

        1)What Gateway are you using? A raspberry-pi connected to an arduino uno with a LoRa module

        2)Normally with LoRaWAN you get a JSON Object that shows the RSSI (Receiver Signal Strenght). What value does that show? We don’t use LoRaWAN, so there is no JSON here. It is Point to Point communication, we are not even getting a good range between the two modules (less than 80 mts line of sight)

        3)Which library are you using at the sensor? We are using the NiceRF library, with the arduino example „lora_master“

        4)What antenna do you use? (at sensor and at gateway/receiver) SW915-TH12 Copper spring 915MHz antenna.

        Thank you very much!

        Scott

        1. Hi Scott,

          I’m sorry, I have only experience with LoRaWAN implementations not peer to peer… I cannot tell where the problem lies in your specific case. Maybe you can contact the vendor of the modules? I have tried communication over a few kilometers without problems (maybe some packet loss, but mainly it was working). You could also try to get a recommendation for an antenna? This was improving my performance heavily…

          LgS

  6. Hello! I am trying to program the SA858 module with Arduino, but I can’t set the CTCSS via Sketch program. Do you know What is the correct format to program, Rx/Tx, CTCSS and SQ values?

    Thanks!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Bitte beantworte folgende Rechenaufgabe * Time limit is exhausted. Please reload CAPTCHA.