esphome:   name: relay-module   friendly_name: relay-module esp32:   board: esp32dev   framework:     type: arduino # Enable logging logger: web_server:   port: 80 # Enable Home Assistant API api:   encryption:     key: "xxx" ota:   - platform: esphome     password: "xxx"   # Example configuration entry for ESP32 i2c:   sda: 16   scl: 15   scan: true   id: bus_a # Example configuration entry ethernet:   type: LAN8720   mdc_pin: GPIO23   mdio_pin: GPIO18   clk: GPIO17_OUT   phy_addr: 0 # Optional manual IP   manual_ip:     static_ip: 192.168.66.67     gateway: 192.168.66.1     subnet: 255.255.255.0 # Example configuration entry pcf8574:   - id: 'pcf8574_hub_out_1'  # for output channel 1-8     address: 0x21   - id: 'pcf8574_hub_out_2'  # for output channel 9-16     address: 0x25   - id: 'pcf8574_hub_in_1'  # for input channel 1-8     address: 0x22   - id: 'pcf8574_hub_in_2'  # for input channel 9-16     address: 0x24 # Individual outputs switch:   - platform: restart     name: "Relay Module Restart"   - platform: gpio     name: "K01 - Living Lights"     pin:       pcf8574: pcf8574_hub_out_1       number: 0       mode: OUTPUT       inverted: true     id: output1   - platform: gpio     name: "K02 - Kitchen Lights"     pin:       pcf8574: pcf8574_hub_out_1       number: 1       mode: OUTPUT       inverted: true     id: output2   - platform: gpio     name: "K03 - Bathroom Lights"     pin:       pcf8574: pcf8574_hub_out_1       number: 2       mode: OUTPUT       inverted: true     id: output3   - platform: gpio     name: "K04 - Hallway Lights"     pin:       pcf8574: pcf8574_hub_out_1       number: 3       mode: OUTPUT       inverted: true     id: output4   - platform: gpio     name: "K05 - Loft Lights"     pin:       pcf8574: pcf8574_hub_out_1       number: 4       mode: OUTPUT       inverted: true     id: output5   - platform: gpio     name: "K06 - Outdoor Lights"     pin:       pcf8574: pcf8574_hub_out_1       number: 5       mode: OUTPUT       inverted: true     id: output6   - platform: gpio     name: "K07 - Heating"     icon: "mdi:heating-coil"     pin:       pcf8574: pcf8574_hub_out_1       number: 6       mode: OUTPUT       inverted: true     id: output7   - platform: gpio     name: "K08 - Kitchen Appliances"     pin:       pcf8574: pcf8574_hub_out_1       number: 7       mode: OUTPUT       inverted: true     id: output8   - platform: gpio     name: "K09 - Water Pump"     pin:       pcf8574: pcf8574_hub_out_2       number: 0       mode: OUTPUT       inverted: true     id: output9     restore_mode: ALWAYS_ON   - platform: gpio     name: "K10 - Living Sockets"     pin:       pcf8574: pcf8574_hub_out_2       number: 1       mode: OUTPUT       inverted: true     id: output10     restore_mode: ALWAYS_ON   - platform: gpio     name: "K11 - Bathroom Sockets"     pin:       pcf8574: pcf8574_hub_out_2       number: 2       mode: OUTPUT       inverted: true     id: output11     restore_mode: ALWAYS_ON   - platform: gpio     name: "K12 - Loft Sockets"     pin:       pcf8574: pcf8574_hub_out_2       number: 3       mode: OUTPUT       inverted: true     id: output12     restore_mode: ALWAYS_ON   - platform: gpio     name: "K13 - Water Heater"     pin:       pcf8574: pcf8574_hub_out_2       number: 4       mode: OUTPUT       inverted: true     id: output13     restore_mode: ALWAYS_ON   - platform: gpio     name: "K14 - Washing Machine"     pin:       pcf8574: pcf8574_hub_out_2       number: 5       mode: OUTPUT       inverted: true     id: output14   - platform: gpio     name: "K15 - AC Unit"     pin:       pcf8574: pcf8574_hub_out_2       number: 6       mode: OUTPUT       inverted: true     id: output15     restore_mode: ALWAYS_ON   - platform: gpio     name: "K16 - Door Lock"     icon: "mdi:lock"     pin:       pcf8574: pcf8574_hub_out_2       number: 7       mode: OUTPUT       inverted: true     id: output16     on_turn_on:     - delay: 2500ms     - switch.turn_off: output16 #-----------INPUTS------------ binary_sensor:   - platform: gpio     name: "DI1 - ALL OFF"     on_press:       then:         - switch.turn_off: output1         - switch.turn_off: output2         - switch.turn_off: output3         - switch.turn_off: output4         - switch.turn_off: output5         - switch.turn_off: output6         - switch.turn_off: output7         - switch.turn_off: output8         - switch.turn_off: output9         - switch.turn_off: output10         - switch.turn_off: output11         - switch.turn_off: output12         - switch.turn_off: output13         - switch.turn_off: output14         - switch.turn_off: output15         - switch.turn_off: output16     pin:       pcf8574: pcf8574_hub_in_1       number: 0       mode: INPUT       inverted: true   - platform: gpio     name: "DI2 - ALL ON"     on_press:       then:         - switch.turn_on: output1         - switch.turn_on: output2         - switch.turn_on: output3         - switch.turn_on: output4         - switch.turn_on: output5         - switch.turn_on: output6         - switch.turn_on: output7         - switch.turn_on: output8         - switch.turn_on: output9         - switch.turn_on: output10         - switch.turn_on: output11         - switch.turn_on: output12         - switch.turn_on: output13         - switch.turn_on: output14         - switch.turn_on: output15         - switch.turn_on: output16     pin:       pcf8574: pcf8574_hub_in_1       number: 1       mode: INPUT       inverted: true   - platform: gpio     name: "DI3 - OFF GRID MODE"     on_press:       then: #        - switch.turn_off: output1 #        - switch.turn_off: output2 #        - switch.turn_off: output3 #        - switch.turn_off: output4 #        - switch.turn_off: output5 #        - switch.turn_off: output6         - switch.turn_off: output7         - switch.turn_off: output8 #        - switch.turn_off: output9 #        - switch.turn_off: output10 #        - switch.turn_off: output11 #        - switch.turn_off: output12 #        - switch.turn_off: output13         - switch.turn_off: output14 #        - switch.turn_off: output15 #        - switch.turn_off: output16     pin:       pcf8574: pcf8574_hub_in_1       number: 2       mode: INPUT       inverted: true   - platform: gpio     name: "DI4 - Backup Input"     pin:       pcf8574: pcf8574_hub_in_1       number: 3       mode: INPUT       inverted: true   - platform: gpio     name: "DI5 - Backup Input"     pin:       pcf8574: pcf8574_hub_in_1       number: 4       mode: INPUT       inverted: true   - platform: gpio     name: "DI6 - Motion Sensor"     pin:       pcf8574: pcf8574_hub_in_1       number: 5       mode: INPUT       inverted: true   - platform: gpio     name: "DI7 - Window Sensor 2"     pin:       pcf8574: pcf8574_hub_in_1       number: 6       mode: INPUT       inverted: true   - platform: gpio     name: "DI8 - Window Sensor 1"     pin:       pcf8574: pcf8574_hub_in_1       number: 7       mode: INPUT       inverted: true ########################### config inputuri 1 la 1 de aici in jos ###################   - platform: gpio     name: "DI9 - Loft B2"     on_press:       then:         - switch.toggle: output2     pin:       pcf8574: pcf8574_hub_in_2       number: 0       mode: INPUT       inverted: true   - platform: gpio     name: "DI10 - Loft B1"     on_press:       then:         - switch.toggle: output1     pin:       pcf8574: pcf8574_hub_in_2       number: 1       mode: INPUT       inverted: true   - platform: gpio     name: "DI11 - Entrance Right B1"     on_press:       then:         - switch.toggle: output6     pin:       pcf8574: pcf8574_hub_in_2       number: 2       mode: INPUT       inverted: true   - platform: gpio     name: "DI12 - Loft B+Socket"     on_press:       then:         - switch.toggle: output5     pin:       pcf8574: pcf8574_hub_in_2       number: 3       mode: INPUT       inverted: true   - platform: gpio     name: "DI13 - Bathroom B2"     on_press:       then:         - switch.toggle: output4     pin:       pcf8574: pcf8574_hub_in_2       number: 4       mode: INPUT       inverted: true   - platform: gpio     name: "DI14 - Bathroom B1"     on_press:       then:         - switch.toggle: output3     pin:       pcf8574: pcf8574_hub_in_2       number: 5       mode: INPUT       inverted: true ######### configured for long press too ############   - platform: gpio     name: "DI15 - Entrance Left B2"     pin:       pcf8574: pcf8574_hub_in_2       number: 6       mode: INPUT       inverted: true     on_click: #    - min_length: 50ms     - max_length: 350ms       then:         - switch.toggle: output2     on_multi_click:     - timing:         - ON for at least 1s       then:         - homeassistant.event:             event: esphome.button_pressed             data:               message: Button2 Hold   - platform: gpio     name: "DI16 - Entrance Left B1"     pin:       pcf8574: pcf8574_hub_in_2       number: 7       mode: INPUT       inverted: true     on_click: #    - min_length: 50ms     - max_length: 350ms       then:         - switch.toggle: output1     on_multi_click:     - timing:         - ON for at least 1s       then:         - homeassistant.event:             event: esphome.button_pressed             data:               message: Button1 Hold #dallas: one_wire:   - platform: gpio     pin: 14     update_interval: 10s sensor:   - platform: dallas_temp     address: 0x103c01b55689a528     name: "Temperature in Electrical Box"   - platform: dallas_temp     address: 0x7d3de1e38026fc28     name: "Underfloor Temperature"