outdoor
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
outdoor [2021/02/18 17:24] – varnholt | outdoor [2023/01/22 16:16] (aktuell) – varnholt | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ===== Außentemperatur und Feuchtigkeit mit ESP01 ===== | + | ===== Außentemperatur und Feuchtigkeit mit ESP01 - outdoor |
Wie hier schon beschrieben, | Wie hier schon beschrieben, | ||
- | Hauptproblem ist die kurze Batterielaufzeit | + | Hauptproblem ist die kurze Batterie-Laufzeit |
Hat alles zwar was gebracht, aber doch kein AHA-Effekt und alle 300 Zyklen (150 Stunden) ist die Batterie zu wechseln. Von den drei Batterien hält jetzt im Winter eine sogar viel weniger aus. | Hat alles zwar was gebracht, aber doch kein AHA-Effekt und alle 300 Zyklen (150 Stunden) ist die Batterie zu wechseln. Von den drei Batterien hält jetzt im Winter eine sogar viel weniger aus. | ||
+ | |||
+ | Info: Wenn man es richtig macht, geht es auch richtig. Bei der Umstellung auf ESP-NOW habe ich festgestellt, | ||
+ | |||
+ | < | ||
+ | 4,2 Sekunden : Verbinden, Daten austauschen | ||
+ | 1,8 Sekunden : mit schnellem Connect | ||
+ | 0,8 Sekunden : ohne WiFi-Verbindung (nur ESPNOW) | ||
+ | </ | ||
Mir reicht! Neuer Versuch mittels ESPNOW. Damit geht mir OTA und andere Einstellungen verloren, da ich natürlich nichts mehr direkt an meine Server schicken kann, aber wenns was bringt. Im Internet hat jemand den ESPNOW Empfänger (auch ein ESP01) mit dem Raspberry über Serielle Schnittstelle verbunden und schreibt die Daten einfach per Serial.print raus. Ich versuche es anders, da ich nicht noch mehr anlöten will. Mit dem ESP-Flasher-Programmer-USB Sockel schiebe ich ihn einfach in den USB Port und sende die Daten dann per MQTT oder anders an den Raspberry... Problem dabei: der ESPNOW Empfänger kann nicht gleichzeitig eine WIFI Verbindung haben. Na, da ich ja sowieso nur alle 30 Minuten was machen will, warte ich auf Daten, kappe dann die zuhörende Verbindung, baue sie zum Raspberry auf, übertrage die Daten, und gehe dann wieder in den Zuhörer-Modus. | Mir reicht! Neuer Versuch mittels ESPNOW. Damit geht mir OTA und andere Einstellungen verloren, da ich natürlich nichts mehr direkt an meine Server schicken kann, aber wenns was bringt. Im Internet hat jemand den ESPNOW Empfänger (auch ein ESP01) mit dem Raspberry über Serielle Schnittstelle verbunden und schreibt die Daten einfach per Serial.print raus. Ich versuche es anders, da ich nicht noch mehr anlöten will. Mit dem ESP-Flasher-Programmer-USB Sockel schiebe ich ihn einfach in den USB Port und sende die Daten dann per MQTT oder anders an den Raspberry... Problem dabei: der ESPNOW Empfänger kann nicht gleichzeitig eine WIFI Verbindung haben. Na, da ich ja sowieso nur alle 30 Minuten was machen will, warte ich auf Daten, kappe dann die zuhörende Verbindung, baue sie zum Raspberry auf, übertrage die Daten, und gehe dann wieder in den Zuhörer-Modus. | ||
Was mich wieder viel Zeit gekostet hat: Der Sender muss mit WIFI_STA und der Empfänger mit WIFI_AP initialisiert werden. Aktuell Broadcastet der Sender (dann könnten meine Nachbarn auch was davon haben, wenn sie wollen). | Was mich wieder viel Zeit gekostet hat: Der Sender muss mit WIFI_STA und der Empfänger mit WIFI_AP initialisiert werden. Aktuell Broadcastet der Sender (dann könnten meine Nachbarn auch was davon haben, wenn sie wollen). | ||
+ | |||
+ | Zweites Problem ist der Kanal, auf dem gesendet wird. Nutzt man beim Sender nur ESPNOW, kann man den Kanal festlegen. Baut meine eine Verbindung zu Router auf, wird der Kanal vom Router verwendet, um zu senden - das ist für den Empfänger natürlich suboptimal. | ||
+ | |||
+ | Sende jetzt als erstes auf Kanal 1 mit ESPNOW und dann, mache ich die WLAN Verbindung auf. Am Empfänger schalte ich nach dem Datenerhalt kurz auf WLAN um und schicke es an den Server. Nicht schön, aber geht. | ||
+ | |||
+ | Der DHT22 braucht eine Zeitlang, bis er warm wird. Vor dem ersten Lesen musste ich einen Delay einbauen. Das habe ich im init() ganz an den Anfang gestellt. | ||
+ | < | ||
+ | pinMode(DHTPin, | ||
+ | delay(250); | ||
+ | dht.begin(); | ||
+ | </ | ||
+ | Sicherheitshalber frage ich beim lesen der Daten noch auf NaN ab und mache eine kurze pause, bevor ich erneut lese. Als ich den dht.begin() in die Methode mit reingenommen habe, ohne delay(), hat er viel länger als jetzt gebraucht - ich habe keine Ahnung warum. | ||
Bin noch dran, also ganz fertig ist es noch nicht ;-) | Bin noch dran, also ganz fertig ist es noch nicht ;-) | ||
- | Stand: | + | Mit einem neuen Spannungs-Konstanter von [[https:// |
+ | |||
+ | Update Januar 2023: | ||
+ | Der zweite USB-Programmer macht Probleme. Statt zu programmieren kommt eine Kryptische Fehlermeldung: | ||
+ | |||
+ | Stand: |
outdoor.1613669063.txt.gz · Zuletzt geändert: 2021/02/18 17:24 von varnholt