
esphome:
name: "tuersensor-buero"
friendly_name: "tuersensor-buero"
esp32:
board: esp32dev
framework:
type: esp-idf
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "XXXX"
ota:
- platform: esphome
password: "XXX"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Tuersensor Fallback Hotspot"
password: "XX"
captive_portal:
binary_sensor:
- platform: gpio
id: sensor_22
pin:
number: 22
mode: INPUT_PULLDOWN
internal: true
on_state:
- lambda: |-
if (id(sensor_22).state) {
id(riegelstatus).publish_state("Gekippt");
} else if (id(sensor_21).state) {
id(riegelstatus).publish_state("Offen");
} else {
id(riegelstatus).publish_state("Geschlossen");
}
- platform: gpio
id: sensor_21
pin:
number: 21
mode: INPUT_PULLDOWN
internal: true
on_state:
- lambda: |-
if (id(sensor_22).state) {
id(riegelstatus).publish_state("Gekippt");
} else if (id(sensor_21).state) {
id(riegelstatus).publish_state("Offen");
} else {
id(riegelstatus).publish_state("Geschlossen");
}
- platform: gpio
id: sensor_23
name: "Tür Schließkontakt"
pin:
number: 23
mode: INPUT_PULLDOWN
inverted: true
device_class: door
text_sensor:
- platform: template
name: "Riegelstatus"
id: riegelstatus
|
|
|
|
|
|
VCC und GND werden einfach durchverbunden.
GPIO22: Unterer Magnetsensor
GPIO21: Mittlerer Magnetsensor
GPIO23: Oberer Magnetsensor
Wenn du aus irgend welchen Gründen andere Pins verwenden musst, kannst du sie einfach in der Config umstellen.