mirror of
https://github.com/boneIO-eu/esphome.git
synced 2026-04-10 20:50:02 +02:00
1219 lines
22 KiB
YAML
1219 lines
22 KiB
YAML
esphome:
|
|
name: cover-board-v0-1
|
|
|
|
esp32:
|
|
board: esp32dev
|
|
framework:
|
|
type: arduino
|
|
|
|
external_components:
|
|
- source: github://ell249/esphome-PCT2075@master
|
|
components: [ pct2075 ]
|
|
|
|
ethernet:
|
|
id: eth
|
|
type: LAN8720
|
|
mdc_pin: GPIO23
|
|
mdio_pin: GPIO18
|
|
clk_mode: GPIO0_IN
|
|
phy_addr: 1
|
|
power_pin: GPIO16
|
|
|
|
|
|
i2c:
|
|
sda: GPIO14
|
|
scl: GPIO15
|
|
scan: True
|
|
frequency: 100kHz
|
|
|
|
logger:
|
|
baud_rate: 0
|
|
api:
|
|
ota:
|
|
web_server:
|
|
port: 80
|
|
|
|
time:
|
|
- platform: ds1307
|
|
id: ds1307_tim
|
|
|
|
- platform: homeassistant
|
|
# instead try to synchronize via network repeatedly ...
|
|
on_time_sync:
|
|
then:
|
|
# ... and update the RTC when the synchronization was successful
|
|
ds1307.write_time:
|
|
|
|
|
|
|
|
mcp23017:
|
|
- id: 'mcp_1'
|
|
address: 0x26
|
|
- id: 'mcp_2'
|
|
address: 0x27
|
|
- id: 'mcp_3'
|
|
address: 0x21
|
|
- id: 'mcp_4'
|
|
address: 0x20
|
|
|
|
|
|
uart:
|
|
rx_pin: GPIO3
|
|
tx_pin: GPIO1
|
|
baud_rate: 9600
|
|
stop_bits: 1
|
|
|
|
# modbus:
|
|
# id: modbus1
|
|
|
|
# modbus_controller:
|
|
# - id: epever
|
|
# ## the Modbus device addr
|
|
# address: 0x33
|
|
# modbus_id: modbus1
|
|
# setup_priority: -10
|
|
|
|
|
|
switch:
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 0
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay1
|
|
interlock: &interlock_1 [relay1, relay2]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 1
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay2
|
|
interlock: *interlock_1
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 2
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay3
|
|
interlock: &interlock_2 [relay3, relay4]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 3
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay4
|
|
interlock: *interlock_2
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 4
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay5
|
|
interlock: &interlock_3 [relay5, relay6]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 5
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay6
|
|
interlock: *interlock_3
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 6
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay7
|
|
interlock: &interlock_4 [relay7, relay8]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 7
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay8
|
|
interlock: *interlock_4
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 8
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay9
|
|
interlock: &interlock_5 [relay9, relay10]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 9
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay10
|
|
interlock: *interlock_5
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 10
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay11
|
|
interlock: &interlock_6 [relay11, relay12]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 11
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay12
|
|
interlock: *interlock_6
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 12
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay13
|
|
interlock: &interlock_7 [relay13, relay14]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 13
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay14
|
|
interlock: *interlock_7
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 14
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay15
|
|
interlock: &interlock_8 [relay15, relay16]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_3
|
|
number: 15
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay16
|
|
interlock: *interlock_8
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 0
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay17
|
|
interlock: &interlock_9 [relay17, relay18]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 1
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay18
|
|
interlock: *interlock_9
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 2
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay19
|
|
interlock: &interlock_10 [relay19, relay20]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 3
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay20
|
|
interlock: *interlock_10
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 4
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay21
|
|
interlock: &interlock_11 [relay21, relay22]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 5
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay22
|
|
interlock: *interlock_11
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 6
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay23
|
|
interlock: &interlock_12 [relay23, relay24]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 7
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay24
|
|
interlock: *interlock_12
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 8
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay25
|
|
interlock: &interlock_13 [relay25, relay26]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 9
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay26
|
|
interlock: *interlock_13
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 10
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay27
|
|
interlock: &interlock_14 [relay27, relay28]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 11
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay28
|
|
interlock: *interlock_14
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 12
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay29
|
|
interlock: &interlock_15 [relay29, relay30]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 13
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay30
|
|
interlock: *interlock_15
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 14
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay31
|
|
interlock: &interlock_16 [relay31, relay32]
|
|
- platform: gpio
|
|
pin:
|
|
mcp23xxx: mcp_4
|
|
number: 15
|
|
mode: OUTPUT
|
|
inverted: false
|
|
id: relay32
|
|
interlock: *interlock_16
|
|
|
|
|
|
|
|
|
|
cover:
|
|
- platform: time_based
|
|
name: "Cover_01"
|
|
id: cover_01
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay1
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay2
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay1
|
|
- switch.turn_off: relay2
|
|
- platform: time_based
|
|
name: "Cover_02"
|
|
id: cover_02
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay3
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay4
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay3
|
|
- switch.turn_off: relay4
|
|
- platform: time_based
|
|
name: "Cover_03"
|
|
id: cover_03
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay5
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay6
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay5
|
|
- switch.turn_off: relay6
|
|
- platform: time_based
|
|
name: "Cover_04"
|
|
id: cover_04
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay7
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay8
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay7
|
|
- switch.turn_off: relay8
|
|
- platform: time_based
|
|
name: "Cover_05"
|
|
id: cover_05
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay9
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay10
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay9
|
|
- switch.turn_off: relay10
|
|
- platform: time_based
|
|
name: "Cover_06"
|
|
id: cover_06
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay11
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay12
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay11
|
|
- switch.turn_off: relay12
|
|
- platform: time_based
|
|
name: "Cover_07"
|
|
id: cover_07
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay13
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay14
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay13
|
|
- switch.turn_off: relay14
|
|
- platform: time_based
|
|
name: "Cover_08"
|
|
id: cover_08
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay15
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay16
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay15
|
|
- switch.turn_off: relay16
|
|
- platform: time_based
|
|
name: "Cover_09"
|
|
id: cover_09
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay17
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay18
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay17
|
|
- switch.turn_off: relay18
|
|
- platform: time_based
|
|
name: "Cover_10"
|
|
id: cover_10
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay19
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay20
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay19
|
|
- switch.turn_off: relay20
|
|
- platform: time_based
|
|
name: "Cover_11"
|
|
id: cover_11
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay21
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay22
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay21
|
|
- switch.turn_off: relay22
|
|
- platform: time_based
|
|
name: "Cover_12"
|
|
id: cover_12
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay23
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay24
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay23
|
|
- switch.turn_off: relay24
|
|
- platform: time_based
|
|
name: "Cover_13"
|
|
id: cover_13
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay25
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay26
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay25
|
|
- switch.turn_off: relay26
|
|
- platform: time_based
|
|
name: "Cover_14"
|
|
id: cover_14
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay27
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay28
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay27
|
|
- switch.turn_off: relay28
|
|
- platform: time_based
|
|
name: "Cover_15"
|
|
id: cover_15
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay29
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay30
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay29
|
|
- switch.turn_off: relay30
|
|
- platform: time_based
|
|
name: "Cover_16"
|
|
id: cover_16
|
|
assumed_state: false
|
|
open_action:
|
|
- switch.turn_on: relay31
|
|
open_duration: 30s
|
|
close_action:
|
|
- switch.turn_on: relay32
|
|
close_duration: 30s
|
|
stop_action:
|
|
- switch.turn_off: relay31
|
|
- switch.turn_off: relay32
|
|
|
|
|
|
|
|
|
|
binary_sensor:
|
|
|
|
- platform: gpio
|
|
name: "IN_01"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 0
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_01
|
|
on_release:
|
|
cover.stop: cover_01
|
|
- platform: gpio
|
|
name: "IN_02"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 1
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_01
|
|
on_release:
|
|
cover.stop: cover_01
|
|
- platform: gpio
|
|
name: "IN_03"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 2
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_02
|
|
on_release:
|
|
cover.stop: cover_02
|
|
- platform: gpio
|
|
name: "IN_04"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 3
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_02
|
|
on_release:
|
|
cover.stop: cover_02
|
|
- platform: gpio
|
|
name: "IN_05"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 4
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_03
|
|
on_release:
|
|
cover.stop: cover_03
|
|
- platform: gpio
|
|
name: "IN_06"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 5
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_03
|
|
on_release:
|
|
cover.stop: cover_03
|
|
- platform: gpio
|
|
name: "IN_07"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 6
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_04
|
|
on_release:
|
|
cover.stop: cover_04
|
|
- platform: gpio
|
|
name: "IN_08"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 7
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_04
|
|
on_release:
|
|
cover.stop: cover_04
|
|
- platform: gpio
|
|
name: "IN_09"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 8
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_05
|
|
on_release:
|
|
cover.stop: cover_05
|
|
- platform: gpio
|
|
name: "IN_10"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 9
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_05
|
|
on_release:
|
|
cover.stop: cover_05
|
|
- platform: gpio
|
|
name: "IN_11"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 10
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_06
|
|
on_release:
|
|
cover.stop: cover_06
|
|
- platform: gpio
|
|
name: "IN_12"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 11
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_06
|
|
on_release:
|
|
cover.stop: cover_06
|
|
- platform: gpio
|
|
name: "IN_13"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 12
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_07
|
|
on_release:
|
|
cover.stop: cover_07
|
|
- platform: gpio
|
|
name: "IN_14"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 13
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_07
|
|
on_release:
|
|
cover.stop: cover_07
|
|
- platform: gpio
|
|
name: "IN_15"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 14
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_08
|
|
on_release:
|
|
cover.stop: cover_08
|
|
- platform: gpio
|
|
name: "IN_16"
|
|
pin:
|
|
mcp23xxx: mcp_1
|
|
number: 15
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_08
|
|
on_release:
|
|
cover.stop: cover_08
|
|
- platform: gpio
|
|
name: "IN_17"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 7
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_09
|
|
on_release:
|
|
cover.stop: cover_09
|
|
- platform: gpio
|
|
name: "IN_18"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 6
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_09
|
|
on_release:
|
|
cover.stop: cover_09
|
|
- platform: gpio
|
|
name: "IN_19"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 5
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_10
|
|
on_release:
|
|
cover.stop: cover_10
|
|
- platform: gpio
|
|
name: "IN_20"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 4
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_10
|
|
on_release:
|
|
cover.stop: cover_10
|
|
- platform: gpio
|
|
name: "IN_21"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 3
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_11
|
|
on_release:
|
|
cover.stop: cover_11
|
|
- platform: gpio
|
|
name: "IN_22"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 2
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_11
|
|
on_release:
|
|
cover.stop: cover_11
|
|
- platform: gpio
|
|
name: "IN_23"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 1
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_12
|
|
on_release:
|
|
cover.stop: cover_12
|
|
- platform: gpio
|
|
name: "IN_24"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 0
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_12
|
|
on_release:
|
|
cover.stop: cover_12
|
|
- platform: gpio
|
|
name: "IN_25"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 8
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_13
|
|
on_release:
|
|
cover.stop: cover_13
|
|
- platform: gpio
|
|
name: "IN_26"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 9
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_13
|
|
on_release:
|
|
cover.stop: cover_13
|
|
- platform: gpio
|
|
name: "IN_27"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 10
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_14
|
|
on_release:
|
|
cover.stop: cover_14
|
|
- platform: gpio
|
|
name: "IN_28"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 11
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_14
|
|
on_release:
|
|
cover.stop: cover_14
|
|
- platform: gpio
|
|
name: "IN_29"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 12
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_15
|
|
on_release:
|
|
cover.stop: cover_15
|
|
- platform: gpio
|
|
name: "IN_30"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 13
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_15
|
|
on_release:
|
|
cover.stop: cover_15
|
|
- platform: gpio
|
|
name: "IN_31"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 14
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.open: cover_16
|
|
on_release:
|
|
cover.stop: cover_16
|
|
- platform: gpio
|
|
name: "IN_32"
|
|
pin:
|
|
mcp23xxx: mcp_2
|
|
number: 15
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
cover.close: cover_16
|
|
on_release:
|
|
cover.stop: cover_16
|
|
|
|
|
|
- platform: gpio
|
|
name: "IN_33"
|
|
pin:
|
|
number: GPIO33
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: "IN_34"
|
|
pin:
|
|
number: GPIO17
|
|
mode:
|
|
input: true
|
|
pullup: false
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: "IN_35"
|
|
pin:
|
|
number: GPIO12
|
|
mode:
|
|
input: true
|
|
pullup: true
|
|
inverted: false
|
|
|
|
- platform: gpio
|
|
name: "USER_SWITCH"
|
|
pin:
|
|
number: GPIO4
|
|
mode:
|
|
input: true
|
|
pullup: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- display.page.show_next: oled_display
|
|
- component.update: oled_display
|
|
|
|
|
|
text_sensor:
|
|
- platform: template
|
|
name: "IP"
|
|
id: IP
|
|
entity_category: diagnostic
|
|
icon: "mdi:ip-network"
|
|
lambda: return { id(eth).get_ip_address().str() };
|
|
update_interval: 30s
|
|
|
|
|
|
dallas:
|
|
- pin: GPIO32
|
|
|
|
sensor:
|
|
|
|
- platform: pct2075
|
|
temperature:
|
|
name: "PCT2075 Temperature"
|
|
update_interval: 30s
|
|
|
|
# - platform: mcp9808
|
|
# name: "MCP9808 temp"
|
|
# update_interval: 60s
|
|
|
|
- platform: dallas
|
|
address: 0x283c01d607d4df28
|
|
name: "Dallas Sensor 1"
|
|
|
|
- platform: dallas
|
|
address: 0xdfe67a061e64ff28
|
|
name: "Dallas Sensor 2"
|
|
|
|
- platform: dallas
|
|
address: 0xa7a89f071e64ff28
|
|
name: "Dallas Sensor 3"
|
|
|
|
|
|
- platform: ina219
|
|
address: 0x40
|
|
shunt_resistance: 0.1 ohm
|
|
current:
|
|
name: "INA219 Current"
|
|
power:
|
|
name: "INA219 Power"
|
|
bus_voltage:
|
|
name: "INA219 Bus Voltage"
|
|
shunt_voltage:
|
|
name: "INA219 Shunt Voltage"
|
|
max_voltage: 32.0V
|
|
max_current: 3.2A
|
|
update_interval: 30s
|
|
|
|
|
|
|
|
- platform: adc
|
|
pin: GPIO36
|
|
name: "ADC_1"
|
|
update_interval: 5s
|
|
|
|
- platform: adc
|
|
pin: GPIO39
|
|
name: "ADC_2"
|
|
update_interval: 5s
|
|
|
|
|
|
display:
|
|
- platform: ssd1306_i2c
|
|
id: oled_display
|
|
model: "SH1106 128x64"
|
|
address: 0x3C
|
|
contrast: 0.5
|
|
|
|
|
|
pages:
|
|
- id: page1
|
|
lambda: |-
|
|
it.rectangle(0, 0, 126, 15);
|
|
it.printf(64,12, id(font1), TextAlign::BASELINE_CENTER, "BoneiO ESP");
|
|
# it.printf(1, 27, id(font1), TextAlign::BASELINE_LEFT, "IP:");
|
|
# it.printf(125, 27, id(font1), TextAlign::BASELINE_RIGHT, "%.2s", id(IP).state);
|
|
- id: page2
|
|
lambda: |-
|
|
it.rectangle(0, 0, 126, 15);
|
|
it.printf(64,12, id(font1), TextAlign::BASELINE_CENTER, "My Friend");
|
|
|
|
|
|
# interval:
|
|
# - interval: 5s
|
|
# then:
|
|
# - display.page.show_next: oled_display
|
|
# - component.update: oled_display
|
|
|
|
|
|
|
|
font:
|
|
- file: 'arial.ttf'
|
|
id: font1
|
|
size: 11
|
|
glyphs:
|
|
- ' '
|
|
- '/'
|
|
- '!'
|
|
- '"'
|
|
- '%'
|
|
- (
|
|
- )
|
|
- +
|
|
- ','
|
|
- '-'
|
|
- .
|
|
- '0'
|
|
- '1'
|
|
- '2'
|
|
- '3'
|
|
- '4'
|
|
- '5'
|
|
- '6'
|
|
- '7'
|
|
- '8'
|
|
- '9'
|
|
- ':'
|
|
- A
|
|
- B
|
|
- C
|
|
- D
|
|
- E
|
|
- F
|
|
- G
|
|
- H
|
|
- I
|
|
- J
|
|
- K
|
|
- L
|
|
- M
|
|
- N
|
|
- O
|
|
- P
|
|
- Q
|
|
- R
|
|
- S
|
|
- T
|
|
- U
|
|
- V
|
|
- W
|
|
- X
|
|
- Y
|
|
- Z
|
|
- _
|
|
- a
|
|
- b
|
|
- c
|
|
- d
|
|
- e
|
|
- f
|
|
- g
|
|
- h
|
|
- i
|
|
- j
|
|
- k
|
|
- l
|
|
- m
|
|
- n
|
|
- o
|
|
- p
|
|
- q
|
|
- r
|
|
- s
|
|
- t
|
|
- u
|
|
- v
|
|
- w
|
|
- x
|
|
- y
|
|
- z
|
|
- °
|