Hallo zusammen,
sorry wenn ich so eine triviale Frage stelle, aber ich hab da leider nix passendes gefunden:
ich hab einen ESP32 WROOM 32 (aka ESP-Devkit-V1) und möchte so etwas simples wie einen Taster simulieren.
Heisst: wenn ich z.B. Pin 3V3 und GPIO39 verbinde, möchte ich das ein Ereignis ausgelöst wird.
Status: ich habe den ESP geflasht, ich kann auch darauf zugreifen (Web-Basis-Interface geht auch).
Folgender Code geht aber nicht (es wird kein Fehler angezeigt):
Ich möchte nur, dass wenn ein Taster gedrückt wird, ich per HA informiert werde (als notification oder sowas), aber das Ereignis bleibt aus…
Was ist hier falsch?
Sorry, ich bin noch komplett am Anfang mit sowas, meine Lernkurve ist grad ziemlich steil…
Wenn ich so etwas programmiere dann mit MQTT.
Hier mein Eintrag in der configuration.yaml
Oder als Schalter auch zu verwenden, dann ändern.
Bei Bedarf kann ich Dir auch den Code des ESP schicken. Flashe aber mit Arduino IDE .-)
Hallo Tialk,
danke Dir für den Input, ich möchte jedoch gerne bei ESPHome bleiben - Arduino IDE ist auch so ein rotes Tuch für mich…
Ich möchte mich da nicht in alle Richtungen bewegen und mich verzetteln.
In der Zwischenzeit habe ich es herausgefunden: der Trigger (binary_sensor) “flattert” extrem, wenn ich den Filter delayed_on_off rausnehme.
ich hab folgendes Code snippet geladen:
09:16:29 [D] [switch:055] 'Schalter Aktor': Sending state ON 09:16:29 [D] [binary_sensor:036] 'Taster Trigger': Sending state OFF 09:16:29 [D] [binary_sensor:036] 'Taster Trigger': Sending state ON 09:16:29 [D] [switch:020] 'Schalter Aktor' Toggling OFF. 09:16:29 [D] [switch:055] 'Schalter Aktor': Sending state OFF 09:16:29 [D] [binary_sensor:036] 'Taster Trigger': Sending state OFF 09:16:29 [D] [binary_sensor:036] 'Taster Trigger': Sending state ON 09:16:29 [D] [switch:020] 'Schalter Aktor' Toggling ON. 09:16:29 [D] [switch:055] 'Schalter Aktor': Sending state ON 09:16:29 [D] [binary_sensor:036] 'Taster Trigger': Sending state OFF
Nun habe ich es mit delayed_on versucht - eh voilá: es geht! Offensichtlich darf der delayed_off Part nicht gesetzt sein, dann erkennt der ESP das auch korrekt.
Wenn man einen GPIO als Input verwendet (es sei denn, man verwendet einen Pin mit integriertem Pull-Down), dann schließt man dazu normalerweise auch einen Pull-Down Widerstand an, um das Flattern zu verhindern.