esphome: name: kc868-e16s platform: ESP32 board: esp32dev # 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_mode: GPIO17_OUT phy_addr: 0 # Optional manual IP manual_ip: static_ip: 192.168.1.197 gateway: 192.168.1.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: gpio name: "e16s-output1" id: e16s_output1 pin: pcf8574: pcf8574_hub_out_1 number: 0 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output2" id: e16s_output2 pin: pcf8574: pcf8574_hub_out_1 number: 1 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output3" id: e16s_output3 on_turn_on: - delay: 1000ms - switch.turn_off: e16s_output3 pin: pcf8574: pcf8574_hub_out_1 number: 2 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output4" id: e16s_output4 interlock: [e16s_output5] pin: pcf8574: pcf8574_hub_out_1 number: 3 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output5" id: e16s_output5 interlock: [e16s_output4] pin: pcf8574: pcf8574_hub_out_1 number: 4 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output6" id: e16s_output6 pin: pcf8574: pcf8574_hub_out_1 number: 5 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output7" pin: pcf8574: pcf8574_hub_out_1 number: 6 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output8" pin: pcf8574: pcf8574_hub_out_1 number: 7 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output9" pin: pcf8574: pcf8574_hub_out_2 number: 0 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output10" pin: pcf8574: pcf8574_hub_out_2 number: 1 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output11" pin: pcf8574: pcf8574_hub_out_2 number: 2 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output12" pin: pcf8574: pcf8574_hub_out_2 number: 3 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output13" pin: pcf8574: pcf8574_hub_out_2 number: 4 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output14" pin: pcf8574: pcf8574_hub_out_2 number: 5 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output15" pin: pcf8574: pcf8574_hub_out_2 number: 6 mode: OUTPUT inverted: true - platform: gpio name: "e16s-output16" pin: pcf8574: pcf8574_hub_out_2 number: 7 mode: OUTPUT inverted: true binary_sensor: - platform: gpio name: "e16s-input1" on_press: then: - switch.toggle: e16s_output1 pin: pcf8574: pcf8574_hub_in_1 number: 0 mode: INPUT inverted: true - platform: gpio name: "e16s-input2" on_press: then: - switch.turn_on: e16s_output2 on_release: then: - switch.turn_off: e16s_output2 pin: pcf8574: pcf8574_hub_in_1 number: 1 mode: INPUT inverted: true - platform: gpio name: "e16s-input3" on_press: then: - switch.toggle: e16s_output3 pin: pcf8574: pcf8574_hub_in_1 number: 2 mode: INPUT inverted: true - platform: gpio name: "e16s-input4" on_press: then: - switch.toggle: e16s_output4 pin: pcf8574: pcf8574_hub_in_1 number: 3 mode: INPUT inverted: true - platform: gpio name: "e16s-input5" on_press: then: - switch.toggle: e16s_output5 pin: pcf8574: pcf8574_hub_in_1 number: 4 mode: INPUT inverted: true - platform: gpio name: "e16s-input6" on_press: then: - switch.toggle: e16s_output6 pin: pcf8574: pcf8574_hub_in_1 number: 5 mode: INPUT inverted: true - platform: gpio name: "e16s-input7" pin: pcf8574: pcf8574_hub_in_1 number: 6 mode: INPUT inverted: true - platform: gpio name: "e16s-input8" pin: pcf8574: pcf8574_hub_in_1 number: 7 mode: INPUT inverted: true - platform: gpio name: "e16s-input9" pin: pcf8574: pcf8574_hub_in_2 number: 0 mode: INPUT inverted: true - platform: gpio name: "e16s-input10" pin: pcf8574: pcf8574_hub_in_2 number: 1 mode: INPUT inverted: true - platform: gpio name: "e16s-input11" pin: pcf8574: pcf8574_hub_in_2 number: 2 mode: INPUT inverted: true - platform: gpio name: "e16s-input12" pin: pcf8574: pcf8574_hub_in_2 number: 3 mode: INPUT inverted: true - platform: gpio name: "e16s-input13" pin: pcf8574: pcf8574_hub_in_2 number: 4 mode: INPUT inverted: true - platform: gpio name: "e16s-input14" pin: pcf8574: pcf8574_hub_in_2 number: 5 mode: INPUT inverted: true - platform: gpio name: "e16s-input15" pin: pcf8574: pcf8574_hub_in_2 number: 6 mode: INPUT inverted: true - platform: gpio name: "e16s-input16" pin: pcf8574: pcf8574_hub_in_2 number: 7 mode: INPUT inverted: true # Enable logging logger: # Enable Home Assistant API api: