Ich muss das Thema nochmals aufgreifen. Die letzten Tage ist die Sonne auf meine Südseiten Fenster gefährlich den optischen TFKs nahe gekommen. Dank des Schrumpfschlauches war die Abschattung groß genug, aber… . Da die Gefahr nur bei offenem Fenster besteht und ich was Zuverlässiges brauche, habe ich @papas Idee aufgegriffen und mit meinen „naiven“ Programmierkenntnissen versucht das umzusetzen. Die erste Hürde ist und war einen zusätzlichen Ausgang in den Code zu definieren. Bin natürlich gescheitert da wahrscheinlich zu blond.
Aus Zeit und Nerven Gründen habe ich einfach in der Asksinpp.h ein PIN (pullup_pin 3) definiert. . Auch da ist mir nichts Besseres eingefallen. Zum Glück hat meine Frau die Namen der Kinder ausgesucht.
Aber
ACHTUNG! für eventuelle Nach Amer. Die Asksinpp.h verliert dadurch ihre allgemeine Gültigkeit. Oder anders gesagt, könnte es zu Komplikationen mit anderen Projekten kommen. Also nur verwenden in Verbindung mit dem HM-SEC-SCO.
Kurze Beschreibung: Wie @papa ja schon vorgeschlagen hat prüfe ich erst den Zustand am PIN 9. Liegt ein HIGH an ist der Fototransistor geschlossen (kein externer Lichteinfall) In diesem Fall wird die Infrarot LED zugeschaltet und die Abfrage am PIN 9 erfolgt wie vorher. Ist der Transistor durchgeschaltet also am PIN 9 ein LOW, wird das Fenster als offen gemeldet und die Infrarot LED bleibt aus. Ändert sich der Zustand, weil die Sonne untergegangen ist, dass Fenster ist aber immer noch offen, wird mit der Infrarot überprüft es gibt aber keinen Statuswechsel oder besser, die CCU bekommt das nicht mitgeteilt. Erst wenn der Transistor durch die LED durchlässig wird, geht die Meldung „Fenster geschlossen“ an die CCU. Das läuft jetzt im Test seit 2 Tagen, wobei ich die Sonne mit einer Taschenlampe.
Code nach Hinweis gelöscht!
Noch eine Sache. Mir persönlich reicht eine Abfrage alle 2 Sekunden. Die andere Zeit soll der Prozessor schlafen, würde zusätzlich Strom sparen aber wo kann man das einstellen. Auch dafür bin ich zu blond.