this is initial release for single file

This commit is contained in:
pszafer
2024-04-09 11:36:59 +02:00
parent ca0dde93fa
commit c1abdd358b
30 changed files with 7189 additions and 2008 deletions

216
boards/24x16_output.yaml Normal file
View File

@@ -0,0 +1,216 @@
output:
- platform: gpio
id: out_01
pin:
mcp23xxx: mcp_left
number: 8
mode:
output: true
inverted: false
- platform: gpio
id: out_02
pin:
mcp23xxx: mcp_left
number: 9
mode:
output: true
inverted: false
- platform: gpio
id: out_03
pin:
mcp23xxx: mcp_left
number: 10
mode:
output: true
inverted: false
- platform: gpio
id: out_04
pin:
mcp23xxx: mcp_left
number: 11
mode:
output: true
inverted: false
- platform: gpio
id: out_05
pin:
mcp23xxx: mcp_left
number: 12
mode:
output: true
inverted: false
- platform: gpio
id: out_06
pin:
mcp23xxx: mcp_left
number: 13
mode:
output: true
inverted: false
- platform: gpio
id: out_07
pin:
mcp23xxx: mcp_left
number: 14
mode:
output: true
inverted: false
- platform: gpio
id: out_08
pin:
mcp23xxx: mcp_left
number: 15
mode:
output: true
inverted: false
- platform: gpio
id: out_09
pin:
mcp23xxx: mcp_right
number: 8
mode:
output: true
inverted: false
- platform: gpio
id: out_10
pin:
mcp23xxx: mcp_right
number: 9
mode:
output: true
inverted: false
- platform: gpio
id: out_11
pin:
mcp23xxx: mcp_right
number: 10
mode:
output: true
inverted: false
- platform: gpio
id: out_12
pin:
mcp23xxx: mcp_right
number: 11
mode:
output: true
inverted: false
- platform: gpio
id: out_13
pin:
mcp23xxx: mcp_left
number: 7
mode:
output: true
inverted: false
- platform: gpio
id: out_14
pin:
mcp23xxx: mcp_left
number: 6
mode:
output: true
inverted: false
- platform: gpio
id: out_15
pin:
mcp23xxx: mcp_left
number: 5
mode:
output: true
inverted: false
- platform: gpio
id: out_16
pin:
mcp23xxx: mcp_left
number: 4
mode:
output: true
inverted: false
- platform: gpio
id: out_17
pin:
mcp23xxx: mcp_left
number: 3
mode:
output: true
inverted: false
- platform: gpio
id: out_18
pin:
mcp23xxx: mcp_left
number: 2
mode:
output: true
inverted: false
- platform: gpio
id: out_19
pin:
mcp23xxx: mcp_left
number: 1
mode:
output: true
inverted: false
- platform: gpio
id: out_20
pin:
mcp23xxx: mcp_left
number: 0
mode:
output: true
inverted: false
- platform: gpio
id: out_21
pin:
mcp23xxx: mcp_right
number: 12
mode:
output: true
inverted: false
- platform: gpio
id: out_22
pin:
mcp23xxx: mcp_right
number: 13
mode:
output: true
inverted: false
- platform: gpio
id: out_23
pin:
mcp23xxx: mcp_right
number: 14
mode:
output: true
inverted: false
- platform: gpio
id: out_24
pin:
mcp23xxx: mcp_right
number: 15
mode:
output: true
inverted: false

View File

@@ -1,152 +1,193 @@
pcf8574: switch:
- id: 'pcf_1'
address: 0x21
pcf8575: true
i2c_id: bus_b
- id: 'pcf_2'
address: 0x20
pcf8575: true
i2c_id: bus_b
output:
- platform: gpio - platform: gpio
id: out_1 id: cover_open_01_out01
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 15 number: 15
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_01 [cover_open_01_out01, cover_close_01_out02]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio - platform: gpio
id: out_2 id: cover_close_01_out02
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 14 number: 14
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: *cover_interlock_01
restore_mode: always off
- platform: gpio - platform: gpio
id: out_3 id: cover_open_02_out03
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 13 number: 13
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_02 [cover_open_02_out03, cover_close_02_out04]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio - platform: gpio
id: out_4 id: cover_close_02_out04
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 12 number: 12
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: *cover_interlock_02
restore_mode: always off
- platform: gpio - platform: gpio
id: out_5 id: cover_open_03_out05
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 11 number: 11
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_03 [cover_open_03_out05, cover_close_03_out06]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio - platform: gpio
id: out_6 id: cover_close_03_out06
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 10 number: 10
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: *cover_interlock_03
restore_mode: always off
- platform: gpio - platform: gpio
id: out_7 id: cover_open_04_out07
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 9 number: 9
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_04 [cover_open_04_out07, cover_close_04_out08]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio - platform: gpio
id: out_8 id: cover_close_04_out08
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 8 number: 8
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: *cover_interlock_04
restore_mode: always off
- platform: gpio - platform: gpio
id: out_9 id: cover_open_05_out09
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 15 number: 15
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_05 [cover_open_05_out09, cover_close_05_out10]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio - platform: gpio
id: out_10 id: cover_close_05_out10
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 14 number: 14
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: *cover_interlock_05
restore_mode: always off
- platform: gpio - platform: gpio
id: out_11 id: cover_open_06_out11
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 13 number: 13
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_06 [cover_open_06_out11, cover_close_06_out12]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio - platform: gpio
id: out_12 id: cover_close_06_out12
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 12 number: 12
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: *cover_interlock_06
restore_mode: always off
- platform: gpio - platform: gpio
id: out_13 id: cover_open_07_out13
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 11 number: 11
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_07 [cover_open_07_out13, cover_close_07_out14]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio - platform: gpio
id: out_14 id: cover_close_07_out14
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 10 number: 10
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: *cover_interlock_07
restore_mode: always off
- platform: gpio - platform: gpio
id: out_15 id: cover_open_08_out15
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 9 number: 9
mode: mode:
output: true output: true
inverted: true inverted: true
interlock: &cover_interlock_08 [cover_open_08_out15, cover_close_08_out16]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_08_out16
pin:
pcf8574: pcf_right
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_08
restore_mode: always off
output:
- platform: gpio - platform: gpio
id: out_16 id: out_16
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 8 number: 8
mode: mode:
output: true output: true
@@ -155,7 +196,7 @@ output:
- platform: gpio - platform: gpio
id: out_17 id: out_17
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 0 number: 0
mode: mode:
output: true output: true
@@ -164,7 +205,7 @@ output:
- platform: gpio - platform: gpio
id: out_18 id: out_18
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 1 number: 1
mode: mode:
output: true output: true
@@ -173,7 +214,7 @@ output:
- platform: gpio - platform: gpio
id: out_19 id: out_19
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 2 number: 2
mode: mode:
output: true output: true
@@ -182,7 +223,7 @@ output:
- platform: gpio - platform: gpio
id: out_20 id: out_20
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 3 number: 3
mode: mode:
output: true output: true
@@ -191,7 +232,7 @@ output:
- platform: gpio - platform: gpio
id: out_21 id: out_21
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 4 number: 4
mode: mode:
output: true output: true
@@ -200,7 +241,7 @@ output:
- platform: gpio - platform: gpio
id: out_22 id: out_22
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 5 number: 5
mode: mode:
output: true output: true
@@ -209,7 +250,7 @@ output:
- platform: gpio - platform: gpio
id: out_23 id: out_23
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 6 number: 6
mode: mode:
output: true output: true
@@ -218,7 +259,7 @@ output:
- platform: gpio - platform: gpio
id: out_24 id: out_24
pin: pin:
pcf8574: pcf_1 pcf8574: pcf_left
number: 7 number: 7
mode: mode:
output: true output: true
@@ -227,7 +268,7 @@ output:
- platform: gpio - platform: gpio
id: out_25 id: out_25
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 0 number: 0
mode: mode:
output: true output: true
@@ -236,7 +277,7 @@ output:
- platform: gpio - platform: gpio
id: out_26 id: out_26
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 1 number: 1
mode: mode:
output: true output: true
@@ -245,7 +286,7 @@ output:
- platform: gpio - platform: gpio
id: out_27 id: out_27
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 2 number: 2
mode: mode:
output: true output: true
@@ -254,7 +295,7 @@ output:
- platform: gpio - platform: gpio
id: out_28 id: out_28
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 3 number: 3
mode: mode:
output: true output: true
@@ -263,7 +304,7 @@ output:
- platform: gpio - platform: gpio
id: out_29 id: out_29
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 4 number: 4
mode: mode:
output: true output: true
@@ -272,7 +313,7 @@ output:
- platform: gpio - platform: gpio
id: out_30 id: out_30
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 5 number: 5
mode: mode:
output: true output: true
@@ -281,7 +322,7 @@ output:
- platform: gpio - platform: gpio
id: out_31 id: out_31
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 6 number: 6
mode: mode:
output: true output: true
@@ -290,7 +331,7 @@ output:
- platform: gpio - platform: gpio
id: out_32 id: out_32
pin: pin:
pcf8574: pcf_2 pcf8574: pcf_right
number: 7 number: 7
mode: mode:
output: true output: true

