725 lines
13 KiB
YAML
725 lines
13 KiB
YAML
substitutions:
|
|
name: boneio-48-sw-07
|
|
friendly_name: 'BoneIO ESP Mosfet 48 Switches'
|
|
serial_prefix: 'esp' #Don't change it.
|
|
|
|
esphome:
|
|
name: '${name}'
|
|
friendly_name: '${friendly_name}'
|
|
name_add_mac_suffix: true
|
|
project:
|
|
name: boneio.mosfet48-lights
|
|
version: '0.7'
|
|
|
|
esp32:
|
|
board: nodemcu-32s
|
|
framework:
|
|
type: esp-idf
|
|
|
|
ethernet:
|
|
id: eth
|
|
type: LAN8720
|
|
mdc_pin: GPIO23
|
|
mdio_pin: GPIO18
|
|
clk:
|
|
pin: GPIO0
|
|
mode: CLK_EXT_IN
|
|
phy_addr: 1
|
|
power_pin: GPIO16
|
|
|
|
dashboard_import:
|
|
package_import_url: github://boneIO-eu/esphome/boneio-mosfet48_switches_v0_7.yaml@latest
|
|
import_full_config: true
|
|
|
|
packages:
|
|
internals_packages:
|
|
url: https://github.com/boneIO-eu/esphome
|
|
ref: packages-v2.0.0
|
|
files: [
|
|
'packages/devices/buzzer.yaml',
|
|
'packages/devices/serial_no.yaml',
|
|
'packages/devices_v0_7/display.yaml',
|
|
'packages/devices_v0_7/i2c.yaml',
|
|
'packages/devices_v0_7-v0_9/ina219.yaml',
|
|
'packages/devices_v0_7-v0_9/lm75b.yaml',
|
|
'packages/devices_v0_7-v0_9/pcf_mosfet.yaml',
|
|
'packages/boards/mosfet48_output.yaml',
|
|
# 'packages/devices_v0_7/one_wire.yaml',
|
|
]
|
|
|
|
logger:
|
|
api:
|
|
reboot_timeout: 0s
|
|
ota:
|
|
- platform: esphome
|
|
- platform: web_server
|
|
|
|
web_server:
|
|
port: 80
|
|
local: true
|
|
|
|
time:
|
|
- platform: homeassistant
|
|
timezone: Europe/Warsaw
|
|
id: homeassistant_time
|
|
|
|
switch:
|
|
- platform: output
|
|
name: 'Switch 01'
|
|
output: out_01
|
|
id: switch_01
|
|
- platform: output
|
|
name: 'Switch 02'
|
|
output: out_02
|
|
id: switch_02
|
|
- platform: output
|
|
name: 'Switch 03'
|
|
output: out_03
|
|
id: switch_03
|
|
- platform: output
|
|
name: 'Switch 04'
|
|
output: out_04
|
|
id: switch_04
|
|
- platform: output
|
|
name: 'Switch 05'
|
|
output: out_05
|
|
id: switch_05
|
|
- platform: output
|
|
name: 'Switch 06'
|
|
output: out_06
|
|
id: switch_06
|
|
- platform: output
|
|
name: 'Switch 07'
|
|
output: out_07
|
|
id: switch_07
|
|
- platform: output
|
|
name: 'Switch 08'
|
|
output: out_08
|
|
id: switch_08
|
|
- platform: output
|
|
name: 'Switch 09'
|
|
output: out_09
|
|
id: switch_09
|
|
- platform: output
|
|
name: 'Switch 10'
|
|
output: out_10
|
|
id: switch_10
|
|
- platform: output
|
|
name: 'Switch 11'
|
|
output: out_11
|
|
id: switch_11
|
|
- platform: output
|
|
name: 'Switch 12'
|
|
output: out_12
|
|
id: switch_12
|
|
- platform: output
|
|
name: 'Switch 13'
|
|
output: out_13
|
|
id: switch_13
|
|
- platform: output
|
|
name: 'Switch 14'
|
|
output: out_14
|
|
id: switch_14
|
|
- platform: output
|
|
name: 'Switch 15'
|
|
output: out_15
|
|
id: switch_15
|
|
- platform: output
|
|
name: 'Switch 16'
|
|
output: out_16
|
|
id: switch_16
|
|
- platform: output
|
|
name: 'Switch 17'
|
|
output: out_17
|
|
id: switch_17
|
|
- platform: output
|
|
name: 'Switch 18'
|
|
output: out_18
|
|
id: switch_18
|
|
- platform: output
|
|
name: 'Switch 19'
|
|
output: out_19
|
|
id: switch_19
|
|
- platform: output
|
|
name: 'Switch 20'
|
|
output: out_20
|
|
id: switch_20
|
|
- platform: output
|
|
name: 'Switch 21'
|
|
output: out_21
|
|
id: switch_21
|
|
- platform: output
|
|
name: 'Switch 22'
|
|
output: out_22
|
|
id: switch_22
|
|
- platform: output
|
|
name: 'Switch 23'
|
|
output: out_23
|
|
id: switch_23
|
|
- platform: output
|
|
name: 'Switch 24'
|
|
output: out_24
|
|
id: switch_24
|
|
- platform: output
|
|
name: 'Switch 25'
|
|
output: out_25
|
|
id: switch_25
|
|
- platform: output
|
|
name: 'Switch 26'
|
|
output: out_26
|
|
id: switch_26
|
|
- platform: output
|
|
name: 'Switch 27'
|
|
output: out_27
|
|
id: switch_27
|
|
- platform: output
|
|
name: 'Switch 28'
|
|
output: out_28
|
|
id: switch_28
|
|
- platform: output
|
|
name: 'Switch 29'
|
|
output: out_29
|
|
id: switch_29
|
|
- platform: output
|
|
name: 'Switch 30'
|
|
output: out_30
|
|
id: switch_30
|
|
- platform: output
|
|
name: 'Switch 31'
|
|
output: out_31
|
|
id: switch_31
|
|
- platform: output
|
|
name: 'Switch 32'
|
|
output: out_32
|
|
id: switch_32
|
|
- platform: output
|
|
name: 'Switch 33'
|
|
output: out_33
|
|
id: switch_33
|
|
- platform: output
|
|
name: 'Switch 34'
|
|
output: out_34
|
|
id: switch_34
|
|
- platform: output
|
|
name: 'Switch 35'
|
|
output: out_35
|
|
id: switch_35
|
|
- platform: output
|
|
name: 'Switch 36'
|
|
output: out_36
|
|
id: switch_36
|
|
- platform: output
|
|
name: 'Switch 37'
|
|
output: out_37
|
|
id: switch_37
|
|
- platform: output
|
|
name: 'Switch 38'
|
|
output: out_38
|
|
id: switch_38
|
|
- platform: output
|
|
name: 'Switch 39'
|
|
output: out_39
|
|
id: switch_39
|
|
- platform: output
|
|
name: 'Switch 40'
|
|
output: out_40
|
|
id: switch_40
|
|
- platform: output
|
|
name: 'Switch 41'
|
|
output: out_41
|
|
id: switch_41
|
|
- platform: output
|
|
name: 'Switch 42'
|
|
output: out_42
|
|
id: switch_42
|
|
- platform: output
|
|
name: 'Switch 43'
|
|
output: out_43
|
|
id: switch_43
|
|
- platform: output
|
|
name: 'Switch 44'
|
|
output: out_44
|
|
id: switch_44
|
|
- platform: output
|
|
name: 'Switch 45'
|
|
output: out_45
|
|
id: switch_45
|
|
- platform: output
|
|
name: 'Switch 46'
|
|
output: out_46
|
|
id: switch_46
|
|
- platform: output
|
|
name: 'Switch 47'
|
|
output: out_47
|
|
id: switch_47
|
|
- platform: output
|
|
name: 'Switch 48'
|
|
output: out_48
|
|
id: switch_48
|
|
|
|
binary_sensor:
|
|
- platform: gpio
|
|
name: 'IN_01'
|
|
id: in_01
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 0
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_01
|
|
|
|
- platform: gpio
|
|
name: 'IN_02'
|
|
id: in_02
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 1
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_02
|
|
|
|
- platform: gpio
|
|
name: 'IN_03'
|
|
id: in_03
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 2
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_03
|
|
|
|
- platform: gpio
|
|
name: 'IN_04'
|
|
id: in_04
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 3
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_04
|
|
|
|
- platform: gpio
|
|
name: 'IN_05'
|
|
id: in_05
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 4
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_05
|
|
|
|
- platform: gpio
|
|
name: 'IN_06'
|
|
id: in_06
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 5
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_06
|
|
|
|
- platform: gpio
|
|
name: 'IN_07'
|
|
id: in_07
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 6
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_07
|
|
|
|
- platform: gpio
|
|
name: 'IN_08'
|
|
id: in_08
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 8
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_08
|
|
|
|
- platform: gpio
|
|
name: 'IN_09'
|
|
id: in_09
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 9
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_09
|
|
|
|
- platform: gpio
|
|
name: 'IN_10'
|
|
id: in_10
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 10
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_10
|
|
|
|
- platform: gpio
|
|
name: 'IN_11'
|
|
id: in_11
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 11
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_11
|
|
|
|
- platform: gpio
|
|
name: 'IN_12'
|
|
id: in_12
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 12
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_12
|
|
|
|
- platform: gpio
|
|
name: 'IN_13'
|
|
id: in_13
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 13
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_13
|
|
|
|
- platform: gpio
|
|
name: 'IN_14'
|
|
id: in_14
|
|
pin:
|
|
pcf8574: pcf_inputs_1to14
|
|
number: 14
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_14
|
|
|
|
- platform: gpio
|
|
name: 'IN_15'
|
|
id: in_15
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 6
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_15
|
|
|
|
- platform: gpio
|
|
name: 'IN_16'
|
|
id: in_16
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 5
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_16
|
|
|
|
- platform: gpio
|
|
name: 'IN_17'
|
|
id: in_17
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 4
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_17
|
|
|
|
- platform: gpio
|
|
name: 'IN_18'
|
|
id: in_18
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 3
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_18
|
|
|
|
- platform: gpio
|
|
name: 'IN_19'
|
|
id: in_19
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 2
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_19
|
|
|
|
- platform: gpio
|
|
name: 'IN_20'
|
|
id: in_20
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 1
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_20
|
|
|
|
- platform: gpio
|
|
name: 'IN_21'
|
|
id: in_21
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 0
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_21
|
|
|
|
- platform: gpio
|
|
name: 'IN_22'
|
|
id: in_22
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 8
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_22
|
|
|
|
- platform: gpio
|
|
name: 'IN_23'
|
|
id: in_23
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 9
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_23
|
|
|
|
- platform: gpio
|
|
name: 'IN_24'
|
|
id: in_24
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 10
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_24
|
|
|
|
- platform: gpio
|
|
name: 'IN_25'
|
|
id: in_25
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 11
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_25
|
|
|
|
- platform: gpio
|
|
name: 'IN_26'
|
|
id: in_26
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 12
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_26
|
|
|
|
- platform: gpio
|
|
name: 'IN_27'
|
|
id: in_27
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 13
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_27
|
|
|
|
- platform: gpio
|
|
name: 'IN_28'
|
|
id: in_28
|
|
pin:
|
|
pcf8574: pcf_inputs_15to28
|
|
number: 14
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_28
|
|
|
|
- platform: gpio
|
|
name: 'IN_29'
|
|
id: in_29
|
|
pin:
|
|
pcf8574: pcf_inputs_28to35_menu
|
|
number: 0
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_29
|
|
|
|
- platform: gpio
|
|
name: 'IN_30'
|
|
id: in_30
|
|
pin:
|
|
pcf8574: pcf_inputs_28to35_menu
|
|
number: 1
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_30
|
|
|
|
- platform: gpio
|
|
name: 'IN_31'
|
|
id: in_31
|
|
pin:
|
|
pcf8574: pcf_inputs_28to35_menu
|
|
number: 2
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_31
|
|
|
|
- platform: gpio
|
|
name: 'IN_32'
|
|
id: in_32
|
|
pin:
|
|
pcf8574: pcf_inputs_28to35_menu
|
|
number: 3
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
on_press:
|
|
then:
|
|
- switch.toggle: switch_32
|
|
|
|
- platform: gpio
|
|
name: 'IN_33'
|
|
pin:
|
|
pcf8574: pcf_inputs_28to35_menu
|
|
number: 4
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_34'
|
|
pin:
|
|
pcf8574: pcf_inputs_28to35_menu
|
|
number: 5
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_35'
|
|
pin:
|
|
pcf8574: pcf_inputs_28to35_menu
|
|
number: 6
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
######################
|
|
### MODBUS SECTION ###
|
|
######################
|
|
# UNCOMMENT BELOW TO USE MODBUS
|
|
# uart:
|
|
# id: uart_pin14_15
|
|
# rx_pin: GPIO14
|
|
# tx_pin: GPIO15
|
|
# baud_rate: 9600
|
|
# stop_bits: 1
|
|
|
|
# modbus:
|
|
# send_wait_time: 200ms
|
|
# uart_id: uart_pin14_15
|
|
# id: boneio_modbus
|
|
|
|
# modbus_controller:
|
|
# - id: YOURDEVICE ID
|
|
# address: 0x09
|
|
# modbus_id: mod_bus
|
|
# setup_priority: -10
|
|
# update_interval: 60s
|