substitutions: name: boneio-c-06 friendly_name: 'BoneIO ESP Cover' serial_prefix: 'esp' #Don't change it. esphome: name: '${name}' friendly_name: '${friendly_name}' name_add_mac_suffix: true project: name: boneio.32x10-cover_v0_5-v0_6 version: '0.6' esp32: board: nodemcu-32s 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_v0_5-v0_6.yaml@latest import_full_config: true packages: internals_packages: url: https://github.com/boneIO-eu/esphome ref: v1.4.0 files: [ 'devices/buzzer.yaml', 'devices/serial_no.yaml', 'devices_v0_5-v0_6/display.yaml', 'devices_v0_5-v0_6/time.yaml', 'devices_v0_5-v0_6/i2c.yaml', 'devices_v0_5-v0_6/ina219.yaml', 'devices_v0_5-v0_6/lm75b.yaml', 'devices_v0_5-v0_6/pcf.yaml', 'boards/16_cover_pcf.yaml', # 'devices_v0_5-v0_6/one_wire.yaml', ] logger: api: reboot_timeout: 0s ota: - platform: esphome web_server: port: 80 local: true time: - platform: homeassistant timezone: Europe/Warsaw id: homeassistant_time on_time_sync: then: ds1307.write_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 - platform: time_based name: 'Cover 09' id: cover_09 open_action: - switch.turn_off: cover_close_09_out18 - switch.turn_on: cover_open_09_out17 open_duration: 10s close_action: - switch.turn_off: cover_open_09_out17 - switch.turn_on: cover_close_09_out18 close_duration: 10s stop_action: - switch.turn_off: cover_open_09_out17 - switch.turn_off: cover_close_09_out18 - platform: time_based name: 'Cover 10' id: cover_10 open_action: - switch.turn_off: cover_close_10_out20 - switch.turn_on: cover_open_10_out19 open_duration: 10s close_action: - switch.turn_off: cover_open_10_out19 - switch.turn_on: cover_close_10_out20 close_duration: 10s stop_action: - switch.turn_off: cover_open_10_out19 - switch.turn_off: cover_close_10_out20 - platform: time_based name: 'Cover 11' id: cover_11 open_action: - switch.turn_off: cover_close_11_out22 - switch.turn_on: cover_open_11_out21 open_duration: 10s close_action: - switch.turn_off: cover_open_11_out21 - switch.turn_on: cover_close_11_out22 close_duration: 10s stop_action: - switch.turn_off: cover_open_11_out21 - switch.turn_off: cover_close_11_out22 - platform: time_based name: 'Cover 12' id: cover_12 open_action: - switch.turn_off: cover_close_12_out24 - switch.turn_on: cover_open_12_out23 open_duration: 10s close_action: - switch.turn_off: cover_open_12_out23 - switch.turn_on: cover_close_12_out24 close_duration: 10s stop_action: - switch.turn_off: cover_open_12_out23 - switch.turn_off: cover_close_12_out24 - platform: time_based name: 'Cover 13' id: cover_13 open_action: - switch.turn_off: cover_close_13_out26 - switch.turn_on: cover_open_13_out25 open_duration: 10s close_action: - switch.turn_off: cover_open_13_out25 - switch.turn_on: cover_close_13_out26 close_duration: 10s stop_action: - switch.turn_off: cover_open_13_out25 - switch.turn_off: cover_close_13_out26 - platform: time_based name: 'Cover 14' id: cover_14 open_action: - switch.turn_off: cover_close_14_out28 - switch.turn_on: cover_open_14_out27 open_duration: 10s close_action: - switch.turn_off: cover_open_14_out27 - switch.turn_on: cover_close_14_out28 close_duration: 10s stop_action: - switch.turn_off: cover_open_14_out27 - switch.turn_off: cover_close_14_out28 - platform: time_based name: 'Cover 15' id: cover_15 open_action: - switch.turn_off: cover_close_15_out30 - switch.turn_on: cover_open_15_out29 open_duration: 10s close_action: - switch.turn_off: cover_open_15_out29 - switch.turn_on: cover_close_15_out30 close_duration: 10s stop_action: - switch.turn_off: cover_open_15_out29 - switch.turn_off: cover_close_15_out30 - platform: time_based name: 'Cover 16' id: cover_16 open_action: - switch.turn_off: cover_close_16_out32 - switch.turn_on: cover_open_16_out31 open_duration: 10s close_action: - switch.turn_off: cover_open_16_out31 - switch.turn_on: cover_close_16_out32 close_duration: 10s stop_action: - switch.turn_off: cover_open_16_out31 - switch.turn_off: cover_close_16_out32 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: - cover.open: cover_08 on_release: then: - cover.stop: cover_08 - platform: gpio name: 'IN_16' id: in_16 pin: pcf8574: pcf_inputs_15to28 number: 5 mode: input: true inverted: true on_press: then: - cover.close: cover_08 on_release: then: - cover.stop: cover_08 - platform: gpio name: 'IN_17' id: in_17 pin: pcf8574: pcf_inputs_15to28 number: 4 mode: input: true inverted: true on_press: then: - cover.open: cover_09 on_release: then: - cover.stop: cover_09 - platform: gpio name: 'IN_18' id: in_18 pin: pcf8574: pcf_inputs_15to28 number: 3 mode: input: true inverted: true on_press: then: - cover.close: cover_09 on_release: then: - cover.stop: cover_09 - platform: gpio name: 'IN_19' id: in_19 pin: pcf8574: pcf_inputs_15to28 number: 2 mode: input: true inverted: true on_press: then: - cover.open: cover_10 on_release: then: - cover.stop: cover_10 - platform: gpio name: 'IN_20' id: in_20 pin: pcf8574: pcf_inputs_15to28 number: 1 mode: input: true inverted: true on_press: then: - cover.close: cover_10 on_release: then: - cover.stop: cover_10 - platform: gpio name: 'IN_21' id: in_21 pin: pcf8574: pcf_inputs_15to28 number: 0 mode: input: true inverted: true on_press: then: - cover.open: cover_11 on_release: then: - cover.stop: cover_11 - platform: gpio name: 'IN_22' id: in_22 pin: pcf8574: pcf_inputs_15to28 number: 8 mode: input: true inverted: true on_press: then: - cover.close: cover_11 on_release: then: - cover.stop: cover_11 - platform: gpio name: 'IN_23' id: in_23 pin: pcf8574: pcf_inputs_15to28 number: 9 mode: input: true inverted: true on_press: then: - cover.open: cover_12 on_release: then: - cover.stop: cover_12 - platform: gpio name: 'IN_24' id: in_24 pin: pcf8574: pcf_inputs_15to28 number: 10 mode: input: true inverted: true on_press: then: - cover.close: cover_12 on_release: then: - cover.stop: cover_12 - platform: gpio name: 'IN_25' id: in_25 pin: pcf8574: pcf_inputs_15to28 number: 11 mode: input: true inverted: true on_press: then: - cover.open: cover_13 on_release: then: - cover.stop: cover_13 - platform: gpio name: 'IN_26' id: in_26 pin: pcf8574: pcf_inputs_15to28 number: 12 mode: input: true inverted: true on_press: then: - cover.close: cover_13 on_release: then: - cover.stop: cover_13 - platform: gpio name: 'IN_27' id: in_27 pin: pcf8574: pcf_inputs_15to28 number: 13 mode: input: true inverted: true on_press: then: - cover.open: cover_14 on_release: then: - cover.stop: cover_14 - platform: gpio name: 'IN_28' id: in_28 pin: pcf8574: pcf_inputs_15to28 number: 14 mode: input: true inverted: true on_press: then: - cover.close: cover_14 on_release: then: - cover.stop: cover_14 - platform: gpio name: 'IN_29' id: in_29 pin: pcf8574: pcf_inputs_28to35_menu number: 0 mode: input: true inverted: true on_press: then: - cover.open: cover_15 on_release: then: - cover.stop: cover_15 - platform: gpio name: 'IN_30' id: in_30 pin: pcf8574: pcf_inputs_28to35_menu number: 1 mode: input: true inverted: true on_press: then: - cover.close: cover_15 on_release: then: - cover.stop: cover_15 - platform: gpio name: 'IN_31' id: in_31 pin: pcf8574: pcf_inputs_28to35_menu number: 2 mode: input: true inverted: true on_press: then: - cover.open: cover_16 on_release: then: - cover.stop: cover_16 - platform: gpio name: 'IN_32' id: in_32 pin: pcf8574: pcf_inputs_28to35_menu number: 3 mode: input: true inverted: true on_press: then: - cover.close: cover_16 on_release: then: - cover.stop: cover_16 - 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 ###################### ### MODBUS SECTION ### ###################### # UNCOMMENT BELOW TO USE MODBUS # uart: # id: uart_pin3_1 # rx_pin: GPIO3 # tx_pin: GPIO1 # baud_rate: 9600 # stop_bits: 1 # modbus: # send_wait_time: 200ms # uart_id: uart_pin14_15 # id: boneio_modbus # modbus_controller: # - id: YOURDEVICE ID # address: 0x09 # modbus_id: mod_bus # setup_priority: -10 # update_interval: 60s