View File

@@ -1,256 +0,0 @@
cover:
- platform: time_based
name: "${node_name} Cover 01"
device_class: shutter
id: cover_01
open_action:
- switch.turn_off: cover_close_01
- switch.turn_on: cover_open_01
open_duration: 60s
close_action:
- switch.turn_off: cover_open_01
- switch.turn_on: cover_close_01
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_01
- switch.turn_off: cover_close_01
- platform: time_based
name: "${node_name} Cover 02"
device_class: shutter
id: cover_02
open_action:
- switch.turn_off: cover_close_02
- switch.turn_on: cover_open_02
open_duration: 60s
close_action:
- switch.turn_off: cover_open_02
- switch.turn_on: cover_close_02
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_02
- switch.turn_off: cover_close_02
- platform: time_based
name: "${node_name} Cover 03"
device_class: shutter
id: cover_03
open_action:
- switch.turn_off: cover_close_03
- switch.turn_on: cover_open_03
open_duration: 60s
close_action:
- switch.turn_off: cover_open_03
- switch.turn_on: cover_close_03
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_03
- switch.turn_off: cover_close_03
- platform: time_based
name: "${node_name} Cover 04"
device_class: shutter
id: cover_04
open_action:
- switch.turn_off: cover_close_04
- switch.turn_on: cover_open_04
open_duration: 60s
close_action:
- switch.turn_off: cover_open_04
- switch.turn_on: cover_close_04
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_04
- switch.turn_off: cover_close_04
- platform: time_based
name: "${node_name} Cover 05"
device_class: shutter
id: cover_05
open_action:
- switch.turn_off: cover_close_05
- switch.turn_on: cover_open_05
open_duration: 60s
close_action:
- switch.turn_off: cover_open_05
- switch.turn_on: cover_close_05
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_05
- switch.turn_off: cover_close_05
- platform: time_based
name: "${node_name} Cover 06"
device_class: shutter
id: cover_06
open_action:
- switch.turn_off: cover_close_06
- switch.turn_on: cover_open_06
open_duration: 60s
close_action:
- switch.turn_off: cover_open_06
- switch.turn_on: cover_close_06
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_06
- switch.turn_off: cover_close_06
- platform: time_based
name: "${node_name} Cover 07"
device_class: shutter
id: cover_07
open_action:
- switch.turn_off: cover_close_07
- switch.turn_on: cover_open_07
open_duration: 60s
close_action:
- switch.turn_off: cover_open_07
- switch.turn_on: cover_close_07
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_07
- switch.turn_off: cover_close_07
- platform: time_based
name: "${node_name} Cover 08"
device_class: shutter
id: cover_08
open_action:
- switch.turn_off: cover_close_08
- switch.turn_on: cover_open_08
open_duration: 60s
close_action:
- switch.turn_off: cover_open_08
- switch.turn_on: cover_close_08
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_08
- switch.turn_off: cover_close_08
- platform: time_based
name: "${node_name} Cover 09"
device_class: shutter
id: cover_09
open_action:
- switch.turn_off: cover_close_09
- switch.turn_on: cover_open_09
open_duration: 60s
close_action:
- switch.turn_off: cover_open_09
- switch.turn_on: cover_close_09
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_09
- switch.turn_off: cover_close_09
- platform: time_based
name: "${node_name} Cover 10"
device_class: shutter
id: cover_10
open_action:
- switch.turn_off: cover_close_10
- switch.turn_on: cover_open_10
open_duration: 60s
close_action:
- switch.turn_off: cover_open_10
- switch.turn_on: cover_close_10
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_10
- switch.turn_off: cover_close_10
- platform: time_based
name: "${node_name} Cover 11"
device_class: shutter
id: cover_11
open_action:
- switch.turn_off: cover_close_11
- switch.turn_on: cover_open_11
open_duration: 60s
close_action:
- switch.turn_off: cover_open_11
- switch.turn_on: cover_close_11
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_11
- switch.turn_off: cover_close_11
- platform: time_based
name: "${node_name} Cover 12"
device_class: shutter
id: cover_12
open_action:
- switch.turn_off: cover_close_12
- switch.turn_on: cover_open_12
open_duration: 60s
close_action:
- switch.turn_off: cover_open_12
- switch.turn_on: cover_close_12
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_12
- switch.turn_off: cover_close_12
- platform: time_based
name: "${node_name} Cover 13"
device_class: shutter
id: cover_13
open_action:
- switch.turn_off: cover_close_13
- switch.turn_on: cover_open_13
open_duration: 60s
close_action:
- switch.turn_off: cover_open_13
- switch.turn_on: cover_close_13
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_13
- switch.turn_off: cover_close_13
- platform: time_based
name: "${node_name} Cover 14"
device_class: shutter
id: cover_14
open_action:
- switch.turn_off: cover_close_14
- switch.turn_on: cover_open_14
open_duration: 60s
close_action:
- switch.turn_off: cover_open_14
- switch.turn_on: cover_close_14
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_14
- switch.turn_off: cover_close_14
- platform: time_based
name: "${node_name} Cover 15"
device_class: shutter
id: cover_15
open_action:
- switch.turn_off: cover_close_15
- switch.turn_on: cover_open_15
open_duration: 60s
close_action:
- switch.turn_off: cover_open_15
- switch.turn_on: cover_close_15
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_15
- switch.turn_off: cover_close_15
- platform: time_based
name: "${node_name} Cover 16"
device_class: shutter
id: cover_16
open_action:
- switch.turn_off: cover_close_16
- switch.turn_on: cover_open_16
open_duration: 60s
close_action:
- switch.turn_off: cover_open_16
- switch.turn_on: cover_close_16
close_duration: 60s
stop_action:
- switch.turn_off: cover_open_16
- switch.turn_off: cover_close_16

View File

@@ -1,121 +0,0 @@
cover:
- platform: time_based
name: 'Cover 01'
device_class: shutter
id: cover_01
open_action:
- switch.turn_off: cover_close_01
- switch.turn_on: cover_open_01
open_duration: 10s
close_action:
- switch.turn_off: cover_open_01
- switch.turn_on: cover_close_01
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_01
- switch.turn_off: cover_close_01
- platform: time_based
name: 'Cover 02'
id: cover_02
open_action:
- switch.turn_off: cover_close_02
- switch.turn_on: cover_open_02
open_duration: 10s
close_action:
- switch.turn_off: cover_open_02
- switch.turn_on: cover_close_02
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_02
- switch.turn_off: cover_close_02
- platform: time_based
name: 'Cover 03'
id: cover_03
open_action:
- switch.turn_off: cover_close_03
- switch.turn_on: cover_open_03
open_duration: 10s
close_action:
- switch.turn_off: cover_open_03
- switch.turn_on: cover_close_03
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_03
- switch.turn_off: cover_close_03
- platform: time_based
name: 'Cover 04'
id: cover_04
open_action:
- switch.turn_off: cover_close_04
- switch.turn_on: cover_open_04
open_duration: 10s
close_action:
- switch.turn_off: cover_open_04
- switch.turn_on: cover_close_04
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_04
- switch.turn_off: cover_close_04
- platform: time_based
name: 'Cover 05'
id: cover_05
open_action:
- switch.turn_off: cover_close_05
- switch.turn_on: cover_open_05
open_duration: 10s
close_action:
- switch.turn_off: cover_open_05
- switch.turn_on: cover_close_05
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_05
- switch.turn_off: cover_close_05
- platform: time_based
name: 'Cover 06'
id: cover_06
open_action:
- switch.turn_off: cover_close_06
- switch.turn_on: cover_open_06
open_duration: 10s
close_action:
- switch.turn_off: cover_open_06
- switch.turn_on: cover_close_06
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_06
- switch.turn_off: cover_close_06
- platform: time_based
name: 'Cover 07'
id: cover_07
open_action:
- switch.turn_off: cover_close_07
- switch.turn_on: cover_open_07
open_duration: 10s
close_action:
- switch.turn_off: cover_open_07
- switch.turn_on: cover_close_07
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_07
- switch.turn_off: cover_close_07
- platform: time_based
name: 'Cover 08'
id: cover_08
open_action:
- switch.turn_off: cover_close_08
- switch.turn_on: cover_open_08
open_duration: 10s
close_action:
- switch.turn_off: cover_open_08
- switch.turn_on: cover_close_08
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_08
- switch.turn_off: cover_close_08

