Ich habe in den Pfingstferien meine Schreibtischschubladen aufgeräumt und bin dabei auf die beiden Seeed Grove LoRa-Module gestoßen, die ich mal bestellt hatte.
https://wiki.seeedstudio.com/Grove_LoRa_E5_New_Version/
Da ich in den Sommerferien endlich meinen Hühnerstall im Garten (kein WLAN) mit dem Calliope mini steuern will, wollte ich nochmal mit ihnen etwas experimentieren. Ich hatte es damals aufgegeben, weil ich kein LoRaWAN-Gateway erreichen konnte.
P2P = point to pointIch hatte irgendwo gelesen, dass die Lora-Module auch direkt untereinander kommunizieren können. Im P2P-Modus, also Point to Point, ohne irgendwelche Netzinfrastruktur. Man muss dazu in den Test-Modus gehen.
Der Test-MODEIn den AT Command Specifications (ganz am Ende angehängt) findet sich ab Seite 52 etwas zum TEST-Modus
Man kann dann ein Lora Paket verschicken, z.B. im HEX-format oder als TEXT-String
Empfangen kann man allerdings alles nur im HEX-Format und muss dann wieder in Zahlen oder Text umwandeln.
Anschluss und AnsteuerungDas Grovemodul wird am rechten Groveport angeschlossen, da es über die Serielle Schnittstelle angesteuert wird. Jeder Befehl muss mit CR und LF abgeschlossen werden. Es wird nach jedem Befehl eine Rückmeldung vom Modul an den Calliope mini gesendet. Die kann man mit serial.readline abholen und auswerten oder abholen und inorieren. In meinem Beispielprogramm arbeite ich aber mit dem Eventhandler.
Wichtig: TX auf C17 und RX auf C16 umleiten. Die Baudraute muss auf 9600 gestellt werden. (Stundenlang den Fehler nicht gefunden!)
https://makecode.calliope.cc/_HXA28TLct4Vk
Man muss zum Senden natürlich erstmal auf Button A klicken
https://makecode.calliope.cc/_cb32M1fupF2d
Für die Textausgabe hatte ich das letzte Zeichen abgeschnitten, da sonst auf meinem LCD-Display etwas Müll angezeigt wird. Ich sehe auch immer gerne wo ich im Programm bin. Deswegen die ganze LEDblinkerei.
Das Programm habe ich dann nach und nach etwas erweitert, sodass man über die Tastatur Texte an den Calliope mini senden kann und diese dann auf dem LCD-Display im Klartext angezeigt werden. Außerdem kann man mit Taste A und B zwischen Sender und Empfänger umschalten.
https://makecode.calliope.cc/_Fjccmfdh2LUu
https://makecode.calliope.cc/_V7dbRX1EycAu
Zur Konvertierung von Hexadezimalsystem ins Dezimalsystem kann man ja einfach eine fertige Erweiterung verwenden:
https://github.com/hokarimasahiro/pxt-hex2num
CardKB - ErweiterungUm Texte bequem einzugeben verwende ich CardKB Unit V1.1 von M5stack mit dieser Erweiterung:
https://github.com/MKleinSB/pxt-CardKB
Mehr zum LoRaWanMehr zu LoRaWan gibt es auf https://www.inf-schule.de/informatiksysteme/calliope/lernstrecke_lora/lernstrecke
Comments