NEWS
alte Fenstersensoren Smart machen
-
@bananajoe sagte in alte Fenstersensoren Smart machen:
Das ist jetzt aus dem Kopf, aber Tasmotizer ist nicht für ESP32 geeignet
ok danke, wieder was neues gelernt
mit der online Variante gehts ja zum Glück -
Mal ein Update des "nan" Problem des DHT22 AM2301 Sensors.
Ich hatte genug Zeit zum testendiverse Wemos D1
3 ESP32 CH340
Tasmota
Arduino
diverse Netzteile
mit und ohne 4,7 kohm widerstand
diverse GPIO
3 verschiedene DHT22es hat keine Auswirkung, sobald ich im Keller das Licht einschalte (Leuchtstoff Röhre) dann geht der Sensor auf nan. Der Sensor hängt quasi an der selben Leitung, da Steckdosen und Licht die selbe Zuleitung ist.
Laut dem offiziellen Datenblatt hab ich nur noch eine Möglichkeit
https://www.sparkfun.com/datasheets/Sensors/Temperature/DHT22.pdf100 nF Kondensator zwischen 3,3 V und GND.
Er soll wohl Spannungsspitzen abfangen.
Der Widerstand ist wohl nur dafür da, das der Sensor auch an längeren Leitungen noch funktioniert.
Ist blöd, wenn ich abends die Kellerfenster schließen will, wenn die Temperatur auf nur noch 4 Grad gefallen ist, und das Dashbord dann nur noch "nan" meldet.Oder ich muss die Lampe wechseln
-
@berndsolar13 sagte in alte Fenstersensoren Smart machen:
Dashbord dann nur noch "nan"
ESP lebt noch und arbeitet noch ?
-
ja, der funkt noch per MQTT, und die Oberfläche also Web UI ist abrufbar, der SR04 Ultraschall ändert doch noch seine Werte in der Oberfläche.
-
SR04 ? DHT im Keller
lebt, Web UI hat Werte, Mqtt nan ? -
@ralla66
Ne im Keller beim DHT ist nur der 1. Test vom Fenster, (Auf / Zu)Der SR04 ist über meinem Wassertank für das Hydro System.
Dort messe ich den Wasserpegel, damit die Pumpe nicht trocken läuft.
Hab da mal einen DHT22 angeschlossen, um zu testen, ob es wirklich an der Keller Lampe liegt.
Aber sobald die Wasserpumpe an geht, alle 20min für 2 Min, geht der Temp Sensor auf "nan".Hab dann überall "nan" in der Konsole, Weboberfläche, und MQTT.
Die anderen Werte ändern sich, also Wasserstand und Fenster auf Zu..
Kann alle Menüs aufrufen von Tasmota, daher gehe ich davon aus, das der ESP noch läuft.Vermutlich zieht der Starter der Leuchtstoffröhre kurz zu viel genau wie die Wasser Pumpe (8 Watt Leistung). Und das killt den Sensor. Es passiert quasi immer, und nicht nur 1x pro Woche. Also gehe ich davon aus, das der Anlaufstrom dafür verantwortlich ist.
-
@ralla66 sagte in alte Fenstersensoren Smart machen:
sollte in der .bin mit drin sein
#define SUPPORT_MQTT_EVENT
Mqtt Adapter
Tasmota
hi ralla66
Ich wollte nun endlich loslegen, aber mit der Standard ESP32 Firmware klappt es nicht.
Ich wollte deine OFFEN / ZU Variante nehmen.Könntest du mir diese bin mal uploaden
Andere Frage, wie bekomme ich die per WebUpload hoch ?Beim EPS32 muss ich erst die Secure Boot Firmware hoch laden, quasi die minimal.bin wie beim ESP8266 ? Und danach dann deine ?
Wegen der nan Sache bin ich noch nicht weiter gekommen.
Für den Anfang hab ich die Leuchtstoff Röhren Lampe mal abgeklemmt, um zu testen, wie lange der Sensor aktiv bleibt -
@berndsolar13 sagte in alte Fenstersensoren Smart machen:
Könntest du mir diese bin mal uploaden
müsste in der Bastel.bin von oben mit drin sein.
WebUpload keine Ahnung, mach das immer per USB. -
@ralla66 sagte in alte Fenstersensoren Smart machen:
für CH340 den Driver v3.4 nehmen, Win 11 ersetzt den gerne automatisch mit v 3.8 !
teste mal die Bastel,bin, weiß grad nicht was drin ist.
tasmota32.factory.bin
tasmota32.binmeinst du diese ? weil ich per suche mit bastel nix finde
-
jupp
-
ok, dann leg ich los, berichte dann obs geklappt hat
-
Der ESP läuft mit der angepassten Firmware.
Die Auswertung der Reedkontakte läuft.
Bin jetzt am Briefkasten, hab mir überlegt das mit einem Counter zu machen,
Jedesmal wenn sich der Status ändert, zählt das Script intern + 1.Wenn der Wert dann > 0 ist, bedeutet es, der Briefkasten wurde geöffnet
Hab dazu dein Script angepasstif sw5>0 then BKT="OFFEN" else BKT="ZU" briefcount=briefcount+1 endif
ne halbe Sekunde kontakt reicht schon aus, um den internen Zähler auf +1 zu setzen.
Jetzt muss ich nur jedentag um sagen wir "Stunde 5" den Counter auf 0 setzen.Oder hat jemand ne bessere Idee für die Briefkasten Auswertung
-
Also ich lese hier schon eine Weile mit ...
Ich habe das ohne Skripte auf den ESP gelöst, einfach mit dem 08/15 Standard Image von Tasmota.
Ich schließe meine Reed-Kontakte / Taster / Mikroschalter / Endschalter immer mit einem 4,7kOhm Widerstand an so das die den GPIO entweder auf Masse ziehen (Button_n) oder auf 3,3V (Button_i).
Dementsprechend konfiguriere ich auch Tasmota:
Dann entkopple ich die Taster von (nicht vorhandenen) Relais:
SetOption73 1 => Entkoppelt die Taster (Buttons) von den Relais. Ansonsten müsste für jeden Taster (Button) auch ein Relais vorhanden sein. So wird nur Meldung gemacht SetOption13 1 => Die Nachricht die wir in der Konsole sehen unmittelbar senden. Die Meldung ist dadurch immer SINGLE Wird diese Option wieder auf 0 gesetzt so können SINGLE, DOUBLE, TRIPLE und QUAD ausgewertet werden. Aber er reagiert etwas langsamer da ja immer erst gewartet werden muss ob es nicht ein Doppelklick werden soll. Ein langer Tastendruck (>4 Sekunden) kann einen Reset auf Werkseinstellungen hervorrufen SetOption1 1 soll das Verhalten deaktivieren Eine genaue Beschreibung von SetOption13 0 findet Ihr hier: https://tasmota.github.io/docs/Buttons-and-Switches/#multi-press-functions
Wenn man dann einen Taster drückt / sich ein Reedkontakt schließt usw. gibt es eine MQTT Meldung:
Auf die reagiere ich dann innerhalb von ioBroker.Man kann das auch mit Fake-Relais lösen, eines pro Taster , dann wechselt jeweils ein POWER1 / POWER2 etc. von ON auf OFF und umgekehrt
Die Lösung hatte ich mal für ein Bedienfeld mit Display zusammengesucht, seit dem schaue ich mir das dann immer bei mir selbst ab: https://znil.net/index.php?title=ESP8266_Wemos_D1_Mini_mit_Tasmota_und_OLED_Display_I2C_SSH1106_und_4_Taster
Ohne Display reicht wie geschrieben das Standard-Tasmota.
Bei meinem Briefkasten+ Paketbox habe ich Fake-Relais eingesetzt:
Die beidenSwitch
sind Reedkontakte an den Klappen. Die Relais gibt es gar nicht.
Wird eine Klappe geöffnet springt es im Hauptmenü aufON
, schließt sich die Klappe wieder geht es wieder aufOFF
Das ganze kommt per MQTT unter
stat
an:
DerPOWER
ohne Zahl ist noch vom einrichten, die anderen beiden ändern sich dann beim Bewegen der Klappen. -
Hi bananajoe, wie hast das beim Briefkasten gelöst ?
Sobald sich die Klappe vom Briefkasten wieder schließt, also der Brief liegt drin, dann ist der Status ja wieder "zu" oder halt 0 oder 1, je nach Einstellung.Bei meinen ersten Tests MQTT alle 10 Sekunden, kam es vor, das ich wenn ich sagen wir Öffnen einwerfen schließen, das unter 5 Sekunden schaffe, dann merkt Tasmota nicht, das der Briefkasten geöffnet wurde.
-
@berndsolar13 wie MQTT alle 10 Sekunden? Die POWER Meldungen (oder auch die Button Varianten) senden immer unmittelbar bei Änderung.
Es gibt Dinge die Tasmota nur Turnusmäßig mit der
Teleperiod
sendet, also minimal alle 10 Sekunden. Wenn sich ein Button/Relais ändert sendet er das unter/stat/MQTT-Gerätename/
immer sofort. Schickst du über/cmd/MQTT-Gerätename
einen Befehl zum Tasmota siehst dort unter/stat/MQTT-Gerätename/RESULT
immer unmittelbar die Antwort.Ich muss zugeben das mein Briefkasten etwas langsamer reagiert als der ZigBee Sensor zuvor, das wird aber den 5m Kabel an den Reed-Kontakten geschuldet sein (ESP sitzt im Keller, Sensoren über Datenkabel am Briefkasten). Aber so in einer Sekunde reagiert der. (Ja, eine Sekunde kann lang sein).
-
Ich habe am ESP 12 Reedkontakte (10 Fenster + Haustür+ Briefkasten)
Also hab ich doch nur 1x Power für 12 Switche ?
Sobald eines der Kontakte (Fenster sich öffnet) wird sofort Power per MQTT gesendet, ja aber da weiß ich ja nicht, was es ist.Ich versendet alle 10 Sekunden quasi an MQTT
fenster/stube "ZU"
fenster/schlafzimmer "AUF" -
@berndsolar13 Dann die Variante von meinem Link, die Sensoren als Buttons konfigurien und entkoppeln. Dann bekommst du unmittelbar bei Änderung eine MQTT Meldung.
Wenn ich du wäre, würde ich das mit einem 2. ESP Testen, du hast ja bestimmt mehr als einen gekauft.
Wenn es funktioniert kannst du den ESP dann ja einfach tauschen (alle Kontakte umstecken).
Das ist jedenfalls meine Vorgehensweise, erst das neue bauen, dann erst das funktionierende tauschen, so hat man keinen Stress.Ich muss aber zugeben das ich noch keine 12 Kontakte an einem ESP hatte, ich setze eher pro System einen ein (1x für Briefkasten, 1x für Klingel, 1x für Kühlschranktürüberwachung, 1x für Buzzer "Musik" usw.)
Mit der
Button_n
oderButton_i
Methode bekommst du maximal 8 Sensoren/Taster gepackt, zumindest kann man im Default-Image nur 1 bis 8 Konfigurieren (am ESP8266) -
Verstehe ich bekomme dann "theoretisch" bis Power 11 ? also wie in deinem Bild ?
Wenn ja, das wäre natürlich interessant, da dann nur gesendet wird, wenn sich wirklich was tut.
hab noch 3 ESP32 und 2 ESP8266 hier zum basteln liegen, so mache ich das auch immer.
Basteln mit dem Ersatz Dingern, wenn klappt, wird aus dem Baselding das echte, und das andere wird zum BastelWenn das klappt, bleibt doch trotzdem noch das Problem, das wenn sich beim schließen des Briefkastens der Status weider auf "zu" oder wie im Bild auf "OFF" ändert oder ? Wie sehe ich dann 2h später das er sich mal geöffent hatte ?
-
wenn du schneller 10 sec seien möchtest mach ein publish zum Datenpunkt rein.
+>publish stat/%topic%/....................
Das else ist nicht so schön, würde ich vermeiden. Ordne das Glasklar zu
wenn offen dann
wenn zu dann
else kann alles außer 1 sein auch Briekasten entwendet -
nö, bei den Fenster ist es ja quasi egal
Die 10 Sekunden waren mir nur wichtig wegen des Briefkastens.
Das hab ich mit dem Counter gelöst,@ralla66 sagte in alte Fenstersensoren Smart machen:
else kann alles außer 1 sein auch Briekasten entwendet
Die Säcke
Hab versucht um 21:00 den Counter auf 0 zu setzen, oder besser ich hab mir das zusammen gereimt
hr=hours if chg[hr]==21 then print reset couter briefcount=0 endif
klappte aber nicht, was hab ich falsch gemacht ?
Das print war nur zur Kontrolle (Debug) damit ich es in der Konsole sehe