View File

@@ -1,559 +0,0 @@
# require light configuration (monochromatic_light.yaml)
binary_sensor:
- platform: gpio
name: "${node_name} IN_01"
id: in_01
pin:
mcp23xxx: mcp_inputs_1to16
number: 0
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_1
- platform: gpio
name: "${node_name} IN_02"
id: in_02
pin:
mcp23xxx: mcp_inputs_1to16
number: 1
mode:
input: true
pullup: false
inverted: true
on_press:
- light.toggle:
id: led_2
- platform: gpio
name: "${node_name} IN_03"
id: in_03
pin:
mcp23xxx: mcp_inputs_1to16
number: 2
mode:
input: true
pullup: false
inverted: true
on_press:
- light.toggle:
id: led_3
- platform: gpio
name: "${node_name} IN_04"
id: in_04
pin:
mcp23xxx: mcp_inputs_1to16
number: 3
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_4
- platform: gpio
name: "${node_name} IN_05"
id: in_05
pin:
mcp23xxx: mcp_inputs_1to16
number: 4
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_5
- platform: gpio
name: "${node_name} IN_06"
id: in_06
pin:
mcp23xxx: mcp_inputs_1to16
number: 5
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_6
- platform: gpio
name: "${node_name} IN_07"
id: in_07
pin:
mcp23xxx: mcp_inputs_1to16
number: 6
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_7
- platform: gpio
name: "${node_name} IN_08"
id: in_08
pin:
mcp23xxx: mcp_inputs_1to16
number: 7
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_8
- platform: gpio
name: "${node_name} IN_09"
id: in_09
pin:
mcp23xxx: mcp_inputs_1to16
number: 8
mode:
input: true
pullup: false
inverted: true
on_press:
- while:
condition:
binary_sensor.is_on: in_09
then:
- logger.log: "Dimm light led_4 by -5%"
- light.dim_relative:
id: led_4
relative_brightness: -5%
transition_length: 0.2s
- delay: 0.2s
- platform: gpio
name: "${node_name} IN_10"
id: in_10
pin:
mcp23xxx: mcp_inputs_1to16
number: 9
mode:
input: true
pullup: false
inverted: true
on_press:
- while:
condition:
binary_sensor.is_on: in_10
then:
- logger.log: "Dimm light led_4 by -10%"
- light.dim_relative:
id: led_4
relative_brightness: -10%
transition_length: 0.2s
- delay: 0.2s
- platform: gpio
name: "${node_name} IN_11"
id: in_11
pin:
mcp23xxx: mcp_inputs_1to16
number: 10
mode:
input: true
pullup: false
inverted: true
on_press:
- while:
condition:
binary_sensor.is_on: in_11
then:
- logger.log: "Dimm light led_4 by 5%"
- light.dim_relative:
id: led_4
relative_brightness: 5%
transition_length: 0.2s
- delay: 0.2s
- platform: gpio
name: "${node_name} IN_12"
id: in_12
pin:
mcp23xxx: mcp_inputs_1to16
number: 11
mode:
input: true
pullup: false
inverted: true
on_press:
- while:
condition:
binary_sensor.is_on: in_12
then:
- logger.log: "Dimm light led_4 by 10%"
- light.dim_relative:
id: led_4
relative_brightness: 10%
transition_length: 0.2s
- delay: 0.2s
- platform: gpio
name: "${node_name} IN_13"
id: in_13
pin:
mcp23xxx: mcp_inputs_1to16
number: 12
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_13
- platform: gpio
name: "${node_name} IN_14"
id: in_14
pin:
mcp23xxx: mcp_inputs_1to16
number: 13
mode:
input: true
pullup: false
inverted: true
on_press:
- if:
condition:
light.is_on: led_4
then:
- while:
condition:
binary_sensor.is_on: in_14
then:
- logger.log: "Dimm light led_4 by -10%"
- light.dim_relative:
id: led_4
relative_brightness: -10%
transition_length: 0.2s
- delay: 0.2s
else:
- while:
condition:
binary_sensor.is_on: in_14
then:
- logger.log: "Dimm light led_4 by 10%"
- light.dim_relative:
id: led_4
relative_brightness: 10%
transition_length: 0.2s
- delay: 0.2s
- platform: gpio
name: "${node_name} IN_15"
id: in_15
pin:
mcp23xxx: mcp_inputs_1to16
number: 14
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_15
- platform: gpio
name: "${node_name} IN_16"
id: in_16
pin:
mcp23xxx: mcp_inputs_1to16
number: 15
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_16
- platform: gpio
name: "${node_name} IN_17"
id: in_17
pin:
mcp23xxx: mcp_inputs_17to32
number: 7
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_17
- platform: gpio
name: "${node_name} IN_18"
id: in_18
pin:
mcp23xxx: mcp_inputs_17to32
number: 6
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_18
- platform: gpio
name: "${node_name} IN_19"
id: in_19
pin:
mcp23xxx: mcp_inputs_17to32
number: 5
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_19
- platform: gpio
name: "${node_name} IN_20"
id: in_20
pin:
mcp23xxx: mcp_inputs_17to32
number: 4
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_20
- platform: gpio
name: "${node_name} IN_21"
id: in_21
pin:
mcp23xxx: mcp_inputs_17to32
number: 3
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_21
- platform: gpio
name: "${node_name} IN_22"
id: in_22
pin:
mcp23xxx: mcp_inputs_17to32
number: 2
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_22
- platform: gpio
name: "${node_name} IN_23"
id: in_23
pin:
mcp23xxx: mcp_inputs_17to32
number: 1
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_23
- platform: gpio
name: "${node_name} IN_24"
id: in_24
pin:
mcp23xxx: mcp_inputs_17to32
number: 0
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_24
- platform: gpio
name: "${node_name} IN_25"
id: in_25
pin:
mcp23xxx: mcp_inputs_17to32
number: 8
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_25
- platform: gpio
name: "${node_name} IN_26"
id: in_26
pin:
mcp23xxx: mcp_inputs_17to32
number: 9
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_26
- platform: gpio
name: "${node_name} IN_27"
id: in_27
pin:
mcp23xxx: mcp_inputs_17to32
number: 10
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_27
- platform: gpio
name: "${node_name} IN_28"
id: in_28
pin:
mcp23xxx: mcp_inputs_17to32
number: 11
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_28
- platform: gpio
name: "${node_name} IN_29"
id: in_29
pin:
mcp23xxx: mcp_inputs_17to32
number: 12
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_29
- platform: gpio
name: "${node_name} IN_30"
id: in_30
pin:
mcp23xxx: mcp_inputs_17to32
number: 13
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_30
- platform: gpio
name: "${node_name} IN_31"
id: in_31
pin:
mcp23xxx: mcp_inputs_17to32
number: 14
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_31
- platform: gpio
name: "${node_name} IN_32"
id: in_32
pin:
mcp23xxx: mcp_inputs_17to32
number: 15
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- light.toggle:
id: led_32
- platform: gpio
name: "${node_name} IN_33"
id: in_33
pin:
number: GPIO33
mode:
input: true
pullup: false
inverted: true
- platform: gpio
name: "${node_name} IN_34"
id: in_34
pin:
number: GPIO17
mode:
input: true
pullup: false
inverted: true
- platform: gpio
name: "${node_name} IN_35"
id: in_35
pin:
number: GPIO12
mode:
input: true
pullup: false
inverted: false

View File

@@ -1,142 +0,0 @@
# i2c address: 0x41 output pca pwm
# i2c address: 0x42 output pca pwm
pca9685:
- address: 0x41
id: pca_hub_1to16
frequency: 500
i2c_id: bus_b
- address: 0x42
id: pca_hub_17to32
frequency: 500
i2c_id: bus_b
output:
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_1'
channel: 0
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_2'
channel: 1
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_3'
channel: 2
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_4'
channel: 3
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_5'
channel: 4
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_6'
channel: 5
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_7'
channel: 6
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_8'
channel: 7
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_9'
channel: 8
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_10'
channel: 9
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_11'
channel: 10
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_12'
channel: 11
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_13'
channel: 12
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_14'
channel: 13
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_15'
channel: 14
- platform: pca9685
pca9685_id: 'pca_hub_1to16'
id: 'pca_output_16'
channel: 15
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_17'
channel: 0
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_18'
channel: 1
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_19'
channel: 2
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_20'
channel: 3
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_21'
channel: 4
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_22'
channel: 5
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_23'
channel: 6
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_24'
channel: 7
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_25'
channel: 8
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_26'
channel: 9
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_27'
channel: 10
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_28'
channel: 11
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_29'
channel: 12
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_30'
channel: 13
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_31'
channel: 14
- platform: pca9685
pca9685_id: 'pca_hub_17to32'
id: 'pca_output_32'
channel: 15

View File

@@ -1,483 +0,0 @@
#i2c addresses
# address: 0x26 input mcp io
# address: 0x27 input mcp io
# address: 0x3C input oled
# address: 0x40 input ina219 power
# address: 0x68 input rtc ds1307
binary_sensor:
- platform: gpio
name: "${node_name} IN_01"
id: in_01
pin:
mcp23xxx: mcp_inputs_1to16
number: 0
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_1
- platform: gpio
name: "${node_name} IN_02"
id: in_02
pin:
mcp23xxx: mcp_inputs_1to16
number: 1
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_2
- platform: gpio
name: "${node_name} IN_03"
id: in_03
pin:
mcp23xxx: mcp_inputs_1to16
number: 2
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_3
- platform: gpio
name: "${node_name} IN_04"
id: in_04
pin:
mcp23xxx: mcp_inputs_1to16
number: 3
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_4
- platform: gpio
name: "${node_name} IN_05"
id: in_05
pin:
mcp23xxx: mcp_inputs_1to16
number: 4
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_5
- platform: gpio
name: "${node_name} IN_06"
id: in_06
pin:
mcp23xxx: mcp_inputs_1to16
number: 5
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_6
- platform: gpio
name: "${node_name} IN_07"
id: in_07
pin:
mcp23xxx: mcp_inputs_1to16
number: 6
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_7
- platform: gpio
name: "${node_name} IN_08"
id: in_08
pin:
mcp23xxx: mcp_inputs_1to16
number: 7
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_8
- platform: gpio
name: "${node_name} IN_09"
id: in_09
pin:
mcp23xxx: mcp_inputs_1to16
number: 8
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_9
- platform: gpio
name: "${node_name} IN_10"
id: in_10
pin:
mcp23xxx: mcp_inputs_1to16
number: 9
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_10
- platform: gpio
name: "${node_name} IN_11"
id: in_11
pin:
mcp23xxx: mcp_inputs_1to16
number: 10
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_11
- platform: gpio
name: "${node_name} IN_12"
id: in_12
pin:
mcp23xxx: mcp_inputs_1to16
number: 11
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_12
- platform: gpio
name: "${node_name} IN_13"
id: in_13
pin:
mcp23xxx: mcp_inputs_1to16
number: 12
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_13
- platform: gpio
name: "${node_name} IN_14"
id: in_14
pin:
mcp23xxx: mcp_inputs_1to16
number: 13
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_14
- platform: gpio
name: "${node_name} IN_15"
id: in_15
pin:
mcp23xxx: mcp_inputs_1to16
number: 14
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_15
- platform: gpio
name: "${node_name} IN_16"
id: in_16
pin:
mcp23xxx: mcp_inputs_1to16
number: 15
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_16
- platform: gpio
name: "${node_name} IN_17"
id: in_17
pin:
mcp23xxx: mcp_inputs_17to32
number: 7
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_17
- platform: gpio
name: "${node_name} IN_18"
id: in_18
pin:
mcp23xxx: mcp_inputs_17to32
number: 6
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_18
- platform: gpio
name: "${node_name} IN_19"
id: in_19
pin:
mcp23xxx: mcp_inputs_17to32
number: 5
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_19
- platform: gpio
name: "${node_name} IN_20"
id: in_20
pin:
mcp23xxx: mcp_inputs_17to32
number: 4
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_20
- platform: gpio
name: "${node_name} IN_21"
id: in_21
pin:
mcp23xxx: mcp_inputs_17to32
number: 3
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_21
- platform: gpio
name: "${node_name} IN_22"
id: in_22
pin:
mcp23xxx: mcp_inputs_17to32
number: 2
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_22
- platform: gpio
name: "${node_name} IN_23"
id: in_23
pin:
mcp23xxx: mcp_inputs_17to32
number: 1
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_23
- platform: gpio
name: "${node_name} IN_24"
id: in_24
pin:
mcp23xxx: mcp_inputs_17to32
number: 0
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_24
- platform: gpio
name: "${node_name} IN_25"
id: in_25
pin:
mcp23xxx: mcp_inputs_17to32
number: 8
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_25
- platform: gpio
name: "${node_name} IN_26"
id: in_26
pin:
mcp23xxx: mcp_inputs_17to32
number: 9
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_26
- platform: gpio
name: "${node_name} IN_27"
id: in_27
pin:
mcp23xxx: mcp_inputs_17to32
number: 10
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_27
- platform: gpio
name: "${node_name} IN_28"
id: in_28
pin:
mcp23xxx: mcp_inputs_17to32
number: 11
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_28
- platform: gpio
name: "${node_name} IN_29"
id: in_29
pin:
mcp23xxx: mcp_inputs_17to32
number: 12
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_29
- platform: gpio
name: "${node_name} IN_30"
id: in_30
pin:
mcp23xxx: mcp_inputs_17to32
number: 13
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_30
- platform: gpio
name: "${node_name} IN_31"
id: in_31
pin:
mcp23xxx: mcp_inputs_17to32
number: 14
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_31
- platform: gpio
name: "${node_name} IN_32"
id: in_32
pin:
mcp23xxx: mcp_inputs_17to32
number: 15
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_32
- platform: gpio
name: "${node_name} IN_33"
pin:
number: GPIO33
mode:
input: true
pullup: false
inverted: true
- platform: gpio
name: "${node_name} IN_34"
pin:
number: GPIO17
mode:
input: true
pullup: false
inverted: true
- platform: gpio
name: "${node_name} IN_35"
pin:
number: GPIO12
mode:
input: true
pullup: true
inverted: false

View File

@@ -0,0 +1,574 @@
substitutions:
name: boneio-esp24x16-switches
friendly_name: 'BoneIO ESP 24x16 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.24x16-switches_v0_5-v0_6
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-24x16_switches_v0_5-v0_6.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_5-v0_6/display.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/24x16_output.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
# 'devices_v0_5-v0_6/uart.yaml',
]
logger:
api:
ota:
password: boneio
web_server:
port: 80
local: true
time:
- platform: homeassistant
timezone: Europe/Warsaw
id: homeassistant_time
switch:
- platform: output
name: 'Switch 01'
output: out_01
id: switch_01
- platform: output
name: 'Switch 02'
output: out_02
id: switch_02
- platform: output
name: 'Switch 03'
output: out_03
id: switch_03
- platform: output
name: 'Switch 04'
output: out_04
id: switch_04
- platform: output
name: 'Switch 05'
output: out_05
id: switch_05
- platform: output
name: 'Switch 06'
output: out_06
id: switch_06
- platform: output
name: 'Switch 07'
output: out_07
id: switch_07
- platform: output
name: 'Switch 08'
output: out_08
id: switch_08
- platform: output
name: 'Switch 09'
output: out_09
id: switch_09
- platform: output
name: 'Switch 10'
output: out_10
id: switch_10
- platform: output
name: 'Switch 11'
output: out_11
id: switch_11
- platform: output
name: 'Switch 12'
output: out_12
id: switch_12
- platform: output
name: 'Switch 13'
output: out_13
id: switch_13
- platform: output
name: 'Switch 14'
output: out_14
id: switch_14
- platform: output
name: 'Switch 15'
output: out_15
id: switch_15
- 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
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:
- switch.toggle: switch_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs_1to14
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs_1to14
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs_1to14
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs_1to14
number: 4
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs_1to14
number: 5
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs_1to14
number: 6
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs_1to14
number: 8
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_08
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_09
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_10
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_11
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_12
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_13
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_14
- 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
- platform: gpio
name: 'IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_29'
id: in_29
pin:
pcf8574: pcf_inputs_28to35_menu
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_30'
id: in_30
pin:
pcf8574: pcf_inputs_28to35_menu
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_31'
id: in_31
pin:
pcf8574: pcf_inputs_28to35_menu
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_32'
id: in_32
pin:
pcf8574: pcf_inputs_28to35_menu
number: 3
mode:
input: true
inverted: true
- 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

View File

@@ -0,0 +1,574 @@
substitutions:
name: boneio-esp24x16-switches
friendly_name: 'BoneIO ESP 24x16 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.24x16-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-24x16_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/24x16_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
switch:
- platform: output
name: 'Switch 01'
output: out_01
id: switch_01
- platform: output
name: 'Switch 02'
output: out_02
id: switch_02
- platform: output
name: 'Switch 03'
output: out_03
id: switch_03
- platform: output
name: 'Switch 04'
output: out_04
id: switch_04
- platform: output
name: 'Switch 05'
output: out_05
id: switch_05
- platform: output
name: 'Switch 06'
output: out_06
id: switch_06
- platform: output
name: 'Switch 07'
output: out_07
id: switch_07
- platform: output
name: 'Switch 08'
output: out_08
id: switch_08
- platform: output
name: 'Switch 09'
output: out_09
id: switch_09
- platform: output
name: 'Switch 10'
output: out_10
id: switch_10
- platform: output
name: 'Switch 11'
output: out_11
id: switch_11
- platform: output
name: 'Switch 12'
output: out_12
id: switch_12
- platform: output
name: 'Switch 13'
output: out_13
id: switch_13
- platform: output
name: 'Switch 14'
output: out_14
id: switch_14
- platform: output
name: 'Switch 15'
output: out_15
id: switch_15
- 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
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:
- switch.toggle: switch_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs_1to14
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs_1to14
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs_1to14
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs_1to14
number: 4
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs_1to14
number: 5
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs_1to14
number: 6
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs_1to14
number: 8
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_08
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_09
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_10
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_11
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_12
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_13
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_14
- 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
- platform: gpio
name: 'IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_29'
id: in_29
pin:
pcf8574: pcf_inputs_28to35_menu
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_30'
id: in_30
pin:
pcf8574: pcf_inputs_28to35_menu
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_31'
id: in_31
pin:
pcf8574: pcf_inputs_28to35_menu
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_32'
id: in_32
pin:
pcf8574: pcf_inputs_28to35_menu
number: 3
mode:
input: true
inverted: true
- 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

View File

@@ -0,0 +1,631 @@
substitutions:
name: boneio-esp32x10-lights
friendly_name: 'BoneIO ESP 32x10 Lights'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-lights_v0_5-v0_6
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-32x10_lights_v0_5-v0_6.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_5-v0_6/display.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/32x10_outputs.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
# 'devices_v0_5-v0_6/uart.yaml',
]
logger:
baud_rate: 0 #IMPORTANT FOR V0.5-V0.6 TO GET MODBUS WORKING
api:
ota:
password: boneio
web_server:
port: 80
local: true
time:
- platform: homeassistant
timezone: Europe/Warsaw
id: homeassistant_time
light:
- platform: binary
name: 'Light 01'
output: out_01
id: light_01
- platform: binary
name: 'Light 02'
output: out_02
id: light_02
- platform: binary
name: 'Light 03'
output: out_03
id: light_03
- platform: binary
name: 'Light 04'
output: out_04
id: light_04
- platform: binary
name: 'Light 05'
output: out_05
id: light_05
- platform: binary
name: 'Light 06'
output: out_06
id: light_06
- platform: binary
name: 'Light 07'
output: out_07
id: light_07
- platform: binary
name: 'Light 08'
output: out_08
id: light_08
- platform: binary
name: 'Light 09'
output: out_09
id: light_09
- platform: binary
name: 'Light 10'
output: out_10
id: light_10
- platform: binary
name: 'Light 11'
output: out_11
id: light_11
- platform: binary
name: 'Light 12'
output: out_12
id: light_12
- platform: binary
name: 'Light 13'
output: out_13
id: light_13
- platform: binary
name: 'Light 14'
output: out_14
id: light_14
- platform: binary
name: 'Light 15'
output: out_15
id: light_15
- platform: binary
name: 'Light 16'
output: out_16
id: light_16
- platform: binary
name: 'Light 17'
output: out_17
id: light_17
- platform: binary
name: 'Light 18'
output: out_18
id: light_18
- platform: binary
name: 'Light 19'
output: out_19
id: light_19
- platform: binary
name: 'Light 20'
output: out_20
id: light_20
- platform: binary
name: 'Light 21'
output: out_21
id: light_21
- platform: binary
name: 'Light 22'
output: out_22
id: light_22
- platform: binary
name: 'Light 23'
output: out_23
id: light_23
- platform: binary
name: 'Light 24'
output: out_24
id: light_24
- platform: binary
name: 'Light 25'
output: out_25
id: light_25
- platform: binary
name: 'Light 26'
output: out_26
id: light_26
- platform: binary
name: 'Light 27'
output: out_27
id: light_27
- platform: binary
name: 'Light 28'
output: out_28
id: light_28
- platform: binary
name: 'Light 29'
output: out_29
id: light_29
- platform: binary
name: 'Light 30'
output: out_30
id: light_30
- platform: binary
name: 'Light 31'
output: out_31
id: light_31
- platform: binary
name: 'Light 32'
output: out_32
id: light_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:
- light.toggle: light_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs_1to14
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs_1to14
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs_1to14
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs_1to14
number: 4
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs_1to14
number: 5
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs_1to14
number: 6
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs_1to14
number: 8
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_08
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_09
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_10
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_11
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_12
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_13
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_14
- platform: gpio
name: 'IN_15'
id: in_15
pin:
pcf8574: pcf_inputs_15to28
number: 6
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_15
- platform: gpio
name: 'IN_16'
id: in_16
pin:
pcf8574: pcf_inputs_15to28
number: 5
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_16
- platform: gpio
name: 'IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_15to28
number: 4
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_17
- platform: gpio
name: 'IN_18'
id: in_18
pin:
pcf8574: pcf_inputs_15to28
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_18
- platform: gpio
name: 'IN_19'
id: in_19
pin:
pcf8574: pcf_inputs_15to28
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_19
- platform: gpio
name: 'IN_20'
id: in_20
pin:
pcf8574: pcf_inputs_15to28
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_20
- platform: gpio
name: 'IN_21'
id: in_21
pin:
pcf8574: pcf_inputs_15to28
number: 0
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_21
- platform: gpio
name: 'IN_22'
id: in_22
pin:
pcf8574: pcf_inputs_15to28
number: 8
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_22
- platform: gpio
name: 'IN_23'
id: in_23
pin:
pcf8574: pcf_inputs_15to28
number: 9
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_23
- platform: gpio
name: 'IN_24'
id: in_24
pin:
pcf8574: pcf_inputs_15to28
number: 10
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_24
- platform: gpio
name: 'IN_25'
id: in_25
pin:
pcf8574: pcf_inputs_15to28
number: 11
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_25
- platform: gpio
name: 'IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_26
- platform: gpio
name: 'IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_27
- platform: gpio
name: 'IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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

View File

@@ -11,6 +11,7 @@ esphome:
project: project:
name: boneio.32x10-lights name: boneio.32x10-lights
version: '1.0' version: '1.0'
ethernet: ethernet:
id: eth id: eth
type: LAN8720 type: LAN8720
@@ -21,21 +22,21 @@ ethernet:
power_pin: GPIO16 power_pin: GPIO16
dashboard_import: dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-lights_v0_7.yaml@single_file_test package_import_url: github://boneIO-eu/esphome/boneio-32x10_lights_v0_7.yaml@v1.0
import_full_config: true import_full_config: true
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: single_file_test ref: v1.0
files: [ files: [
'devices_v0_7/buzzer.yaml', 'devices/buzzer.yaml',
'devices_v0_7/display.yaml', 'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml', 'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml', 'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml', 'devices_v0_7/pcf.yaml',
'boards_v0_7/32x10_output.yaml', 'boards/32x10_output.yaml',
# 'devices_v0_7/one_wire.yaml', # 'devices_v0_7/one_wire.yaml',
# 'devices_v0_7/uart.yaml', # 'devices_v0_7/uart.yaml',
] ]

View File

@@ -0,0 +1,630 @@
substitutions:
name: boneio-esp32x10-switches
friendly_name: 'BoneIO ESP 32x10 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-lights_v0_5-v0_6
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-32x10_switches_v0_5-v0_6.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_5-v0_6/display.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/32x10_output.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
# 'devices_v0_5-v0_6/uart.yaml',
]
logger:
api:
ota:
password: boneio
web_server:
port: 80
local: true
time:
- platform: homeassistant
timezone: Europe/Warsaw
id: homeassistant_time
switch:
- platform: output
name: 'Switch 01'
output: out_01
id: switch_01
- platform: output
name: 'Switch 02'
output: out_02
id: switch_02
- platform: output
name: 'Switch 03'
output: out_03
id: switch_03
- platform: output
name: 'Switch 04'
output: out_04
id: switch_04
- platform: output
name: 'Switch 05'
output: out_05
id: switch_05
- platform: output
name: 'Switch 06'
output: out_06
id: switch_06
- platform: output
name: 'Switch 07'
output: out_07
id: switch_07
- platform: output
name: 'Switch 08'
output: out_08
id: switch_08
- platform: output
name: 'Switch 09'
output: out_09
id: switch_09
- platform: output
name: 'Switch 10'
output: out_10
id: switch_10
- platform: output
name: 'Switch 11'
output: out_11
id: switch_11
- platform: output
name: 'Switch 12'
output: out_12
id: switch_12
- platform: output
name: 'Switch 13'
output: out_13
id: switch_13
- platform: output
name: 'Switch 14'
output: out_14
id: switch_14
- platform: output
name: 'Switch 15'
output: out_15
id: switch_15
- 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:
- switch.toggle: switch_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs_1to14
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs_1to14
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs_1to14
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs_1to14
number: 4
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs_1to14
number: 5
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs_1to14
number: 6
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs_1to14
number: 8
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_08
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_09
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_10
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_11
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_12
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_13
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_14
- 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

View File

@@ -0,0 +1,630 @@
substitutions:
name: boneio-esp32x10-switches
friendly_name: 'BoneIO ESP 32x10 Switches'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-lights
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-32x10_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/32x10_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
switch:
- platform: output
name: 'Switch 01'
output: out_01
id: switch_01
- platform: output
name: 'Switch 02'
output: out_02
id: switch_02
- platform: output
name: 'Switch 03'
output: out_03
id: switch_03
- platform: output
name: 'Switch 04'
output: out_04
id: switch_04
- platform: output
name: 'Switch 05'
output: out_05
id: switch_05
- platform: output
name: 'Switch 06'
output: out_06
id: switch_06
- platform: output
name: 'Switch 07'
output: out_07
id: switch_07
- platform: output
name: 'Switch 08'
output: out_08
id: switch_08
- platform: output
name: 'Switch 09'
output: out_09
id: switch_09
- platform: output
name: 'Switch 10'
output: out_10
id: switch_10
- platform: output
name: 'Switch 11'
output: out_11
id: switch_11
- platform: output
name: 'Switch 12'
output: out_12
id: switch_12
- platform: output
name: 'Switch 13'
output: out_13
id: switch_13
- platform: output
name: 'Switch 14'
output: out_14
id: switch_14
- platform: output
name: 'Switch 15'
output: out_15
id: switch_15
- 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:
- switch.toggle: switch_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs_1to14
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs_1to14
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs_1to14
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs_1to14
number: 4
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs_1to14
number: 5
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs_1to14
number: 6
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs_1to14
number: 8
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_08
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_09
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_10
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_11
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_12
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_13
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_14
- 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

View File

@@ -0,0 +1,732 @@
substitutions:
name: boneio-esp-cover-mix
friendly_name: 'BoneIO ESP Cover Mix Lights'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover-mix-lights_v0_5-v0_6
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_lights_v0_5-v0_6.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_5-v0_6/display.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/8_covers_16_output.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
# 'devices_v0_5-v0_6/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
light:
- platform: binary
name: 'Light 16'
output: out_16
id: light_16
- platform: binary
name: 'Light 17'
output: out_17
id: light_17
- platform: binary
name: 'Light 18'
output: out_18
id: light_18
- platform: binary
name: 'Light 19'
output: out_19
id: light_19
- platform: binary
name: 'Light 20'
output: out_20
id: light_20
- platform: binary
name: 'Light 21'
output: out_21
id: light_21
- platform: binary
name: 'Light 22'
output: out_22
id: light_22
- platform: binary
name: 'Light 23'
output: out_23
id: light_23
- platform: binary
name: 'Light 24'
output: out_24
id: light_24
- platform: binary
name: 'Light 25'
output: out_25
id: light_25
- platform: binary
name: 'Light 26'
output: out_26
id: light_26
- platform: binary
name: 'Light 27'
output: out_27
id: light_27
- platform: binary
name: 'Light 28'
output: out_28
id: light_28
- platform: binary
name: 'Light 29'
output: out_29
id: light_29
- platform: binary
name: 'Light 30'
output: out_30
id: light_30
- platform: binary
name: 'Light 31'
output: out_31
id: light_31
- platform: binary
name: 'Light 32'
output: out_32
id: light_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:
- light.toggle: light_15
- platform: gpio
name: 'IN_16'
id: in_16
pin:
pcf8574: pcf_inputs_15to28
number: 5
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_16
- platform: gpio
name: 'IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_15to28
number: 4
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_17
- platform: gpio
name: 'IN_18'
id: in_18
pin:
pcf8574: pcf_inputs_15to28
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_18
- platform: gpio
name: 'IN_19'
id: in_19
pin:
pcf8574: pcf_inputs_15to28
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_19
- platform: gpio
name: 'IN_20'
id: in_20
pin:
pcf8574: pcf_inputs_15to28
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_20
- platform: gpio
name: 'IN_21'
id: in_21
pin:
pcf8574: pcf_inputs_15to28
number: 0
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_21
- platform: gpio
name: 'IN_22'
id: in_22
pin:
pcf8574: pcf_inputs_15to28
number: 8
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_22
- platform: gpio
name: 'IN_23'
id: in_23
pin:
pcf8574: pcf_inputs_15to28
number: 9
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_23
- platform: gpio
name: 'IN_24'
id: in_24
pin:
pcf8574: pcf_inputs_15to28
number: 10
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_24
- platform: gpio
name: 'IN_25'
id: in_25
pin:
pcf8574: pcf_inputs_15to28
number: 11
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_25
- platform: gpio
name: 'IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_26
- platform: gpio
name: 'IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_27
- platform: gpio
name: 'IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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

View File

@@ -0,0 +1,732 @@
substitutions:
name: boneio-esp-cover-mix
friendly_name: 'BoneIO ESP Cover Mix Lights'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover-mix-lights
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_lights_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
light:
- platform: binary
name: 'Light 16'
output: out_16
id: light_16
- platform: binary
name: 'Light 17'
output: out_17
id: light_17
- platform: binary
name: 'Light 18'
output: out_18
id: light_18
- platform: binary
name: 'Light 19'
output: out_19
id: light_19
- platform: binary
name: 'Light 20'
output: out_20
id: light_20
- platform: binary
name: 'Light 21'
output: out_21
id: light_21
- platform: binary
name: 'Light 22'
output: out_22
id: light_22
- platform: binary
name: 'Light 23'
output: out_23
id: light_23
- platform: binary
name: 'Light 24'
output: out_24
id: light_24
- platform: binary
name: 'Light 25'
output: out_25
id: light_25
- platform: binary
name: 'Light 26'
output: out_26
id: light_26
- platform: binary
name: 'Light 27'
output: out_27
id: light_27
- platform: binary
name: 'Light 28'
output: out_28
id: light_28
- platform: binary
name: 'Light 29'
output: out_29
id: light_29
- platform: binary
name: 'Light 30'
output: out_30
id: light_30
- platform: binary
name: 'Light 31'
output: out_31
id: light_31
- platform: binary
name: 'Light 32'
output: out_32
id: light_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:
- light.toggle: light_15
- platform: gpio
name: 'IN_16'
id: in_16
pin:
pcf8574: pcf_inputs_15to28
number: 5
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_16
- platform: gpio
name: 'IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_15to28
number: 4
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_17
- platform: gpio
name: 'IN_18'
id: in_18
pin:
pcf8574: pcf_inputs_15to28
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_18
- platform: gpio
name: 'IN_19'
id: in_19
pin:
pcf8574: pcf_inputs_15to28
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_19
- platform: gpio
name: 'IN_20'
id: in_20
pin:
pcf8574: pcf_inputs_15to28
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_20
- platform: gpio
name: 'IN_21'
id: in_21
pin:
pcf8574: pcf_inputs_15to28
number: 0
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_21
- platform: gpio
name: 'IN_22'
id: in_22
pin:
pcf8574: pcf_inputs_15to28
number: 8
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_22
- platform: gpio
name: 'IN_23'
id: in_23
pin:
pcf8574: pcf_inputs_15to28
number: 9
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_23
- platform: gpio
name: 'IN_24'
id: in_24
pin:
pcf8574: pcf_inputs_15to28
number: 10
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_24
- platform: gpio
name: 'IN_25'
id: in_25
pin:
pcf8574: pcf_inputs_15to28
number: 11
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_25
- platform: gpio
name: 'IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_26
- platform: gpio
name: 'IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_27
- platform: gpio
name: 'IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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:
- light.toggle: light_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

View File

@@ -0,0 +1,732 @@
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_v0_5-v0_6
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_5-v0_6.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_5-v0_6/display.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/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

View File

@@ -0,0 +1,732 @@
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

837
boneio-cover_v0_5-v0_6.yaml Normal file
View File

@@ -0,0 +1,837 @@
substitutions:
name: boneio-esp-covers
friendly_name: 'BoneIO ESP Cover'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
platform: ESP32
board: nodemcu-32s
name_add_mac_suffix: true
project:
name: boneio.32x10-cover_v0_5-v0_6
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_v0_5-v0_6.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_5-v0_6/display.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',
# 'devices_v0_5-v0_6/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
- 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

View File

@@ -1,6 +1,6 @@
substitutions: substitutions:
name: boneio-esp32x10-covers name: boneio-esp-covers
friendly_name: 'BoneIO ESP 32x10 Cover' friendly_name: 'BoneIO ESP Cover'
esphome: esphome:
name: '${name}' name: '${name}'
@@ -9,8 +9,9 @@ esphome:
board: nodemcu-32s board: nodemcu-32s
name_add_mac_suffix: true name_add_mac_suffix: true
project: project:
name: boneio.32x10-covers name: boneio.32x10-cover
version: '1.0' version: '1.0'
ethernet: ethernet:
id: eth id: eth
type: LAN8720 type: LAN8720
@@ -21,21 +22,21 @@ ethernet:
power_pin: GPIO16 power_pin: GPIO16
dashboard_import: dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-covers_v0_7.yaml@single_file_test package_import_url: github://boneIO-eu/esphome/boneio-cover_v0_7.yaml@v1.0
import_full_config: true import_full_config: true
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: single_file_test ref: v1.0
files: [ files: [
'devices_v0_7/buzzer.yaml', 'devices/buzzer.yaml',
'devices_v0_7/display.yaml', 'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml', 'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml', 'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml', 'devices_v0_7/pcf.yaml',
'boards_v0_7/16_cover_pcf.yaml', 'boards/16_cover_pcf.yaml',
# 'devices_v0_7/one_wire.yaml', # 'devices_v0_7/one_wire.yaml',
# 'devices_v0_7/uart.yaml', # 'devices_v0_7/uart.yaml',
] ]

View File

@@ -1,155 +0,0 @@
substitutions:
name_add_mac_suffix: 'true'
node_name: boneio
esphome:
name: ${node_name}
platform: ESP32
board: nodemcu-32s
# set to false if you already added this device to ESPHOME add-on
name_add_mac_suffix: ${name_add_mac_suffix}
project:
name: boneio.32x10-lights
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-lights.yaml@single_file_test
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: single_file_test
files:
[
'devices/buzzer.yaml',
# 'devices/display.yaml',
'devices/i2c.yaml',
'devices/ina219.yaml',
'devices/lm75b.yaml',
'devices/one_wire.yaml',
'devices/pcf_inputs.yaml',
'devices/uart.yaml',
'boards/32x10_outputs.yaml',
]
logger:
baud_rate: 0 #IMPORTANT FOR V0.5 TO GET MODBUS WORKING
api:
ota:
password: boneio
web_server:
port: 80
local: true
time:
- platform: homeassistant
timezone: Europe/Warsaw
id: homeassistant_time
light:
- platform: binary
name: 'OUT 1'
output: out_1
- platform: binary
name: 'OUT 2'
output: out_2
- platform: binary
name: 'OUT 3'
output: out_3
- platform: binary
name: 'OUT 4'
output: out_4
- platform: binary
name: 'OUT 5'
output: out_5
- platform: binary
name: 'OUT 6'
output: out_6
- platform: binary
name: 'OUT 7'
output: out_7
- platform: binary
name: 'OUT 8'
output: out_8
- platform: binary
name: 'OUT 9'
output: out_9
- platform: binary
name: 'OUT 10'
output: out_10
- platform: binary
name: 'OUT 11'
output: out_11
- platform: binary
name: 'OUT 12'
output: out_12
- platform: binary
name: 'OUT 13'
output: out_13
- platform: binary
name: 'OUT 14'
output: out_14
- platform: binary
name: 'OUT 15'
output: out_15
- platform: binary
name: 'OUT 16'
output: out_16
- platform: binary
name: 'OUT 17'
output: out_17
- platform: binary
name: 'OUT 18'
output: out_18
- platform: binary
name: 'OUT 19'
output: out_19
- platform: binary
name: 'OUT 20'
output: out_20
- platform: binary
name: 'OUT 21'
output: out_21
- platform: binary
name: 'OUT 22'
output: out_22
- platform: binary
name: 'OUT 23'
output: out_23
- platform: binary
name: 'OUT 24'
output: out_24
- platform: binary
name: 'OUT 25'
output: out_25
- platform: binary
name: 'OUT 26'
output: out_26
- platform: binary
name: 'OUT 27'
output: out_27
- platform: binary
name: 'OUT 28'
output: out_28
- platform: binary
name: 'OUT 29'
output: out_29
- platform: binary
name: 'OUT 30'
output: out_30
- platform: binary
name: 'OUT 31'
output: out_31
- platform: binary
name: 'OUT 32'
output: out_32

View File

@@ -27,6 +27,14 @@ text_sensor:
id: wt32_uptime id: wt32_uptime
entity_category: diagnostic entity_category: diagnostic
icon: mdi:clock-start icon: mdi:clock-start
- platform: template
name: 'IP Address'
id: ip_address
entity_category: diagnostic
icon: 'mdi:ip-network'
lambda: |-
return id(eth).get_ip_addresses().empty() ? "Unset" : id(eth).get_ip_addresses()[0].str();
update_interval: 60s
script: script:
- id: screensaver_script - id: screensaver_script
@@ -40,11 +48,10 @@ script:
esphome: esphome:
on_boot: on_boot:
# by default display show the first page defined in display (which is the logo page) until full initialization
# after that we show the first_page and start the screensaver script
priority: 0 priority: 0
then: then:
- display.page.show: first_page - display.page.show: first_page
- component.update: ip_address
- component.update: oled_display - component.update: oled_display
- script.execute: screensaver_script - script.execute: screensaver_script
@@ -83,43 +90,41 @@ binary_sensor:
# restart screensaver script # restart screensaver script
- script.execute: screensaver_script - script.execute: screensaver_script
# it.printf(4, 37, id(roboto_9), TextAlign::BASELINE_LEFT ,"IP addr:");
# it.printf(124, 37, id(roboto_9), TextAlign::BASELINE_RIGHT ,"%s", id(eth).get_ip_addresses().str().c_str());
display: display:
- platform: ssd1306_i2c - platform: ssd1306_i2c
id: oled_display id: oled_display
model: 'SH1106 128x64' model: 'SH1106 128x64'
address: 0x3C address: 0x3C
i2c_id: bus_b
contrast: 0.5 contrast: 0.5
pages: pages:
- id: first_page - id: first_page
lambda: |- lambda: |-
it.rectangle(0, 0, 126, 15); it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(roboto_9), TextAlign::BASELINE_CENTER, "BoneIO"); it.printf(64,11, id(size_10), TextAlign::BASELINE_CENTER, "bone IO");
it.strftime(64, 25, id(roboto_9), TextAlign::BASELINE_CENTER ,"%c", id(homeassistant_time).now()); it.printf(4, 37, id(size_10), TextAlign::BASELINE_LEFT ,"IP addr:");
it.printf(4, 49, id(roboto_9), TextAlign::BASELINE_LEFT ,"Uptime:"); it.printf(124, 37, id(size_10), TextAlign::BASELINE_RIGHT ,"%s", id(ip_address).state.c_str());
it.printf(124, 49, id(roboto_9), TextAlign::BASELINE_RIGHT ,"%s", id(wt32_uptime).state.c_str()); it.printf(4, 49, id(size_10), TextAlign::BASELINE_LEFT ,"Uptime:");
it.printf(4, 61, id(roboto_9), TextAlign::BASELINE_LEFT ,"Temperature:"); it.printf(124, 49, id(size_10), TextAlign::BASELINE_RIGHT ,"%s", id(wt32_uptime).state.c_str());
it.printf(124, 61, id(roboto_9), TextAlign::BASELINE_RIGHT ,"%.2f°C", id(boneIO_temp).state); it.printf(4, 61, id(size_10), TextAlign::BASELINE_LEFT ,"Temperature:");
it.printf(124, 61, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2f°C", id(boneIO_temp).state);
# additional pages should be defined between the first and last page # additional pages should be defined between the first and last page
- id: last_page - id: last_page
lambda: |- lambda: |-
it.rectangle(0, 0, 126, 15); it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(roboto_9), TextAlign::BASELINE_CENTER, "BoneIO"); it.printf(64,11, id(size_10), TextAlign::BASELINE_CENTER, "bone IO");
it.printf(4, 25, id(roboto_9), TextAlign::BASELINE_LEFT ,"Current:"); it.printf(4, 25, id(size_10), TextAlign::BASELINE_LEFT ,"Current:");
it.printf(124, 25, id(roboto_9), TextAlign::BASELINE_RIGHT ,"%.3fA", id(ina_current).state); it.printf(124, 25, id(size_10), TextAlign::BASELINE_RIGHT ,"%.3fA", id(ina_current).state);
it.printf(4, 37, id(roboto_9), TextAlign::BASELINE_LEFT ,"Power:"); it.printf(4, 37, id(size_10), TextAlign::BASELINE_LEFT ,"Power:");
it.printf(124, 37, id(roboto_9), TextAlign::BASELINE_RIGHT ,"%.2fW", id(ina_power).state); it.printf(124, 37, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fW", id(ina_power).state);
it.printf(4, 49, id(roboto_9), TextAlign::BASELINE_LEFT ,"Bus Volt:"); it.printf(4, 49, id(size_10), TextAlign::BASELINE_LEFT ,"Bus Volt:");
it.printf(124, 49, id(roboto_9), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_bus_voltage).state); it.printf(124, 49, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_bus_voltage).state);
it.printf(4, 61, id(roboto_9), TextAlign::BASELINE_LEFT ,"Shunt Volt:"); it.printf(4, 61, id(size_10), TextAlign::BASELINE_LEFT ,"Shunt Volt:");
it.printf(124, 61, id(roboto_9), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_shunt_voltage).state); it.printf(124, 61, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_shunt_voltage).state);
- id: screensaver - id: screensaver
lambda: |- lambda: |-
it.fill(COLOR_OFF); it.fill(COLOR_OFF);
font: font:
- file: 'gfonts://Roboto' - file: 'gfonts://Ubuntu'
id: roboto_9 id: size_10
size: 9 size: 10

View File

@@ -11,3 +11,11 @@ pcf8574:
i2c_id: bus_a i2c_id: bus_a
address: 0x22 address: 0x22
pcf8575: false pcf8575: false
- id: 'pcf_left'
address: 0x21
pcf8575: true
i2c_id: bus_b
- id: 'pcf_right'
address: 0x20
pcf8575: true
i2c_id: bus_b

View File

@@ -1,9 +0,0 @@
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO2
mode:
output: true
inverted: false

View File

@@ -7,7 +7,7 @@ sensor:
on_raw_value: on_raw_value:
then: then:
- text_sensor.template.publish: - text_sensor.template.publish:
id: wt32_uptime 7 id: wt32_uptime
state: !lambda |- state: !lambda |-
int seconds = round(id(wt32_uptime_seconds).raw_state); int seconds = round(id(wt32_uptime_seconds).raw_state);
int days = seconds / (24 * 3600); int days = seconds / (24 * 3600);

View File

@@ -0,0 +1,18 @@
pcf8574:
- id: 'pcf_inputs_1to14'
i2c_id: i2c_bus
address: 0x20
pcf8575: true
- id: 'pcf_inputs_15to28'
i2c_id: i2c_bus
address: 0x21
pcf8575: true
- id: 'pcf_inputs_28to35_menu'
i2c_id: i2c_bus
address: 0x22
pcf8575: false
mcp23017:
- id: 'mcp_left'
address: 0x23
- id: 'mcp_right'
address: 0x24

View File

@@ -1,5 +1,5 @@
uart: uart:
id: uart_pin3_1 id: uart_pin14_15
rx_pin: GPIO14 rx_pin: GPIO14
tx_pin: GPIO15 tx_pin: GPIO15
baud_rate: 9600 baud_rate: 9600

View File

@@ -1,188 +0,0 @@
substitutions:
devicename: wt32
esphome:
name: ${devicename}
platform: ESP32
board: esp-wrover-kit
on_boot:
then:
ds1307.read_time:
ethernet:
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
phy_addr: 1
power_pin: GPIO16
id: eth
external_components:
- source: github://ell249/esphome-PCT2075@master
components: [ pct2075 ]
- source: github://btomala/esphome-LM75@v1
components: [ lm75 ]
font:
- file: "fonts/DejaVuSans.ttf"
id: fontSmall
size: 9
- file: "fonts/danube__.ttf"
id: danube
size: 15
logger:
level: DEBUG
baud_rate: 0 #Important. You can't use serial port
api:
ota:
web_server:
port: 80
i2c:
- id: bus_b
sda: 14
scl: 15
scan: true
time:
- platform: ds1307
update_interval: never
- platform: homeassistant
on_time_sync:
then:
ds1307.write_time:
display:
- platform: ssd1306_i2c
model: "SH1106 128x64"
address: 0x3C
id: my_display
pages:
- id: page1
lambda: |-
it.print(3, 3, id(danube), "bone");
it.print(53, 3, id(danube), "iO");
it.print(3, 22, id(fontSmall), "Host: ${devicename}");
int seconds = round(id(uptime_sensor).raw_state);
int days = seconds / (24 * 3600);
seconds = seconds % (24 * 3600);
int hours = seconds / 3600;
seconds = seconds % 3600;
int minutes = seconds / 60;
seconds = seconds % 60;
it.printf(3, 32, id(fontSmall), "IP Address: 192.168.1.1");
it.printf(3, 42, id(fontSmall), "Uptime: %s", (
(days ? to_string(days) + "d " : "") +
(hours ? to_string(hours) + "h " : "") +
(minutes ? to_string(minutes) + "m " : "") +
(to_string(seconds) + "s")
).c_str());
- id: page2
lambda: |-
it.printf(0, 0, id(fontSmall), "MCP1_1: %s", id(switch_mcp_out1_1).state ? "ON" : "OFF");
it.print(0, 10, id(fontSmall), "This is page 2!");
sensor:
- platform: mcp9808
name: "Living Room Temperature"
update_interval: 60s
- platform: uptime
id: uptime_sensor
- platform: lm75
id: temperature
name: "Board temperature measurement"
update_interval: 60s
address: 0x48
# sensor:
# it.printf(3, 32, id(fontSmall), "Wi-Fi: %.1s", id(eth).state);
# - platform: pct2075
# address: 0x18
# temperature:
# name: "PCT2075 Temperature"
# update_interval: 30s
mcp23017:
- id: 'mcp23017_out1'
address: 0x20
- id: 'mcp23017_out2'
address: 0x21
- id: 'mcp23017_out3'
address: 0x22
- id: 'mcp23017_out4'
address: 0x23
# # Individual outputs
switch:
- platform: gpio
id: switch_mcp_out1_1
name: "MCP23017 Pin A0"
pin:
mcp23xxx: mcp23017_out1
number: 0
mode:
output: true
inverted: false
- platform: gpio
name: "MCP23017_1 Pin A0"
pin:
mcp23xxx: mcp23017_out2
number: 0
mode:
output: true
inverted: false
# # Individual inputs
binary_sensor:
- platform: gpio
id: internal_button
pin:
number: GPIO4
mode:
input: true
pullup: true
inverted: true
filters:
- delayed_on: 10ms
on_press:
then:
- display.page.show_next: my_display
- platform: gpio
id: binary_sensor1
name: "MCP23017 Pin A0"
pin:
mcp23xxx: mcp23017_out4
number: 0
mode:
output: false
inverted: false
on_multi_click:
- timing:
- ON for at most 1s
- OFF for at most 0.3s
- ON for at most 1s
- OFF for at least 0.2s
then:
- switch.turn_on: switch_mcp_out1_1
- logger.log: "Double-Clicked"
- timing:
- ON for at most 1s
- OFF for at least 0.5s
then:
- switch.toggle: switch_mcp_out1_1
- logger.log: "Single-Clicked"
# name: "MCP23017 Pin B7"
# pin:
# mcp23xxx: mcp23017_hub
# # Use pin B7
# number: 15
# # One of INPUT or INPUT_PULLUP
# mode:
# input: true
# pullup: true
# inverted: false