substitutions: name: boneio-esp-cover-mix friendly_name: 'BoneIO ESP Cover Mix Switches' esphome: name: '${name}' friendly_name: '${friendly_name}' platform: ESP32 board: nodemcu-32s name_add_mac_suffix: true project: name: boneio.32x10-cover-mix-switches version: '1.0' ethernet: id: eth type: LAN8720 mdc_pin: GPIO23 mdio_pin: GPIO18 clk_mode: GPIO0_IN phy_addr: 1 power_pin: GPIO16 dashboard_import: package_import_url: github://boneIO-eu/esphome/boneio-cover_mix_switches_v0_7.yaml@v1.0 import_full_config: true packages: internals_packages: url: https://github.com/boneIO-eu/esphome ref: v1.0 files: [ 'devices/buzzer.yaml', 'devices_v0_7/display.yaml', 'devices_v0_7/i2c.yaml', 'devices_v0_7/ina219.yaml', 'devices_v0_7/lm75b.yaml', 'devices_v0_7/pcf.yaml', 'boards/8_covers_16_output.yaml', # 'devices_v0_7/one_wire.yaml', # 'devices_v0_7/uart.yaml', ] logger: api: ota: password: boneio web_server: port: 80 local: true time: - platform: homeassistant timezone: Europe/Warsaw id: homeassistant_time cover: - platform: time_based name: 'Cover 01' id: cover_01 open_action: - switch.turn_off: cover_close_01_out02 - switch.turn_on: cover_open_01_out01 open_duration: 10s close_action: - switch.turn_off: cover_open_01_out01 - switch.turn_on: cover_close_01_out02 close_duration: 10s stop_action: - switch.turn_off: cover_open_01_out01 - switch.turn_off: cover_close_01_out02 - platform: time_based name: 'Cover 02' id: cover_02 open_action: - switch.turn_off: cover_close_02_out04 - switch.turn_on: cover_open_02_out03 open_duration: 10s close_action: - switch.turn_off: cover_open_02_out03 - switch.turn_on: cover_close_02_out04 close_duration: 10s stop_action: - switch.turn_off: cover_open_02_out03 - switch.turn_off: cover_close_02_out04 - platform: time_based name: 'Cover 03' id: cover_03 open_action: - switch.turn_off: cover_close_03_out06 - switch.turn_on: cover_open_03_out05 open_duration: 10s close_action: - switch.turn_off: cover_open_03_out05 - switch.turn_on: cover_close_03_out06 close_duration: 10s stop_action: - switch.turn_off: cover_open_03_out05 - switch.turn_off: cover_close_03_out06 - platform: time_based name: 'Cover 04' id: cover_04 open_action: - switch.turn_off: cover_close_04_out08 - switch.turn_on: cover_open_04_out07 open_duration: 10s close_action: - switch.turn_off: cover_open_04_out07 - switch.turn_on: cover_close_04_out08 close_duration: 10s stop_action: - switch.turn_off: cover_open_04_out07 - switch.turn_off: cover_close_04_out08 - platform: time_based name: 'Cover 05' id: cover_05 open_action: - switch.turn_off: cover_close_05_out10 - switch.turn_on: cover_open_05_out09 open_duration: 10s close_action: - switch.turn_off: cover_open_05_out09 - switch.turn_on: cover_close_05_out10 close_duration: 10s stop_action: - switch.turn_off: cover_open_05_out09 - switch.turn_off: cover_close_05_out10 - platform: time_based name: 'Cover 06' id: cover_06 open_action: - switch.turn_off: cover_close_06_out12 - switch.turn_on: cover_open_06_out11 open_duration: 10s close_action: - switch.turn_off: cover_open_06_out11 - switch.turn_on: cover_close_06_out12 close_duration: 10s stop_action: - switch.turn_off: cover_open_06_out11 - switch.turn_off: cover_close_06_out12 - platform: time_based name: 'Cover 07' id: cover_07 open_action: - switch.turn_off: cover_close_07_out14 - switch.turn_on: cover_open_07_out13 open_duration: 10s close_action: - switch.turn_off: cover_open_07_out13 - switch.turn_on: cover_close_07_out14 close_duration: 10s stop_action: - switch.turn_off: cover_open_07_out13 - switch.turn_off: cover_close_07_out14 - platform: time_based name: 'Cover 08' id: cover_08 open_action: - switch.turn_off: cover_close_08_out16 - switch.turn_on: cover_open_08_out15 open_duration: 10s close_action: - switch.turn_off: cover_open_08_out15 - switch.turn_on: cover_close_08_out16 close_duration: 10s stop_action: - switch.turn_off: cover_open_08_out15 - switch.turn_off: cover_close_08_out16 switch: - platform: output name: 'Switch 16' output: out_16 id: switch_16 - platform: output name: 'Switch 17' output: out_17 id: switch_17 - platform: output name: 'Switch 18' output: out_18 id: switch_18 - platform: output name: 'Switch 19' output: out_19 id: switch_19 - platform: output name: 'Switch 20' output: out_20 id: switch_20 - platform: output name: 'Switch 21' output: out_21 id: switch_21 - platform: output name: 'Switch 22' output: out_22 id: switch_22 - platform: output name: 'Switch 23' output: out_23 id: switch_23 - platform: output name: 'Switch 24' output: out_24 id: switch_24 - platform: output name: 'Switch 25' output: out_25 id: switch_25 - platform: output name: 'Switch 26' output: out_26 id: switch_26 - platform: output name: 'Switch 27' output: out_27 id: switch_27 - platform: output name: 'Switch 28' output: out_28 id: switch_28 - platform: output name: 'Switch 29' output: out_29 id: switch_29 - platform: output name: 'Switch 30' output: out_30 id: switch_30 - platform: output name: 'Switch 31' output: out_31 id: switch_31 - platform: output name: 'Switch 32' output: out_32 id: switch_32 binary_sensor: - platform: gpio name: 'IN_01' id: in_01 pin: pcf8574: pcf_inputs_1to14 number: 0 mode: input: true inverted: true on_press: then: - cover.open: cover_01 on_release: then: - cover.stop: cover_01 - platform: gpio name: 'IN_02' id: in_02 pin: pcf8574: pcf_inputs_1to14 number: 1 mode: input: true inverted: true on_press: then: - cover.close: cover_01 on_release: then: - cover.stop: cover_01 - platform: gpio name: 'IN_03' id: in_03 pin: pcf8574: pcf_inputs_1to14 number: 2 mode: input: true inverted: true on_press: then: - cover.open: cover_02 on_release: then: - cover.stop: cover_02 - platform: gpio name: 'IN_04' id: in_04 pin: pcf8574: pcf_inputs_1to14 number: 3 mode: input: true inverted: true on_press: then: - cover.close: cover_02 on_release: then: - cover.stop: cover_02 - platform: gpio name: 'IN_05' id: in_05 pin: pcf8574: pcf_inputs_1to14 number: 4 mode: input: true inverted: true on_press: then: - cover.open: cover_03 on_release: then: - cover.stop: cover_03 - platform: gpio name: 'IN_06' id: in_06 pin: pcf8574: pcf_inputs_1to14 number: 5 mode: input: true inverted: true on_press: then: - cover.close: cover_03 on_release: then: - cover.stop: cover_03 - platform: gpio name: 'IN_07' id: in_07 pin: pcf8574: pcf_inputs_1to14 number: 6 mode: input: true inverted: true on_press: then: - cover.open: cover_04 on_release: then: - cover.stop: cover_04 - platform: gpio name: 'IN_08' id: in_08 pin: pcf8574: pcf_inputs_1to14 number: 8 mode: input: true inverted: true on_press: then: - cover.close: cover_04 on_release: then: - cover.stop: cover_04 - platform: gpio name: 'IN_09' id: in_09 pin: pcf8574: pcf_inputs_1to14 number: 9 mode: input: true inverted: true on_press: then: - cover.open: cover_05 on_release: then: - cover.stop: cover_05 - platform: gpio name: 'IN_10' id: in_10 pin: pcf8574: pcf_inputs_1to14 number: 10 mode: input: true inverted: true on_press: then: - cover.close: cover_05 on_release: then: - cover.stop: cover_05 - platform: gpio name: 'IN_11' id: in_11 pin: pcf8574: pcf_inputs_1to14 number: 11 mode: input: true inverted: true on_press: then: - cover.open: cover_06 on_release: then: - cover.stop: cover_06 - platform: gpio name: 'IN_12' id: in_12 pin: pcf8574: pcf_inputs_1to14 number: 12 mode: input: true inverted: true on_press: then: - cover.close: cover_06 on_release: then: - cover.stop: cover_06 - platform: gpio name: 'IN_13' id: in_13 pin: pcf8574: pcf_inputs_1to14 number: 13 mode: input: true inverted: true on_press: then: - cover.open: cover_07 on_release: then: - cover.stop: cover_07 - platform: gpio name: 'IN_14' id: in_14 pin: pcf8574: pcf_inputs_1to14 number: 14 mode: input: true inverted: true on_press: then: - cover.close: cover_07 on_release: then: - cover.stop: cover_07 - platform: gpio name: 'IN_15' id: in_15 pin: pcf8574: pcf_inputs_15to28 number: 6 mode: input: true inverted: true on_press: then: - switch.toggle: switch_15 - platform: gpio name: 'IN_16' id: in_16 pin: pcf8574: pcf_inputs_15to28 number: 5 mode: input: true inverted: true on_press: then: - switch.toggle: switch_16 - platform: gpio name: 'IN_17' id: in_17 pin: pcf8574: pcf_inputs_15to28 number: 4 mode: input: true inverted: true on_press: then: - switch.toggle: switch_17 - platform: gpio name: 'IN_18' id: in_18 pin: pcf8574: pcf_inputs_15to28 number: 3 mode: input: true inverted: true on_press: then: - switch.toggle: switch_18 - platform: gpio name: 'IN_19' id: in_19 pin: pcf8574: pcf_inputs_15to28 number: 2 mode: input: true inverted: true on_press: then: - switch.toggle: switch_19 - platform: gpio name: 'IN_20' id: in_20 pin: pcf8574: pcf_inputs_15to28 number: 1 mode: input: true inverted: true on_press: then: - switch.toggle: switch_20 - platform: gpio name: 'IN_21' id: in_21 pin: pcf8574: pcf_inputs_15to28 number: 0 mode: input: true inverted: true on_press: then: - switch.toggle: switch_21 - platform: gpio name: 'IN_22' id: in_22 pin: pcf8574: pcf_inputs_15to28 number: 8 mode: input: true inverted: true on_press: then: - switch.toggle: switch_22 - platform: gpio name: 'IN_23' id: in_23 pin: pcf8574: pcf_inputs_15to28 number: 9 mode: input: true inverted: true on_press: then: - switch.toggle: switch_23 - platform: gpio name: 'IN_24' id: in_24 pin: pcf8574: pcf_inputs_15to28 number: 10 mode: input: true inverted: true on_press: then: - switch.toggle: switch_24 - platform: gpio name: 'IN_25' id: in_25 pin: pcf8574: pcf_inputs_15to28 number: 11 mode: input: true inverted: true on_press: then: - switch.toggle: switch_25 - platform: gpio name: 'IN_26' id: in_26 pin: pcf8574: pcf_inputs_15to28 number: 12 mode: input: true inverted: true on_press: then: - switch.toggle: switch_26 - platform: gpio name: 'IN_27' id: in_27 pin: pcf8574: pcf_inputs_15to28 number: 13 mode: input: true inverted: true on_press: then: - switch.toggle: switch_27 - platform: gpio name: 'IN_28' id: in_28 pin: pcf8574: pcf_inputs_15to28 number: 14 mode: input: true inverted: true on_press: then: - switch.toggle: switch_28 - platform: gpio name: 'IN_29' id: in_29 pin: pcf8574: pcf_inputs_28to35_menu number: 0 mode: input: true inverted: true on_press: then: - switch.toggle: switch_29 - platform: gpio name: 'IN_30' id: in_30 pin: pcf8574: pcf_inputs_28to35_menu number: 1 mode: input: true inverted: true on_press: then: - switch.toggle: switch_30 - platform: gpio name: 'IN_31' id: in_31 pin: pcf8574: pcf_inputs_28to35_menu number: 2 mode: input: true inverted: true on_press: then: - switch.toggle: switch_31 - platform: gpio name: 'IN_32' id: in_32 pin: pcf8574: pcf_inputs_28to35_menu number: 3 mode: input: true inverted: true on_press: then: - switch.toggle: switch_32 - platform: gpio name: 'IN_33' pin: pcf8574: pcf_inputs_28to35_menu number: 4 mode: input: true inverted: true - platform: gpio name: 'IN_34' pin: pcf8574: pcf_inputs_28to35_menu number: 5 mode: input: true inverted: true - platform: gpio name: 'IN_35' pin: pcf8574: pcf_inputs_28to35_menu number: 6 mode: input: true inverted: true