NEWS
alte Fenstersensoren Smart machen
-
Haus vor 15 Jahren gebaut
Die gleich mit rein gemacht, das war quasi Analoges Smarthome.
Da ich gerade Erfahrungen mit iobroker sammle, dachte ich, ich könnte das mit einbauen.
Zähler, Balkonkraftwerk, Smarte Steckdose, als nächstes Temperatur Werte von den Zimmern mit einem oder mehreren Wemos D1.Da dachte ich mir, ich mache das auch mal smart, Wollte erstmal wissen, wie ich diese Signale auswerte. Grob hab ich mir vorgestellt, ich nehme das 5V oder 3.3 V Signal, schicke es zu jedem Reed Kontakt, und immer wenn es zurück kommt, weiß der Wemos oder ESP32, das dieses Fenster / Tür offen ist.
Ich finde solche Dashboards mit den Infos irgendwie faszinierend
Oder ich baue eine Kamera vor das LED Display, was die LEDs ausließt, was aber irgendwie komisch wäre. -
Hab mal gegoogelt, geht wohl mit ESPHome
https://community.home-assistant.io/t/d1-mini-and-magnetic-door-trap/341884Werde es mal mit einem testen, und schauen, wie viele ich pro Wemos oder EPS32 unter bekomme.
-
https://randomnerdtutorials.com/esp32-pinout-reference-gpios/
So ein ESP32 sollte genügend Inputs haben.
Und ein Breakout Board wie dieses hier macht das verkabeln recht einfach.
-
das Board ist cool, damit kann man ja einfach die Adern anstöpseln, kannte ich noch nicht.
Hab noch 2 Wemos rum liegen, damit teste ich es erstmal, wenn alles läuft, hole ich mir einen ESP32 kostet auf Ebay ja auch nur einen 5er
-
Tasmota Generic18, GPIO als Switch, GPIO nach GND verändert 0 und 1
scripting dann sieht das so aus
zum spielen, mit Display TM1637 und Tempfühler :
switch1 und 2 ist ein Pushbutton, + - des Vorgabewertes>D Timer=0 t1=123 t2=0 t3=0 i1="" i2="" i3="" WERT=0 dimmer=21 sw1=0 sw2=0 SWT1=0 SWT2=0 >BS setoption64 1 DisplayType 0 DisplayModel 15 >S Timer+=1 ;print R Timer ist %Timer% SWT1=sw[0] SWT2=sw[1] ;print SWT1 ist %SWT1% if SWT1==0 then print Switch geschaltet plus dimmer=dimmer+1 endif if SWT2==0 then print Switch geschaltet plus dimmer=dimmer-1 endif if Timer==1 then ->DisplayClear ->DisplayText O %0t1% endif if Timer==4 then ->DisplayClear ->DisplayText H %0t2% endif if Timer==8 then ->DisplayClear ->DisplayText S %0t3% endif if Timer==12 then ->DisplayClear ->DisplayText U %0dimmer% endif if Timer>16 then Timer=0 endif >T t1=DS18B20_1#Temperature t2=DS18B20_2#Temperature t3=DS18B20_3#Temperature i1=DS18B20_1#Id i2=DS18B20_2#Id i3=DS18B20_3#Id if t1>dimmer then =>Power1 1 print Power 1 ON print %t1% else =>Power1 0 print Power 1 OFF print %t1% endif >W sl(0 100 dimmer "0" "Vorgabe Wert Grad" "100") Vorgabe Wert Grad {m} %dimmer% °C Switch 1{m} %0SWT1% Switch 2{m} %0SWT2% #
#define USE_SCRIPT_STATUS #define USE_WEBSEND_RESPONSE #define USE_SCRIPT_STATUS #define USE_SCRIPT_FULL_JSON_PARSER #define USE_SCRIPT_JSON_EXPORT #define SUPPORT_MQTT_EVENT #define USE_SML_M #define USE_SCRIPT_WEB_DISPLAY #define USE_SCRIPT_SERIAL #define USE_DISPLAY #define DS18X20_MAX_SENSORS 3 #define USE_DISPLAY_TM1637
-
hi, du bist ja mein Display Spezi
Brauche bei Tasmota also 2 GPIOs pro Reed Kontakt ?
Dann wäre es aber schwierig, oder lege ich den 1. von jedem Reed auf den selben GPIO ? -
je nach Wunsch, wenn du jedes Fenster auswerten möchtest benötigt jedes Fenster
einen GPIO.
hier ein GPIO pro Fenster.
Sollte nur irgend ein Fenster ist auf / zu gewünscht sein kannst du diese gemeinsam auf
Plus und GND legen -
Supi
Dann schau ich mal was möglich ist.
Keller kann man zusammenfassen, da reicht eine Info
Tasmota wäre für mich natürlich am besten, ESPHome hab ich noch nie verwendet.
Melde mich dann wenn es soweit ist.Jetzt muss ich nur noch so einen Widerstand finden.
Der Kostet bestimmt nur paar cent, aber 5 € Versand
Lokal im Obi bekommt man so etwas sicher nichtEdit Amazon 10er Pack, 3 Euro, habs mal auf den Liste gesetzt.
-
-> ESPHome hab ich noch nie verwendet
auch nur machen wenn du genug Zeit über hast .eventuelll bekommste den dann bei Reifen Karl
Brauchste nicht unbedingt. Hält nur bei Störungen den Pegel sauberer.
Melde dich wenn du ein Script brauchst, basteln wir dann eben. -
@berndsolar13 Aufpassen bei den nutzbaren GPIOs. Zwei werden beim Download einer neuen Firmware gebraucht(RX, TX), einer für Reset, und einer für den Zustand beim "Aufwachen" wenn Spannung angelegt wird.
Ist die Frage, was für einen "Wemos" Du meinst - da kann es bei Kontakten schon knapp werden. Man könnte auch eine diodenentkoppelte Kreuzmatrix aufbauen, und käme mit 4 Outputs und 4 Inputs aus ... bräuchte aber 16 Dioden... -
Hi zum testen wollte ich erstmal den Wemos D1 ESP8266 nutzen.
Später wird es vermutlich ein ESP 32 werden, da der mehr Anschlüsse hat.
Eventuell schließe ich an den noch ein DHT22 an, falls das geht. -
@berndsolar13 sagte in alte Fenstersensoren Smart machen:
Eventuell schließe ich an den noch ein DHT22 an
geht,
fürn Keller ? BME280 -
@ralla66 sagte in alte Fenstersensoren Smart machen:
BME280
ist der besser ?
Hab zum üben so einen 3er Pack DHT22 in China bestellt, soll in der ersten Januar Woche kommen.
Keller ist immer etwas zu fecht, will das besser überwachen, und mehr Lüften.
Dafür wollte ich dann das Wasser in der Luft berechnen, so das mir das Dashboard dann sagt, guter Zeitpunkt zu lüften. Und ich kann dann verfolgen, ob es was gebracht hat -
BME280 Temperatursensor Luftdruck Feuchtigkeit
DHT22 AM2302 Temperatursensor und Luftfeuchtigkeitssensor -
Luftdruck ist doch im Keller nicht wichtig, oder ?
Hab da auch kein Wein Regal -
Echt nicht, dann reicht der DHT22.
Ne alte Zeiten halt, Analoge Anzeigen, Omma hatte eine Luftdruckanzeige ...... -
Hab heute mal einen ersten Test gemacht.
Klappt soweit ganz gut.Hab den Fensterkontakt wie in deinem Bild an D5 angeschlossen.
In der Konsole wird erkannt, ob offen oder geschlossen.
Aber irgendwie erkennt er es als Power ON und OFF.Deswegen kommt per MQTT in Iobroker der POWER Status mit True der False an.
Wenn ich nur einen Kontakt anschließe, würde es ja gehen.
Aber wenn es z.B. 5 sind müsste ich dann nicht 5 verschiedene Status Meldungen per MQTT senden ?Es gibt in MQTT noch folgendes
sonoff.0.tamso_relais.Switch1
Das wäre vermutlich das was ich suche, z.B. später noch Switch 1 - 5 z.B.
Kann es sein, das ich das in der Script Konsole noch irgendwie verbinden muss ? -
erledigt, geht doch
Hatte die 5 Min bei MQTT vergessen.
Wird ja nur der Power Wert sofort bei Änderung an den MQTT Server gesendet
Der Status der Reed Kontakte wird ja nur nach dem Ablauf der gespeicherten Zeit gesendet.Kam dann an, sowohl für Switch1 als auch für Switch2
22:35:41.420 MQT: tele/tasmota_0E059C/SENSOR = {"Time":"2023-12-23T22:35:41","Switch1":"ON","Switch2":"OFF"}
-
-
wow, da ist ja noch so viel möglich
Seit 5 Jahren steht schon die Briefkasten Überwachung auf dem Zettel.
Im Kabel der Telefonanlage sind noch paar Adern frei, da werde ich noch so einen Reed Kontakt an den Briefkasten basteln.Dürfte mit einem Reedkontakt aber schwierig werden, denn wenn der Postbote den Briefkasten innerhalb von 10 Sekunden wieder schließt, also kurz vor der nächsten MQTT Sendung, dann verpasse ich den
Oder kann man tasmota davon überzeugen, das es sofort ein Update macht, sobald sich von einer GPIO der Status ändert ? Dann müsste ich nur schauen, ob es heute mal eine Status Änderung auf Switch XYZ gab. Dann wüste ich, Briefkasten hat sich geöffnet.