|
ESP32 Lora Wetterdaten
|
|
|
03.02.2021, 17:25
(Dieser Beitrag wurde zuletzt bearbeitet: 03.02.2021 19:08 von 4711engel.)
Beitrag #1
|
|||
|
|||
|
ESP32 Lora Wetterdaten
Hallo,
ich habe mir eine kleine Wetterstation aufgebaut, um LORA kennen zu lernen. Ich verwende als Sender ein Stemedu LoRa Radio Board mit Akku 3,7V und als Empfänger einen ESP32 Lora 868 MHz mit OLED an 5 V (Fotos und sketche siehe Anhang). Gesendet werden die Daten eines BME280 (Temp, Druck, Feuchte) mit 868 MHz vom Radio Board zum Receiver und wird dort auf dem OLED angezeigt. Das Radio Board liest die Daten, schickt sie los und geht dann für die maximalen 8 Sec in deep sleep, um den Akku zu schonen. Im Moment teste ich die Akku-Laufzeit. Das Radio Board läuft schon 5 Tage ohne Probleme. Ich bin mir aber nicht sicher, welche Boards ich im Board-Manager der Arduino IDE eintragen muss und welche Einstellungen zu setzten sind. Für das Radio Board habe ich Arduino "Pro or Pro mini" eingetragen und für das ESP52 Lora Board habe ich Heltec WiFi LoRa 32 V2 mit den Standardeinstellungen gewählt. Ich habe aber das Problem, dass nach ca. 4-5 Stunden das TTGO nicht mehr die Daten auf dem OLED refreshed. Nach an-aus läuft es dann wieder 4-5 Stunden ohne Probleme. Hat jemand vielleicht Erfahrungen mit dem Board und kann mir Tipps geben? Falls noch Angaben benötigt werden, einfach schreiben. Viele Grüße Ulli --------------------------------------------------------------------------------------- Wer Rechtschreibfehler findet, darf sie behalten! --------------------------------------------------------------------------------------- |
|||
|
05.02.2021, 12:04
(Dieser Beitrag wurde zuletzt bearbeitet: 05.02.2021 14:06 von 4711engel.)
Beitrag #2
|
|||
|
|||
|
RE: ESP32 Lora Wetterdaten
Da das Problem des Heltec-Boards (Receiver und Datenanzeige) weiterhin besteht, habe ich im Sketch des Receivers nun eine Restart-Funktionalität eingebaut, die den ESP nach ca. 2 Stunden restartet.
Dieses teste ich gerade. Damit soll dann die Aktualisierung der Datenanzeigen auf dem OLED gesichert sein, erklärt mir aber nicht, warum der ESP32 LORA nach einer gewissen Laufzeit die Daten nicht aktualisiert. Vielleicht kennt sich jemand damit aus und kann "Licht in mein Dunkel" bringen. Ich würde mich über ein Feedback freuen. Vielleicht muss ja auch die Standardeinstellung im Boardmanager der Arduini IDE verändert werden. Ich verwende: Board Heltec WiFi ESP32 LoRa mit Standardwerten. --------------------------------------------------------------------------------------- Wer Rechtschreibfehler findet, darf sie behalten! --------------------------------------------------------------------------------------- |
|||
|
25.02.2021, 12:39
Beitrag #3
|
|||
|
|||
|
RE: ESP32 Lora Wetterdaten
Das Problem mit dem "einfrierenden" Receiver habe ich nun gelöst. Siehe Code unten.
Nun gibts aber ein weiteres Problem, da eine weitere Funkstrecke dazu gekommen ist: Ich nutze das Stemedu LORA ATMega328P mit AKKU in einer Wetterstation als Sender und ein Heltec Lora32 ESP als Receiver am Stromnetz auf dem Schreibtisch. Nun soll noch eine weitere Funkstrecke mit 2 Heltec Boards dazu kommen. Wenn ich es richtig verstanden habe, dann beeinflussen die sich gegenseitig bzw. man kann von aussen als Fremder die Daten auslesen. Deshalb wollte ich bei allen SyncWords vergeben. Je paarweise ein SyncWord. Damit soll eigentlich immer nur der Receiver mit passendem SyncWord des Senders die Datenpakete bearbeiten können. 1.Test: 1xSender=Heltec und 2x Heltec-Receiver. Nur der Receiver mit dem gleichen SyncWord des Senders konnte die Daten auf dem OLED anzeigen. 2.Test: 1xStemedu-Sender und 2x Heltec Receiver. Der Receiver mit dem Sender SyncWord zeigt die Daten richtig auf seinem OLED an. ABER auch der andere Heltec zeigt die Daten mit "Schrottformatierung" an, obwohl er ein anderes SyncWord als der Sender besitzt. Große Verwunderung. Kennt dieses vielleicht jemand? Funktioniert SyncWord mit Stemedu ATmega328 vielleicht nicht? Wer kann mir helfen? Googlen führte bei mir nicht zum Erfolg. --------------------------------------------------------------------------------------- Wer Rechtschreibfehler findet, darf sie behalten! --------------------------------------------------------------------------------------- |
|||
|
25.02.2021, 14:14
Beitrag #4
|
|||
|
|||
|
RE: ESP32 Lora Wetterdaten
Setze Deinen Sketch bitte in Codetags.
Wie das geht, steht hier. Das kannst Du auch noch nachträglich ändern. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) Alle von mir veröffentlichten Codes unterliegen der GPL Version 3 |
|||
|
25.02.2021, 14:50
Beitrag #5
|
|||
|
|||
RE: ESP32 Lora Wetterdaten
(25.02.2021 12:39)4711engel schrieb: Nun soll noch eine weitere Funkstrecke mit 2 Heltec Boards dazu kommen. Wenn ich es richtig verstanden habe, dann beeinflussen die sich gegenseitig.... Genau....wie verhinderst du, dass nicht beide Sender gleichzeitig senden. Wenn das passiert, entsteht Datenmüll, den du nicht mehr sauber trennen kannst. Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme.
|
|||
|
25.02.2021, 16:30
Beitrag #6
|
|||
|
|||
RE: ESP32 Lora Wetterdaten
(25.02.2021 14:50)hotsystems schrieb:(25.02.2021 12:39)4711engel schrieb: Nun soll noch eine weitere Funkstrecke mit 2 Heltec Boards dazu kommen. Wenn ich es richtig verstanden habe, dann beeinflussen die sich gegenseitig.... Hallo Dieter, der Moderator hatte eine Sperre geschaltet. Jetzt kann ich wieder Antworten. Wie ich gelesen habe kann man mittels eines SyncWord im void setup // The sync word assures you don't get LoRa messages from other LoRa transceivers // ranges from 0-0xFF LoRa.setSyncWord(0xFF); in Receiver und Sender (hier (0xFF) ) erreichen, dass nur der Receiver Datenpakete bearbeiten kann, der das gleiche SyncWord wie der Sender des Datenpaketes hat. Damit ist es dann wohl möglich, mehrere Sender --> Receiver Strecken parallel zu betreiben. Wichtig sind nur pro Paar andere SyncWords zu vergeben. Das klappt bei mir mit Heltec Lora32 ESP mit OLEDs sehr gut. Aber Problem macht ein Stemedu Radio Lora board als Sender. Der funkt auf alle receivern rum und macht Anzeigemüll auf dem "falsch" OLED. --------------------------------------------------------------------------------------- Wer Rechtschreibfehler findet, darf sie behalten! --------------------------------------------------------------------------------------- |
|||
|
25.02.2021, 16:34
Beitrag #7
|
|||
|
|||
|
RE: ESP32 Lora Wetterdaten
Ja, über PN hatte ich dir schon geschrieben.
Das sind zwei verschiedene Dinge. Einmal, der Empfänger antwortet nur auf sein "SyncWord". Aber was passiert, wenn gleichzeitig zwei Sender senden. Dann wird dein SyncWord nicht mehr lesbar sein. Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme.
|
|||
|
25.02.2021, 16:41
(Dieser Beitrag wurde zuletzt bearbeitet: 25.02.2021 16:49 von 4711engel.)
Beitrag #8
|
|||
|
|||
RE: ESP32 Lora Wetterdaten
(25.02.2021 16:34)hotsystems schrieb: Ja, über PN hatte ich dir schon geschrieben. Wenn zwei Sender Pakete schicken, dann reagiert nur der Receiver auf der anderen Seite, der das gleiche SyncWord hat. Das ist wie ein Schlüssel. Der andere Receiver reagiert darauf nicht. So war es bei mir und so habe ich es auch aus einem Random Nerd Tutorial. Damit können z.B. Leute in meinem Haus, die auch mit Lora arbeiten, durch meine Datenpakete nicht gestört werden. Im Anhang ein Foto: oben zwei Receiver. Unten ein Sender. Der Sender und der linke Receiver haben das gleiche SyncWord. Die Paketdaten werden nur auf dem linken receiver angezeigt. der rechte bleibt ohne Daten. Und es gibt auch keinen Datenmüll auf den OLEDs (also Überschreibungen von Text). Gruß Ulli --------------------------------------------------------------------------------------- Wer Rechtschreibfehler findet, darf sie behalten! --------------------------------------------------------------------------------------- |
|||
|
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste





