Compare commits

..

33 Commits

Author SHA1 Message Date
Pawel
0a05c6c561 Merge pull request #10 from boneIO-eu/input_board_v_0_5
Input board v 0 5
2024-03-21 06:19:40 +01:00
Pawel
1c97c125aa Merge branch 'dev' into input_board_v_0_5 2024-03-21 06:19:34 +01:00
pszafer
3ecb103909 change config comments 2024-03-21 06:14:38 +01:00
pszafer
e061ec0590 remove ip address from display 2024-03-20 18:40:17 +01:00
pszafer
b715c58c31 add cover mix to config 2024-03-19 19:41:55 +01:00
pszafer
8371dbe5a7 speed up i2c bus frequency 2023-09-07 07:10:36 +02:00
pszafer
01bf7ea304 speed up i2c bus frequency 2023-09-07 07:01:23 +02:00
Kamil_B
1a19b75c41 correction in mosfet 2023-05-25 15:27:52 +02:00
Kamil_B
a7dc90f3c3 add mosfet board 2023-04-14 07:23:35 +02:00
Kamil_B
3272ba1921 add mosfet48 board
add mosfet48 board
2023-01-17 11:50:09 +01:00
Paweł Szafer
e580dc4748 modify console yaml according to addon 2022-12-20 09:53:52 +01:00
Maciej Krasuski
57ff9007ac Update boneio_config_for_esphome_addon.yaml 2022-12-19 22:38:51 +01:00
Maciej Krasuski
0d11a4eba1 Merge branch 'input_board_v_0_5' of https://github.com/boneIO-eu/esphome into input_board_v_0_5 2022-12-19 18:40:39 +01:00
Maciej Krasuski
c4bdc07ebb added ip address and some substitutions 2022-12-19 18:40:34 +01:00
Paweł Szafer
436adbddd8 remove cover config from main dir 2022-12-19 15:49:43 +01:00
Paweł Szafer
78c771489e fix 1 wire pin 2022-12-17 18:45:42 +01:00
Kamil_B
6a55c7fbc1 Add 24 relay board 2022-12-16 10:14:03 +01:00
Paweł Szafer
1cf3b09faa fix covers 2022-12-15 06:39:11 +01:00
Paweł Szafer
9fca8bdc66 adapt main config for PCF 2022-12-14 10:10:45 +01:00
Paweł Szafer
ffd891c65c add name_add_mac_suffix: true 2022-12-14 10:09:17 +01:00
Paweł Szafer
b8de87b0e2 add cover inputs PCF/MCP to input v0.5 2022-12-14 10:04:43 +01:00
Kamil_B
4237cf72c2 update cover 2022-12-01 08:28:04 +01:00
Kamil_B
d525e17d65 update cover 2022-12-01 08:26:57 +01:00
Kamil_B
101836ec17 Merge branch 'dev' of https://github.com/boneIO-eu/esphome into dev 2022-12-01 08:21:52 +01:00
Kamil_B
6a1e0695a7 cover_board
example of a configuration for a shutter plate
2022-12-01 08:21:42 +01:00
Paweł Szafer
4431a53ddb add bus_id to mcp relays 2022-11-27 15:43:10 +01:00
Paweł Szafer
9639d06e77 revert dir_name 2022-11-27 15:26:58 +01:00
Paweł Szafer
6a7afab39c remove .esphome dir 2022-11-27 13:15:11 +01:00
Paweł Szafer
d3e65bce3f ignore .esphome 2022-11-27 13:14:12 +01:00
Paweł Szafer
50a7690c16 fix dir path 2022-11-27 13:13:44 +01:00
Paweł Szafer
eb4dd61311 fix fonts path 2022-11-25 15:53:19 +01:00
Paweł Szafer
bd0cf35bac add readme info 2022-11-07 18:59:42 +01:00
Paweł Szafer
672c1ba946 Change dev to support Input board v0.5 2022-11-07 18:59:03 +01:00
26 changed files with 4487 additions and 1700 deletions

View File

@@ -1,50 +0,0 @@
{
"storage_version": 1,
"name": "boneio",
"comment": null,
"esphome_version": "2022.11.1",
"src_version": 1,
"address": "boneio.local",
"web_port": 80,
"esp_platform": "ESP32",
"build_path": ".esphome/build/boneio",
"firmware_bin_path": ".esphome/build/boneio/.pioenvs/boneio/firmware.bin",
"loaded_integrations": [
"api",
"async_tcp",
"binary_sensor",
"display",
"ds1307",
"esp32",
"esphome",
"ethernet",
"external_components",
"font",
"gpio",
"homeassistant",
"i2c",
"ina219",
"json",
"lm75",
"logger",
"md5",
"mdns",
"network",
"ota",
"pcf8574",
"preferences",
"script",
"sensor",
"socket",
"ssd1306_base",
"ssd1306_i2c",
"substitutions",
"switch",
"template",
"text_sensor",
"time",
"uptime",
"web_server",
"web_server_base"
]
}

View File

@@ -1,2 +1,7 @@
# esphome
BoneIO ESP Esphome configuration and custom components repo
Dev branch is for the newest not released version of the board!
Look for branch with yout input board version to download current software.

View File

@@ -14,13 +14,6 @@ cover:
stop_action:
- switch.turn_off: cover_open_01
- switch.turn_off: cover_close_01
tilt_action:
- cover.close: this cover
- delay: 2s
- switch.turn_on: open_cover_switch
- lambda: |- wyliczenie czasu z zadanej pozycji
- delay: X
- switch.turn_off: open_cover_switch
- platform: time_based
name: "${node_name} Cover 02"
@@ -101,3 +94,163 @@ cover:
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

@@ -0,0 +1,900 @@
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:
- cover.open: cover_01
on_release:
then:
- cover.stop: cover_01
- 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:
- cover.close: cover_01
on_release:
- cover.stop: cover_01
- 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:
cover.open: cover_02
on_release:
then:
cover.stop: cover_02
- 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:
cover.close: cover_02
on_release:
then:
cover.stop: cover_02
# - 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:
# cover.open: cover_03
# on_release:
# then:
# cover.stop: cover_03
# - 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:
# cover.close: cover_03
# on_release:
# then:
# cover.stop: cover_03
# - 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:
# cover.open: cover_04
# on_release:
# then:
# cover.stop: cover_04
# - 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:
# cover.close: cover_04
# on_release:
# then:
# cover.stop: cover_04
# - 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:
# cover.open: cover_05
# on_release:
# then:
# cover.stop: cover_05
# - 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:
# cover.close: cover_05
# on_release:
# then:
# cover.stop: cover_05
# - 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:
# cover.open: cover_06
# on_release:
# then:
# cover.stop: cover_06
# - 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:
# cover.close: cover_06
# on_release:
# then:
# cover.stop: cover_06
# - 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_22
# - 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_05"
id: in_05
pin:
mcp23xxx: mcp_inputs_1to16
number: 4
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.open: cover_03
on_release:
then:
cover.stop: cover_03
- 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:
cover.close: cover_03
on_release:
then:
cover.stop: cover_03
- 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:
cover.open: cover_04
on_release:
then:
cover.stop: cover_04
- 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:
cover.close: cover_04
on_release:
then:
cover.stop: cover_04
- 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:
cover.open: cover_05
on_release:
then:
cover.stop: cover_05
- 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:
cover.close: cover_05
on_release:
then:
cover.stop: cover_05
- 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:
cover.open: cover_06
on_release:
then:
cover.stop: cover_06
- 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:
cover.close: cover_06
on_release:
then:
cover.stop: cover_06
- 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_22
- 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

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,310 @@
mcp23017:
- id: 'mcp_outputs_1to16'
i2c_id: bus_b
address: 0x21
- id: 'mcp_outputs_17to32'
i2c_id: bus_b
address: 0x20
switch:
- platform: gpio
id: cover_open_01
pin:
mcp23xxx: mcp_outputs_1to16
number: 0
mode: OUTPUT
interlock: &cover_interlock_01 [cover_open_01, cover_close_01]
restore_mode: always off
- platform: gpio
id: cover_close_01
pin:
mcp23xxx: mcp_outputs_1to16
number: 1
mode: OUTPUT
interlock: *cover_interlock_01
restore_mode: always off
- platform: gpio
id: cover_open_02
pin:
mcp23xxx: mcp_outputs_1to16
number: 2
mode: OUTPUT
interlock: &cover_interlock_02 [cover_open_02, cover_close_02]
restore_mode: always off
- platform: gpio
id: cover_close_02
pin:
mcp23xxx: mcp_outputs_1to16
number: 3
mode: OUTPUT
interlock: *cover_interlock_02
restore_mode: always off
- platform: gpio
id: cover_open_03
pin:
mcp23xxx: mcp_outputs_1to16
number: 4
mode: OUTPUT
interlock: &cover_interlock_03 [cover_open_03, cover_close_03]
restore_mode: always off
- platform: gpio
id: cover_close_03
pin:
mcp23xxx: mcp_outputs_1to16
number: 5
mode: OUTPUT
interlock: *cover_interlock_03
restore_mode: always off
- platform: gpio
id: cover_open_04
pin:
mcp23xxx: mcp_outputs_1to16
number: 6
mode: OUTPUT
interlock: &cover_interlock_04 [cover_open_04, cover_close_04]
restore_mode: always off
- platform: gpio
id: cover_close_04
pin:
mcp23xxx: mcp_outputs_1to16
number: 7
mode: OUTPUT
interlock: *cover_interlock_04
restore_mode: always off
- platform: gpio
id: cover_open_05
pin:
mcp23xxx: mcp_outputs_1to16
number: 8
mode: OUTPUT
interlock: &cover_interlock_05 [cover_open_05, cover_close_05]
restore_mode: always off
- platform: gpio
id: cover_close_05
pin:
mcp23xxx: mcp_outputs_1to16
number: 9
mode: OUTPUT
interlock: *cover_interlock_05
restore_mode: always off
- platform: gpio
id: cover_open_06
pin:
mcp23xxx: mcp_outputs_1to16
number: 10
mode: OUTPUT
interlock: &cover_interlock_06 [cover_open_06, cover_close_06]
restore_mode: always off
- platform: gpio
id: cover_close_06
pin:
mcp23xxx: mcp_outputs_1to16
number: 11
mode: OUTPUT
interlock: *cover_interlock_06
restore_mode: always off
- platform: gpio
id: cover_open_07
pin:
mcp23xxx: mcp_outputs_1to16
number: 12
mode: OUTPUT
interlock: &cover_interlock_07 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_07
pin:
mcp23xxx: mcp_outputs_1to16
number: 13
mode: OUTPUT
interlock: *cover_interlock_07
restore_mode: always off
- platform: gpio
id: cover_open_08
pin:
mcp23xxx: mcp_outputs_1to16
number: 14
mode: OUTPUT
interlock: &cover_interlock_08 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_08
pin:
mcp23xxx: mcp_outputs_1to16
number: 15
mode: OUTPUT
interlock: *cover_interlock_08
restore_mode: always off
- platform: gpio
id: cover_open_09
pin:
mcp23xxx: mcp_outputs_17to32
number: 0
mode: OUTPUT
interlock: &cover_interlock_09 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_09
pin:
mcp23xxx: mcp_outputs_17to32
number: 1
mode: OUTPUT
interlock: *cover_interlock_09
restore_mode: always off
- platform: gpio
id: cover_open_10
pin:
mcp23xxx: mcp_outputs_17to32
number: 2
mode: OUTPUT
interlock: &cover_interlock_10 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_10
pin:
mcp23xxx: mcp_outputs_17to32
number: 3
mode: OUTPUT
interlock: *cover_interlock_10
restore_mode: always off
- platform: gpio
id: cover_open_11
pin:
mcp23xxx: mcp_outputs_17to32
number: 4
mode: OUTPUT
interlock: &cover_interlock_11 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_11
pin:
mcp23xxx: mcp_outputs_17to32
number: 5
mode: OUTPUT
interlock: *cover_interlock_11
restore_mode: always off
- platform: gpio
id: cover_open_12
pin:
mcp23xxx: mcp_outputs_17to32
number: 6
mode: OUTPUT
interlock: &cover_interlock_12 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_12
pin:
mcp23xxx: mcp_outputs_17to32
number: 7
mode: OUTPUT
interlock: *cover_interlock_12
restore_mode: always off
- platform: gpio
id: cover_open_13
pin:
mcp23xxx: mcp_outputs_17to32
number: 8
mode: OUTPUT
interlock: &cover_interlock_13 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_13
pin:
mcp23xxx: mcp_outputs_17to32
number: 9
mode: OUTPUT
interlock: *cover_interlock_13
restore_mode: always off
- platform: gpio
id: cover_open_14
pin:
mcp23xxx: mcp_outputs_17to32
number: 10
mode: OUTPUT
interlock: &cover_interlock_14 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_14
pin:
mcp23xxx: mcp_outputs_17to32
number: 11
mode: OUTPUT
interlock: *cover_interlock_14
restore_mode: always off
- platform: gpio
id: cover_open_15
pin:
mcp23xxx: mcp_outputs_17to32
number: 12
mode: OUTPUT
interlock: &cover_interlock_15 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_15
pin:
mcp23xxx: mcp_outputs_17to32
number: 13
mode: OUTPUT
interlock: *cover_interlock_15
restore_mode: always off
- platform: gpio
id: cover_open_16
pin:
mcp23xxx: mcp_outputs_17to32
number: 14
mode: OUTPUT
interlock: &cover_interlock_16 [cover_open_07, cover_close_07]
restore_mode: always off
- platform: gpio
id: cover_close_16
pin:
mcp23xxx: mcp_outputs_17to32
number: 15
mode: OUTPUT
interlock: *cover_interlock_16
restore_mode: always off
# example
# relay
# - platform: gpio
# id: relay_13
# pin:
# mcp23xxx: mcp_outputs_17to32
# number: 4
# mode:
# output: true
# inverted: false

View File

@@ -0,0 +1,60 @@
pcf8574:
- id: 'pcf_1'
address: 0x21
pcf8575: true
i2c_id: bus_b
- id: 'pcf_2'
address: 0x20
pcf8575: true
i2c_id: bus_b
switch:
- platform: gpio
id: cover_open_01
pin:
pcf8574: pcf_1
# Use pin number 0
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_01 [cover_open_01, cover_close_01]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_01
pin:
pcf8574: pcf_1
# Use pin number 1
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_01
restore_mode: always off
- platform: gpio
id: cover_open_02
pin:
pcf8574: pcf_1
# Use pin number 3
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_02 [cover_open_02, cover_close_02]
restore_mode: always off
- platform: gpio
id: cover_close_02
pin:
pcf8574: pcf_1
# Use pin number 2
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_02
restore_mode: always off

View File

@@ -0,0 +1,491 @@
binary_sensor:
- platform: gpio
name: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_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: '${node_name} IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_15to28
number: 4
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_17
- platform: gpio
name: '${node_name} IN_18'
id: in_18
pin:
pcf8574: pcf_inputs_15to28
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_18
- platform: gpio
name: '${node_name} IN_19'
id: in_19
pin:
pcf8574: pcf_inputs_15to28
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_19
- platform: gpio
name: '${node_name} IN_20'
id: in_20
pin:
pcf8574: pcf_inputs_15to28
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_20
- platform: gpio
name: '${node_name} IN_21'
id: in_21
pin:
pcf8574: pcf_inputs_15to28
number: 0
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_21
- platform: gpio
name: '${node_name} IN_22'
id: in_22
pin:
pcf8574: pcf_inputs_15to28
number: 8
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_22
- platform: gpio
name: '${node_name} IN_23'
id: in_23
pin:
pcf8574: pcf_inputs_15to28
number: 9
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_23
- platform: gpio
name: '${node_name} IN_24'
id: in_24
pin:
pcf8574: pcf_inputs_15to28
number: 10
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_24
- platform: gpio
name: '${node_name} IN_25'
id: in_25
pin:
pcf8574: pcf_inputs_15to28
number: 11
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_25
- platform: gpio
name: '${node_name} IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_26
- platform: gpio
name: '${node_name} IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_27
- platform: gpio
name: '${node_name} IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_28
- platform: gpio
name: '${node_name} IN_29'
id: in_29
pin:
pcf8574: pcf_inputs_28to35_menu
number: 0
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_29
- platform: gpio
name: '${node_name} IN_30'
id: in_30
pin:
pcf8574: pcf_inputs_28to35_menu
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_30
- platform: gpio
name: '${node_name} IN_31'
id: in_31
pin:
pcf8574: pcf_inputs_28to35_menu
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_31
- platform: gpio
name: '${node_name} IN_32'
id: in_32
pin:
pcf8574: pcf_inputs_28to35_menu
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: relay_32
- platform: gpio
name: '${node_name} IN_33'
pin:
pcf8574: pcf_inputs_28to35_menu
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: '${node_name} IN_34'
pin:
pcf8574: pcf_inputs_28to35_menu
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: '${node_name} IN_35'
pin:
pcf8574: pcf_inputs_28to35_menu
number: 6
mode:
input: true
inverted: true

121
boards/cover_mix.yaml Normal file
View File

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

@@ -5,9 +5,11 @@ 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

View File

@@ -0,0 +1,543 @@
pcf8574:
- id: 'pcf_1'
address: 0x20
pcf8575: true
i2c_id: bus_b
- id: 'pcf_2'
address: 0x21
pcf8575: true
i2c_id: bus_b
- id: 'pcf_3'
address: 0x22
pcf8575: true
i2c_id: bus_b
switch:
- platform: gpio
id: relay_1
name: "Relay_01"
pin:
pcf8574: pcf_1
# Use pin number 0
number: 7
mode:
output: true
inverted: true
- platform: gpio
id: relay_2
name: "Relay_02"
pin:
pcf8574: pcf_1
# Use pin number 1
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: relay_3
name: "Relay_03"
pin:
pcf8574: pcf_1
# Use pin number 2
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: relay_4
name: "Relay_04"
pin:
pcf8574: pcf_1
# Use pin number 3
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: relay_5
name: "Relay_05"
pin:
pcf8574: pcf_1
# Use pin number 4
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: relay_6
name: "Relay_06"
pin:
pcf8574: pcf_1
# Use pin number 5
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: relay_7
name: "Relay_07"
pin:
pcf8574: pcf_1
# Use pin number 6
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: relay_8
name: "Relay_08"
pin:
pcf8574: pcf_1
# Use pin number 7
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: relay_9
name: "Relay_09"
pin:
pcf8574: pcf_2
# Use pin number 0
number: 7
mode:
output: true
inverted: true
- platform: gpio
id: relay_10
name: "Relay_10"
pin:
pcf8574: pcf_2
# Use pin number 1
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: relay_11
name: "Relay_11"
pin:
pcf8574: pcf_2
# Use pin number 2
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: relay_12
name: "Relay_12"
pin:
pcf8574: pcf_2
# Use pin number 3
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: relay_13
name: "Relay_13"
pin:
pcf8574: pcf_2
# Use pin number 4
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: relay_14
name: "Relay_14"
pin:
pcf8574: pcf_2
# Use pin number 5
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: relay_15
name: "Relay_15"
pin:
pcf8574: pcf_2
# Use pin number 6
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: relay_16
name: "Relay_16"
pin:
pcf8574: pcf_2
# Use pin number 7
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: relay_17
name: "Relay_17"
pin:
pcf8574: pcf_3
# Use pin number 15
number: 7
mode:
output: true
inverted: true
- platform: gpio
id: relay_18
name: "Relay_18"
pin:
pcf8574: pcf_3
# Use pin number 14
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: relay_19
name: "Relay_19"
pin:
pcf8574: pcf_3
# Use pin number 13
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: relay_20
name: "Relay_20"
pin:
pcf8574: pcf_3
# Use pin number 12
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: relay_21
name: "Relay_21"
pin:
pcf8574: pcf_3
# Use pin number 11
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: relay_22
name: "Relay_22"
pin:
pcf8574: pcf_3
# Use pin number 10
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: relay_23
name: "Relay_23"
pin:
pcf8574: pcf_3
# Use pin number 9
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: relay_24
name: "Relay_24"
pin:
pcf8574: pcf_3
# Use pin number 8
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: relay_25
name: "Relay_25"
pin:
pcf8574: pcf_1
# Use pin number 15
number: 8
mode:
output: true
inverted: true
- platform: gpio
id: relay_26
name: "Relay_26"
pin:
pcf8574: pcf_1
# Use pin number 14
number: 9
mode:
output: true
inverted: true
- platform: gpio
id: relay_27
name: "Relay_27"
pin:
pcf8574: pcf_1
# Use pin number 13
number: 10
mode:
output: true
inverted: true
- platform: gpio
id: relay_28
name: "Relay_28"
pin:
pcf8574: pcf_1
# Use pin number 12
number: 11
mode:
output: true
inverted: true
- platform: gpio
id: relay_29
name: "Relay_29"
pin:
pcf8574: pcf_1
# Use pin number 11
number: 12
mode:
output: true
inverted: true
- platform: gpio
id: relay_30
name: "Relay_30"
pin:
pcf8574: pcf_1
# Use pin number 10
number: 13
mode:
output: true
inverted: true
- platform: gpio
id: relay_31
name: "Relay_31"
pin:
pcf8574: pcf_1
# Use pin number 9
number: 14
mode:
output: true
inverted: true
- platform: gpio
id: relay_32
name: "Relay_32"
pin:
pcf8574: pcf_1
# Use pin number 8
number: 15
mode:
output: true
inverted: true
- platform: gpio
id: relay_33
name: "Relay_33"
pin:
pcf8574: pcf_2
# Use pin number 8
number: 8
mode:
output: true
inverted: true
- platform: gpio
id: relay_34
name: "Relay_34"
pin:
pcf8574: pcf_2
# Use pin number 8
number: 9
mode:
output: true
inverted: true
- platform: gpio
id: relay_35
name: "Relay_35"
pin:
pcf8574: pcf_2
# Use pin number 8
number: 10
mode:
output: true
inverted: true
- platform: gpio
id: relay_36
name: "Relay_36"
pin:
pcf8574: pcf_2
# Use pin number 8
number: 11
mode:
output: true
inverted: true
- platform: gpio
id: relay_37
name: "Relay_37"
pin:
pcf8574: pcf_2
# Use pin number 8
number: 12
mode:
output: true
inverted: true
- platform: gpio
id: relay_38
name: "Relay_38"
pin:
pcf8574: pcf_2
# Use pin number 8
number: 13
mode:
output: true
inverted: true
- platform: gpio
id: relay_39
name: "Relay_39"
pin:
pcf8574: pcf_2
# Use pin number 9
number: 14
mode:
output: true
inverted: true
- platform: gpio
id: relay_40
name: "Relay_40"
pin:
pcf8574: pcf_2
# Use pin number 8
number: 15
mode:
output: true
inverted: true
- platform: gpio
id: relay_41
name: "Relay_41"
pin:
pcf8574: pcf_3
# Use pin number 15
number: 8
mode:
output: true
inverted: true
- platform: gpio
id: relay_42
name: "Relay_42"
pin:
pcf8574: pcf_3
# Use pin number 14
number: 9
mode:
output: true
inverted: true
- platform: gpio
id: relay_43
name: "Relay_43"
pin:
pcf8574: pcf_3
# Use pin number 13
number: 10
mode:
output: true
inverted: true
- platform: gpio
id: relay_44
name: "Relay_44"
pin:
pcf8574: pcf_3
# Use pin number 12
number: 11
mode:
output: true
inverted: true
- platform: gpio
id: relay_45
name: "Relay_45"
pin:
pcf8574: pcf_3
# Use pin number 11
number: 12
mode:
output: true
inverted: true
- platform: gpio
id: relay_46
name: "Relay_46"
pin:
pcf8574: pcf_3
# Use pin number 10
number: 13
mode:
output: true
inverted: true
- platform: gpio
id: relay_47
name: "Relay_47"
pin:
pcf8574: pcf_3
# Use pin number 9
number: 14
mode:
output: true
inverted: true
- platform: gpio
id: relay_48
name: "Relay_48"
pin:
pcf8574: pcf_3
# Use pin number 8
number: 15
mode:
output: true
inverted: true

View File

@@ -1,218 +1,175 @@
#i2c addresses
# address: 0x26 input pcf io
# address: 0x27 input pcf 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
pcf8574: pcf_inputs_1to14
number: 0
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.open: cover_01
on_release:
then:
cover.stop: cover_01
- switch.toggle: relay_1
- platform: gpio
name: "${node_name} IN_02"
id: in_02
pin:
mcp23xxx: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 1
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.close: cover_01
on_release:
then:
cover.stop: cover_01
- switch.toggle: relay_2
- platform: gpio
name: "${node_name} IN_03"
id: in_03
pin:
mcp23xxx: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 2
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.open: cover_02
on_release:
then:
cover.stop: cover_02
- switch.toggle: relay_3
- platform: gpio
name: "${node_name} IN_04"
id: in_04
pin:
mcp23xxx: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 3
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.close: cover_02
on_release:
then:
cover.stop: cover_02
- switch.toggle: relay_4
- platform: gpio
name: "${node_name} IN_05"
id: in_05
pin:
mcp23xxx: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 4
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.open: cover_03
on_release:
then:
cover.stop: cover_03
- switch.toggle: relay_5
- platform: gpio
name: "${node_name} IN_06"
id: in_06
pin:
mcp23xxx: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 5
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.close: cover_03
on_release:
then:
cover.stop: cover_03
- switch.toggle: relay_6
- platform: gpio
name: "${node_name} IN_07"
id: in_07
pin:
mcp23xxx: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 6
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.open: cover_04
on_release:
then:
cover.stop: cover_04
- switch.toggle: relay_7
- platform: gpio
name: "${node_name} IN_08"
id: in_08
pin:
mcp23xxx: mcp_inputs_1to16
number: 7
pcf8574: pcf_inputs_1to14
number: 8
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.close: cover_04
on_release:
then:
cover.stop: cover_04
- switch.toggle: relay_8
- platform: gpio
name: "${node_name} IN_09"
id: in_09
pin:
mcp23xxx: mcp_inputs_1to16
number: 8
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.open: cover_05
on_release:
then:
cover.stop: cover_05
- switch.toggle: relay_9
- platform: gpio
name: "${node_name} IN_10"
id: in_10
pin:
mcp23xxx: mcp_inputs_1to16
number: 9
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.close: cover_05
on_release:
then:
cover.stop: cover_05
- switch.toggle: relay_10
- platform: gpio
name: "${node_name} IN_11"
id: in_11
pin:
mcp23xxx: mcp_inputs_1to16
number: 10
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.open: cover_06
on_release:
then:
cover.stop: cover_06
- switch.toggle: relay_11
- platform: gpio
name: "${node_name} IN_12"
id: in_12
pin:
mcp23xxx: mcp_inputs_1to16
number: 11
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
pullup: false
inverted: true
on_press:
then:
cover.close: cover_06
on_release:
then:
cover.stop: cover_06
- switch.toggle: relay_12
- platform: gpio
name: "${node_name} IN_13"
id: in_13
pin:
mcp23xxx: mcp_inputs_1to16
number: 12
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -222,11 +179,10 @@ binary_sensor:
name: "${node_name} IN_14"
id: in_14
pin:
mcp23xxx: mcp_inputs_1to16
number: 13
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -236,11 +192,10 @@ binary_sensor:
name: "${node_name} IN_15"
id: in_15
pin:
mcp23xxx: mcp_inputs_1to16
number: 14
pcf8574: pcf_inputs_15to28
number: 6
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -250,11 +205,10 @@ binary_sensor:
name: "${node_name} IN_16"
id: in_16
pin:
mcp23xxx: mcp_inputs_1to16
number: 15
pcf8574: pcf_inputs_15to28
number: 5
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -264,11 +218,10 @@ binary_sensor:
name: "${node_name} IN_17"
id: in_17
pin:
mcp23xxx: mcp_inputs_17to32
number: 7
pcf8574: pcf_inputs_15to28
number: 4
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -278,11 +231,10 @@ binary_sensor:
name: "${node_name} IN_18"
id: in_18
pin:
mcp23xxx: mcp_inputs_17to32
number: 6
pcf8574: pcf_inputs_15to28
number: 3
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -292,11 +244,10 @@ binary_sensor:
name: "${node_name} IN_19"
id: in_19
pin:
mcp23xxx: mcp_inputs_17to32
number: 5
pcf8574: pcf_inputs_15to28
number: 2
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -306,11 +257,10 @@ binary_sensor:
name: "${node_name} IN_20"
id: in_20
pin:
mcp23xxx: mcp_inputs_17to32
number: 4
pcf8574: pcf_inputs_15to28
number: 1
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -320,11 +270,10 @@ binary_sensor:
name: "${node_name} IN_21"
id: in_21
pin:
mcp23xxx: mcp_inputs_17to32
number: 3
pcf8574: pcf_inputs_15to28
number: 0
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -334,11 +283,10 @@ binary_sensor:
name: "${node_name} IN_22"
id: in_22
pin:
mcp23xxx: mcp_inputs_17to32
number: 2
pcf8574: pcf_inputs_15to28
number: 8
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -348,25 +296,23 @@ binary_sensor:
name: "${node_name} IN_23"
id: in_23
pin:
mcp23xxx: mcp_inputs_17to32
number: 1
pcf8574: pcf_inputs_15to28
number: 9
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_22
- switch.toggle: relay_23
- platform: gpio
name: "${node_name} IN_24"
id: in_24
pin:
mcp23xxx: mcp_inputs_17to32
number: 0
pcf8574: pcf_inputs_15to28
number: 10
mode:
input: true
pullup: false
inverted: true
on_press:
then:
@@ -376,110 +322,106 @@ binary_sensor:
name: "${node_name} IN_25"
id: in_25
pin:
mcp23xxx: mcp_inputs_17to32
number: 8
pcf8574: pcf_inputs_15to28
number: 11
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
pcf8574: pcf_inputs_15to28
number: 12
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
pcf8574: pcf_inputs_15to28
number: 13
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
pcf8574: pcf_inputs_15to28
number: 14
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
pcf8574: pcf_inputs_28to35_menu
number: 0
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
pcf8574: pcf_inputs_28to35_menu
number: 1
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
pcf8574: pcf_inputs_28to35_menu
number: 2
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
pcf8574: pcf_inputs_28to35_menu
number: 3
mode:
input: true
pullup: false
inverted: true
on_press:
then:
- switch.toggle: relay_32
- platform: gpio
name: "${node_name} IN_33"
pin:
pcf8574: pcf_inputs_28to35_menu
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: "${node_name} IN_34"
pin:
pcf8574: pcf_inputs_28to35_menu
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: "${node_name} IN_35"
pin:
pcf8574: pcf_inputs_28to35_menu
number: 6
mode:
input: true
inverted: true

View File

@@ -0,0 +1,248 @@
mcp23017:
- id: 'mcp_outputs_1to16'
address: 0x21
i2c_id: bus_b
- id: 'mcp_outputs_17to32'
address: 0x20
i2c_id: bus_b
switch:
- platform: gpio
id: relay_1
name: "${node_name} Relay 01"
pin:
mcp23xxx: mcp_outputs_1to16
number: 8
mode:
output: true
inverted: false
- platform: gpio
id: relay_2
name: "${node_name} Relay 02"
pin:
mcp23xxx: mcp_outputs_1to16
number: 9
mode:
output: true
inverted: false
- platform: gpio
id: relay_3
name: "${node_name} Relay 03"
pin:
mcp23xxx: mcp_outputs_1to16
number: 10
mode:
output: true
inverted: false
- platform: gpio
id: relay_4
name: "${node_name} Relay 04"
pin:
mcp23xxx: mcp_outputs_1to16
number: 11
mode:
output: true
inverted: false
- platform: gpio
id: relay_5
name: "${node_name} Relay 05"
pin:
mcp23xxx: mcp_outputs_1to16
number: 12
mode:
output: true
inverted: false
- platform: gpio
id: relay_6
name: "${node_name} Relay 06"
pin:
mcp23xxx: mcp_outputs_1to16
number: 13
mode:
output: true
inverted: false
- platform: gpio
id: relay_7
name: "${node_name} Relay 07"
pin:
mcp23xxx: mcp_outputs_1to16
number: 14
mode:
output: true
inverted: false
- platform: gpio
id: relay_8
name: "${node_name} Relay 08"
pin:
mcp23xxx: mcp_outputs_1to16
number: 15
mode:
output: true
inverted: false
- platform: gpio
id: relay_9
name: "${node_name} Relay 09"
pin:
mcp23xxx: mcp_outputs_17to32
number: 8
mode:
output: true
inverted: false
- platform: gpio
id: relay_10
name: "${node_name} Relay 10"
pin:
mcp23xxx: mcp_outputs_17to32
number: 9
mode:
output: true
inverted: false
- platform: gpio
id: relay_11
name: "${node_name} Relay 11"
pin:
mcp23xxx: mcp_outputs_17to32
number: 10
mode:
output: true
inverted: false
- platform: gpio
id: relay_12
name: "${node_name} Relay 12"
pin:
mcp23xxx: mcp_outputs_17to32
number: 11
mode:
output: true
inverted: false
- platform: gpio
id: relay_13
name: "${node_name} Relay 13"
pin:
mcp23xxx: mcp_outputs_1to16
number: 7
mode:
output: true
inverted: false
- platform: gpio
id: relay_14
name: "${node_name} Relay 14"
pin:
mcp23xxx: mcp_outputs_1to16
number: 6
mode:
output: true
inverted: false
- platform: gpio
id: relay_15
name: "${node_name} Relay 15"
pin:
mcp23xxx: mcp_outputs_1to16
number: 5
mode:
output: true
inverted: false
- platform: gpio
id: relay_16
name: "${node_name} Relay 16"
pin:
mcp23xxx: mcp_outputs_1to16
number: 4
mode:
output: true
inverted: false
- platform: gpio
id: relay_17
name: "${node_name} Relay 17"
pin:
mcp23xxx: mcp_outputs_1to16
number: 3
mode:
output: true
inverted: false
- platform: gpio
id: relay_18
name: "${node_name} Relay 18"
pin:
mcp23xxx: mcp_outputs_1to16
number: 2
mode:
output: true
inverted: false
- platform: gpio
id: relay_19
name: "${node_name} Relay 19"
pin:
mcp23xxx: mcp_outputs_1to16
number: 1
mode:
output: true
inverted: false
- platform: gpio
id: relay_20
name: "${node_name} Relay 20"
pin:
mcp23xxx: mcp_outputs_1to16
number: 0
mode:
output: true
inverted: false
- platform: gpio
id: relay_21
name: "${node_name} Relay 21"
pin:
mcp23xxx: mcp_outputs_17to32
number: 12
mode:
output: true
inverted: false
- platform: gpio
id: relay_22
name: "${node_name} Relay 22"
pin:
mcp23xxx: mcp_outputs_17to32
number: 13
mode:
output: true
inverted: false
- platform: gpio
id: relay_23
name: "${node_name} Relay 23"
pin:
mcp23xxx: mcp_outputs_17to32
number: 14
mode:
output: true
inverted: false
- platform: gpio
id: relay_24
name: "${node_name} Relay 24"
pin:
mcp23xxx: mcp_outputs_17to32
number: 15
mode:
output: true
inverted: false

View File

@@ -10,7 +10,7 @@ binary_sensor:
name: "${node_name} IN_01"
id: in_01
pin:
pcf8574: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 0
mode:
input: true
@@ -23,7 +23,7 @@ binary_sensor:
name: "${node_name} IN_02"
id: in_02
pin:
pcf8574: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 1
mode:
input: true
@@ -36,7 +36,7 @@ binary_sensor:
name: "${node_name} IN_03"
id: in_03
pin:
pcf8574: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 2
mode:
input: true
@@ -49,7 +49,7 @@ binary_sensor:
name: "${node_name} IN_04"
id: in_04
pin:
pcf8574: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 3
mode:
input: true
@@ -62,7 +62,7 @@ binary_sensor:
name: "${node_name} IN_05"
id: in_05
pin:
pcf8574: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 4
mode:
input: true
@@ -75,7 +75,7 @@ binary_sensor:
name: "${node_name} IN_06"
id: in_06
pin:
pcf8574: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 5
mode:
input: true
@@ -88,7 +88,7 @@ binary_sensor:
name: "${node_name} IN_07"
id: in_07
pin:
pcf8574: mcp_inputs_1to16
pcf8574: pcf_inputs_1to14
number: 6
mode:
input: true
@@ -101,8 +101,8 @@ binary_sensor:
name: "${node_name} IN_08"
id: in_08
pin:
pcf8574: mcp_inputs_1to16
number: 7
pcf8574: pcf_inputs_1to14
number: 8
mode:
input: true
inverted: true
@@ -114,8 +114,8 @@ binary_sensor:
name: "${node_name} IN_09"
id: in_09
pin:
pcf8574: mcp_inputs_1to16
number: 8
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
inverted: true
@@ -127,8 +127,8 @@ binary_sensor:
name: "${node_name} IN_10"
id: in_10
pin:
pcf8574: mcp_inputs_1to16
number: 9
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
inverted: true
@@ -140,8 +140,8 @@ binary_sensor:
name: "${node_name} IN_11"
id: in_11
pin:
pcf8574: mcp_inputs_1to16
number: 10
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
inverted: true
@@ -153,8 +153,8 @@ binary_sensor:
name: "${node_name} IN_12"
id: in_12
pin:
pcf8574: mcp_inputs_1to16
number: 11
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
inverted: true
@@ -166,8 +166,8 @@ binary_sensor:
name: "${node_name} IN_13"
id: in_13
pin:
pcf8574: mcp_inputs_1to16
number: 12
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
inverted: true
@@ -179,8 +179,8 @@ binary_sensor:
name: "${node_name} IN_14"
id: in_14
pin:
pcf8574: mcp_inputs_1to16
number: 13
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
inverted: true
@@ -192,8 +192,8 @@ binary_sensor:
name: "${node_name} IN_15"
id: in_15
pin:
pcf8574: mcp_inputs_1to16
number: 14
pcf8574: pcf_inputs_15to28
number: 6
mode:
input: true
inverted: true
@@ -205,8 +205,8 @@ binary_sensor:
name: "${node_name} IN_16"
id: in_16
pin:
pcf8574: mcp_inputs_1to16
number: 15
pcf8574: pcf_inputs_15to28
number: 5
mode:
input: true
inverted: true
@@ -218,8 +218,8 @@ binary_sensor:
name: "${node_name} IN_17"
id: in_17
pin:
pcf8574: mcp_inputs_17to32
number: 7
pcf8574: pcf_inputs_15to28
number: 4
mode:
input: true
inverted: true
@@ -231,8 +231,8 @@ binary_sensor:
name: "${node_name} IN_18"
id: in_18
pin:
pcf8574: mcp_inputs_17to32
number: 6
pcf8574: pcf_inputs_15to28
number: 3
mode:
input: true
inverted: true
@@ -244,8 +244,8 @@ binary_sensor:
name: "${node_name} IN_19"
id: in_19
pin:
pcf8574: mcp_inputs_17to32
number: 5
pcf8574: pcf_inputs_15to28
number: 2
mode:
input: true
inverted: true
@@ -257,8 +257,8 @@ binary_sensor:
name: "${node_name} IN_20"
id: in_20
pin:
pcf8574: mcp_inputs_17to32
number: 4
pcf8574: pcf_inputs_15to28
number: 1
mode:
input: true
inverted: true
@@ -270,8 +270,8 @@ binary_sensor:
name: "${node_name} IN_21"
id: in_21
pin:
pcf8574: mcp_inputs_17to32
number: 3
pcf8574: pcf_inputs_15to28
number: 0
mode:
input: true
inverted: true
@@ -283,8 +283,8 @@ binary_sensor:
name: "${node_name} IN_22"
id: in_22
pin:
pcf8574: mcp_inputs_17to32
number: 2
pcf8574: pcf_inputs_15to28
number: 8
mode:
input: true
inverted: true
@@ -296,8 +296,8 @@ binary_sensor:
name: "${node_name} IN_23"
id: in_23
pin:
pcf8574: mcp_inputs_17to32
number: 1
pcf8574: pcf_inputs_15to28
number: 9
mode:
input: true
inverted: true
@@ -309,8 +309,8 @@ binary_sensor:
name: "${node_name} IN_24"
id: in_24
pin:
pcf8574: mcp_inputs_17to32
number: 0
pcf8574: pcf_inputs_15to28
number: 10
mode:
input: true
inverted: true
@@ -322,8 +322,8 @@ binary_sensor:
name: "${node_name} IN_25"
id: in_25
pin:
pcf8574: mcp_inputs_17to32
number: 8
pcf8574: pcf_inputs_15to28
number: 11
mode:
input: true
inverted: true
@@ -335,8 +335,8 @@ binary_sensor:
name: "${node_name} IN_26"
id: in_26
pin:
pcf8574: mcp_inputs_17to32
number: 9
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
@@ -348,8 +348,8 @@ binary_sensor:
name: "${node_name} IN_27"
id: in_27
pin:
pcf8574: mcp_inputs_17to32
number: 10
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
@@ -361,8 +361,8 @@ binary_sensor:
name: "${node_name} IN_28"
id: in_28
pin:
pcf8574: mcp_inputs_17to32
number: 11
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
@@ -374,8 +374,8 @@ binary_sensor:
name: "${node_name} IN_29"
id: in_29
pin:
pcf8574: mcp_inputs_17to32
number: 12
pcf8574: pcf_inputs_28to35_menu
number: 0
mode:
input: true
inverted: true
@@ -387,8 +387,8 @@ binary_sensor:
name: "${node_name} IN_30"
id: in_30
pin:
pcf8574: mcp_inputs_17to32
number: 13
pcf8574: pcf_inputs_28to35_menu
number: 1
mode:
input: true
inverted: true
@@ -400,8 +400,8 @@ binary_sensor:
name: "${node_name} IN_31"
id: in_31
pin:
pcf8574: mcp_inputs_17to32
number: 14
pcf8574: pcf_inputs_28to35_menu
number: 2
mode:
input: true
inverted: true
@@ -413,8 +413,8 @@ binary_sensor:
name: "${node_name} IN_32"
id: in_32
pin:
pcf8574: mcp_inputs_17to32
number: 15
pcf8574: pcf_inputs_28to35_menu
number: 3
mode:
input: true
inverted: true
@@ -425,7 +425,8 @@ binary_sensor:
- platform: gpio
name: "${node_name} IN_33"
pin:
number: GPIO33
pcf8574: pcf_inputs_28to35_menu
number: 4
mode:
input: true
inverted: true
@@ -433,7 +434,8 @@ binary_sensor:
- platform: gpio
name: "${node_name} IN_34"
pin:
number: GPIO17
pcf8574: pcf_inputs_28to35_menu
number: 5
mode:
input: true
inverted: true
@@ -441,9 +443,9 @@ binary_sensor:
- platform: gpio
name: "${node_name} IN_35"
pin:
number: GPIO12
pcf8574: pcf_inputs_28to35_menu
number: 6
mode:
input: true
pullup: true
inverted: false
inverted: true

View File

@@ -2,8 +2,10 @@
mcp23017:
- id: 'mcp_outputs_1to16'
address: 0x21
i2c_id: bus_b
- id: 'mcp_outputs_17to32'
address: 0x20
i2c_id: bus_b
switch:
- platform: gpio

View File

@@ -3,9 +3,11 @@ pcf8574:
- id: 'pcf_1'
address: 0x21
pcf8575: true
i2c_id: bus_b
- id: 'pcf_2'
address: 0x20
pcf8575: true
i2c_id: bus_b
switch:

View File

@@ -0,0 +1,367 @@
# 8 covers (16 outputs for covers)
# 16 outputs as switch
pcf8574:
- id: 'pcf_1'
address: 0x21
pcf8575: true
i2c_id: bus_b
- id: 'pcf_2'
address: 0x20
pcf8575: true
i2c_id: bus_b
switch:
- platform: gpio
id: cover_open_01
pin:
pcf8574: pcf_1
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_01 [cover_open_01, cover_close_01]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_01
pin:
pcf8574: pcf_1
# Use pin number 1
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_01
restore_mode: always off
- platform: gpio
id: cover_open_02
pin:
pcf8574: pcf_1
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_02 [cover_open_02, cover_close_02]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_02
pin:
pcf8574: pcf_1
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_02
restore_mode: always off
- platform: gpio
id: cover_open_03
pin:
pcf8574: pcf_1
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_03 [cover_open_03, cover_close_03]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_03
pin:
pcf8574: pcf_1
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_03
- platform: gpio
id: cover_open_04
pin:
pcf8574: pcf_1
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_04 [cover_open_04, cover_close_04]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_04
pin:
pcf8574: pcf_1
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_04
- platform: gpio
id: cover_open_05
pin:
pcf8574: pcf_2
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_05 [cover_open_05, cover_close_05]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_05
pin:
pcf8574: pcf_2
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_05
- platform: gpio
id: cover_open_06
pin:
pcf8574: pcf_2
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_06 [cover_open_06, cover_close_06]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_06
pin:
pcf8574: pcf_2
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_06
- platform: gpio
id: cover_open_07
pin:
pcf8574: pcf_2
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_07 [cover_open_07, cover_close_07]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_07
pin:
pcf8574: pcf_2
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_07
- platform: gpio
id: cover_open_08
pin:
pcf8574: pcf_2
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_08 [cover_open_08, cover_close_08]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_08
pin:
pcf8574: pcf_2
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_08
- platform: gpio
id: relay_17
name: 'Relay_17'
pin:
pcf8574: pcf_1
# Use pin number 15
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: relay_18
name: 'Relay_18'
pin:
pcf8574: pcf_1
# Use pin number 14
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: relay_19
name: 'Relay_19'
pin:
pcf8574: pcf_1
# Use pin number 13
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: relay_20
name: 'Relay_20'
pin:
pcf8574: pcf_1
# Use pin number 12
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: relay_21
name: 'Relay_21'
pin:
pcf8574: pcf_1
# Use pin number 11
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: relay_22
name: 'Relay_22'
pin:
pcf8574: pcf_1
# Use pin number 10
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: relay_23
name: 'Relay_23'
pin:
pcf8574: pcf_1
# Use pin number 9
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: relay_24
name: 'Relay_24'
pin:
pcf8574: pcf_1
# Use pin number 8
number: 7
mode:
output: true
inverted: true
- platform: gpio
id: relay_25
name: 'Relay_25'
pin:
pcf8574: pcf_2
# Use pin number 15
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: relay_26
name: 'Relay_26'
pin:
pcf8574: pcf_2
# Use pin number 14
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: relay_27
name: 'Relay_27'
pin:
pcf8574: pcf_2
# Use pin number 13
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: relay_28
name: 'Relay_28'
pin:
pcf8574: pcf_2
# Use pin number 12
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: relay_29
name: 'Relay_29'
pin:
pcf8574: pcf_2
# Use pin number 11
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: relay_30
name: 'Relay_30'
pin:
pcf8574: pcf_2
# Use pin number 10
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: relay_31
name: 'Relay_31'
pin:
pcf8574: pcf_2
# Use pin number 9
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: relay_32
name: 'Relay_32'
pin:
pcf8574: pcf_2
# Use pin number 8
number: 7
mode:
output: true
inverted: true

View File

@@ -1,33 +1,36 @@
substitutions:
# set to false if you don't want mac suffix in your device name
name_add_mac_suffix: "true"
name_add_mac_suffix: 'false'
# if you want to change the name of device via OTA you have to set IP first in boneio/devices/wt32_eth01.yaml
node_name: boneio
dir_name: './'
packages:
# select your input board:
input: !include boards/relay32_inputs_MCP.yaml
#input: !include boards/relay32_inputs_PCF.yaml
#input: !include boards/dimmer_led8x4_inputs.yaml
#input: !include boards/cover16_inputs.yaml
#input: !include boards/cover16_inputs.yaml
# input: !include boards/relay24_inputs_PCF.yaml
# input: !include boards/relay32_inputs_PCF.yaml
# input: !include boards/relay32_inputs_MCP.yaml
# input: !include boards/dimmer_led8x4_inputs.yaml
# input: !include boards/cover16_inputs_MCP.yaml
# input: !include boards/cover16_inputs_PCF.yaml
input: !include boards/coverMix_inputs_PCF.yaml
# select your output board:
#output: !include boards/relay24_outputs_MCP.yaml
#output: !include boards/relay32_outputs_PCF.yaml
output: !include boards/relay32_outputs_MCP.yaml
#output: !include boards/dimmer_led8x4_outputs.yaml
#light: !include boards/monochromatic_lights.yaml
#cover: !include boards/cover.yaml
#output: !include boards/cover16_outputs.yaml
#output: !include boards/cover16_outputs.yaml
# output: !include boards/relay24_outputs_MCP.yaml
# output: !include boards/relay32_outputs_PCF.yaml
# output: !include boards/relay32_outputs_MCP.yaml
# output: !include boards/dimmer_led8x4_outputs.yaml
# light: !include boards/monochromatic_lights.yaml
# cover: !include boards/cover.yaml
cover: !include boards/cover_mix.yaml
# output: !include boards/cover16_outputs_PCF.yaml
# output: !include boards/cover16_outputs_MCP.yaml
# output: !include boards/mosfet48_outputs_PCF.yaml
output: !include boards/relay32_outputs_mix_PCF.yaml
# select your devices:
core: !include devices/wt32_eth01.yaml
internals: !include devices/boneio_board_MCP.yaml
#internals: !include devices/boneio_board_PCF.yaml
internals: !include devices/boneio_board.yaml
temp: !include devices/lm75b.yaml
display: !include devices/display.yaml
# uart: !include devices/uart.yaml

View File

@@ -1,34 +1,36 @@
substitutions:
# set to false if you don't want mac suffix in your device name
name_add_mac_suffix: "true"
name_add_mac_suffix: 'false'
# if you want to change the name of device via OTA you have to set IP first in boneio/devices/wt32_eth01.yaml
node_name: boneio
dir_name: 'boneio/'
packages:
# select your input board:
input: !include boneio/boards/relay32_inputs_MCP.yaml
#input: !include boneio/boards/relay32_inputs_PCF.yaml
#input: !include boneio/boards/dimmer_led8x4_inputs.yaml
#input: !include boneio/boards/cover16_inputs.yaml
#input: !include boneio/boards/cover16_inputs.yaml
# input: !include boneio/boards/relay24_inputs_PCF.yaml
# input: !include boneio/boards/relay32_inputs_PCF.yaml
# input: !include boneio/boards/relay32_inputs_MCP.yaml
# input: !include boneio/boards/dimmer_led8x4_inputs.yaml
# input: !include boneio/boards/cover16_inputs_MCP.yaml
# input: !include boneio/boards/cover16_inputs_PCF.yaml
# input: !include boneio/boards/coverMix_inputs_PCF.yaml
# select your output board:
#output: !include boneio/boards/relay24_outputs_MCP.yaml
#output: !include boneio/boards/relay32_outputs_PCF.yaml
output: !include boneio/boards/relay32_outputs_MCP.yaml
#output: !include boneio/boards/dimmer_led8x4_outputs.yaml
#light: !include boneio/boards/monochromatic_lights.yaml
#cover: !include boneio/boards/cover.yaml
#output: !include boneio/boards/cover16_outputs.yaml
#output: !include boneio/boards/cover16_outputs.yaml
# output: !include boneio/boards/relay24_outputs_MCP.yaml
output: !include boneio/boards/relay32_outputs_PCF.yaml
# output: !include boneio/boards/relay32_outputs_MCP.yaml
# output: !include boneio/boards/dimmer_led8x4_outputs.yaml
# light: !include boneio/boards/monochromatic_lights.yaml
# cover: !include boneio/boards/cover.yaml
# cover: !include boneio/boards/cover_mix.yaml
# output: !include boneio/boards/cover16_outputs_PCF.yaml
# output: !include boneio/boards/cover16_outputs_MCP.yaml
# output: !include boneio/mosfet48_outputs_PCF.yaml
# output: !include boneio/relay32_outputs_mix_PCF.yaml
# select your devices:
core: !include boneio/devices/wt32_eth01.yaml
internals: !include boneio/devices/boneio_board_MCP.yaml
#internals: !include boneio/devices/boneio_board_PCF.yaml
internals: !include boneio/devices/boneio_board.yaml
temp: !include boneio/devices/lm75b.yaml
display: !include boneio/devices/display.yaml
# uart: !include devices/uart.yaml

File diff suppressed because it is too large Load Diff

View File

@@ -5,11 +5,14 @@
time:
- platform: ds1307
id: ds1307_time
address: 0x68
i2c_id: bus_a
sensor:
# Module power consmption
- platform: ina219
address: 0x40
i2c_id: bus_a
shunt_resistance: 0.1 ohm
current:
id: ina_current
@@ -27,11 +30,26 @@ sensor:
max_current: 3.2A
update_interval: 30s
switch:
- platform: gpio
id: buzzer
name: "Buzzer"
pin:
number: GPIO2
mode:
output: true
inverted: false
pcf8574:
- id: 'mcp_inputs_1to16'
address: 0x26
- id: 'pcf_inputs_1to14'
i2c_id: bus_a
address: 0x20
pcf8575: true
- id: 'mcp_inputs_17to32'
address: 0x27
- id: 'pcf_inputs_15to28'
i2c_id: bus_a
address: 0x21
pcf8575: true
- id: 'pcf_inputs_28to35_menu'
i2c_id: bus_a
address: 0x22
pcf8575: false

View File

@@ -1,34 +0,0 @@
#i2c address: 0x26 input mcp io
#i2c address: 0x27 input mcp io
#i2c address: 0x40 input ina219 power
#i2c address: 0x68 input rtc ds1307
time:
- platform: ds1307
id: ds1307_time
sensor:
# Module power consmption
- platform: ina219
address: 0x40
shunt_resistance: 0.1 ohm
current:
id: ina_current
name: "${node_name} INA219 Current"
power:
id: ina_power
name: "${node_name} INA219 Power"
bus_voltage:
id: ina_bus_voltage
name: "${node_name} INA219 Bus Voltage"
shunt_voltage:
id: ina_shunt_voltage
name: "${node_name} INA219 Shunt Voltage"
max_voltage: 32.0V
max_current: 3.2A
update_interval: 30s
mcp23017:
- id: 'mcp_inputs_1to16'
address: 0x26
- id: 'mcp_inputs_17to32'
address: 0x27

View File

@@ -53,10 +53,10 @@ binary_sensor:
entity_category: config
id: boneIO_button
pin:
number: GPIO4
pcf8574: pcf_inputs_28to35_menu
number: 7
mode:
input: true
pullup: true
inverted: true
on_press:
then:
@@ -86,11 +86,14 @@ binary_sensor:
# restart screensaver script
- script.execute: screensaver_script
# it.printf(4, 37, id(dejaVuSmall), TextAlign::BASELINE_LEFT ,"IP addr:");
# it.printf(124, 37, id(dejaVuSmall), TextAlign::BASELINE_RIGHT ,"%s", id(eth).get_ip_addresses().str().c_str());
display:
- platform: ssd1306_i2c
id: oled_display
model: "SH1106 128x64"
model: 'SH1106 128x64'
address: 0x3C
i2c_id: bus_b
contrast: 0.5
pages:
- id: logo_page
@@ -103,8 +106,6 @@ display:
it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(danubeSmall), TextAlign::BASELINE_CENTER, "BoneIO");
it.strftime(64, 25, id(dejaVuSmall), TextAlign::BASELINE_CENTER ,"%c", id(ds1307_time).now());
it.printf(4, 37, id(dejaVuSmall), TextAlign::BASELINE_LEFT ,"IP addr:");
it.printf(124, 37, id(dejaVuSmall), TextAlign::BASELINE_RIGHT ,"%s", id(eth).get_ip_address().str().c_str());
it.printf(4, 49, id(dejaVuSmall), TextAlign::BASELINE_LEFT ,"Uptime:");
it.printf(124, 49, id(dejaVuSmall), TextAlign::BASELINE_RIGHT ,"%s", id(wt32_uptime).state.c_str());
it.printf(4, 61, id(dejaVuSmall), TextAlign::BASELINE_LEFT ,"Temperature:");
@@ -127,12 +128,12 @@ display:
it.fill(COLOR_OFF);
font:
- file: "${dir_name}/fonts/DejaVuSans.ttf"
- file: '${dir_name}/fonts/DejaVuSans.ttf'
id: dejaVuSmall
size: 9
- file: "${dir_name}/fonts/danube__.ttf"
- file: '${dir_name}/fonts/danube__.ttf'
id: danubeBig
size: 20
- file: "${dir_name}/fonts/danube__.ttf"
- file: '${dir_name}/fonts/danube__.ttf'
id: danubeSmall
size: 9

View File

@@ -10,3 +10,4 @@ sensor:
id: boneIO_temp
name: "${node_name} LM75B Temperature"
update_interval: 30s
i2c_id: bus_b

View File

@@ -1,8 +1,14 @@
i2c:
- id: bus_a
sda: GPIO14
scl: GPIO15
scan: True
frequency: 400kHz
- id: bus_b
sda: GPIO17
scl: GPIO33
scan: True
frequency: 400kHz
esphome:
name: ${node_name}
@@ -21,4 +27,4 @@ ethernet:
power_pin: GPIO16
# uncomment this line and set your actual IP address before changing name of device
# use_address: 172.21.130.57
# use_address: xxx.xxx.xxx.xxx