mirror of
https://github.com/boneIO-eu/esphome.git
synced 2026-04-10 20:50:02 +02:00
388 lines
7.4 KiB
YAML
388 lines
7.4 KiB
YAML
substitutions:
|
|
name: boneio-dr-8ch-04
|
|
friendly_name: 'BoneIO Dimmer LED'
|
|
serial_prefix: 'dim' #Don't change it.
|
|
|
|
esphome:
|
|
name: '${name}'
|
|
friendly_name: '${friendly_name}'
|
|
name_add_mac_suffix: true
|
|
project:
|
|
name: boneio.dimmer-led
|
|
version: '0.4'
|
|
|
|
esp32:
|
|
board: esp32-s3-devkitc-1
|
|
|
|
ethernet:
|
|
id: eth
|
|
type: W5500
|
|
clk_pin: GPIO12
|
|
mosi_pin: GPIO14
|
|
miso_pin: GPIO13
|
|
cs_pin: GPIO39
|
|
interrupt_pin: GPIO21
|
|
reset_pin: GPIO38
|
|
|
|
external_components:
|
|
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
|
|
components: [lm75]
|
|
|
|
i2c:
|
|
sda: GPIO11
|
|
scl: GPIO10
|
|
scan: True
|
|
frequency: 400kHz
|
|
|
|
uart:
|
|
id: uart_pin8_9
|
|
rx_pin: GPIO8
|
|
tx_pin: GPIO9
|
|
baud_rate: 9600
|
|
stop_bits: 1
|
|
|
|
output:
|
|
- platform: ledc
|
|
pin: GPIO4
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chl01
|
|
- platform: ledc
|
|
pin: GPIO5
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chl02
|
|
- platform: ledc
|
|
pin: GPIO6
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chl03
|
|
- platform: ledc
|
|
pin: GPIO7
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chl04
|
|
|
|
- platform: ledc
|
|
pin: GPIO15
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chr01
|
|
- platform: ledc
|
|
pin: GPIO16
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chr02
|
|
- platform: ledc
|
|
pin: GPIO17
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chr03
|
|
- platform: ledc
|
|
pin: GPIO18
|
|
frequency: 1000Hz
|
|
inverted: false
|
|
id: chr04
|
|
|
|
##CAN gpio1 - tx, gpio2 rx
|
|
|
|
modbus:
|
|
send_wait_time: 200ms
|
|
uart_id: uart_pin8_9
|
|
id: boneio_modbus
|
|
|
|
packages:
|
|
internals_packages:
|
|
url: https://github.com/boneIO-eu/esphome
|
|
ref: v1.5.0
|
|
files: [
|
|
'devices/serial_no.yaml',
|
|
# 'devices/dimmer_i2c.yaml',
|
|
# 'devices/dimmer_ina219.yaml',
|
|
# 'boards/dimmer_output.yaml',
|
|
]
|
|
|
|
# dashboard_import:
|
|
# package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.yaml@latest
|
|
# import_full_config: true
|
|
|
|
pcf8574:
|
|
- id: 'pcf_inputs'
|
|
address: 0x38
|
|
|
|
logger:
|
|
api:
|
|
reboot_timeout: 0s
|
|
ota:
|
|
- platform: esphome
|
|
|
|
web_server:
|
|
port: 80
|
|
local: true
|
|
|
|
text_sensor:
|
|
- platform: version
|
|
name: 'boneio-dimmer- Version'
|
|
icon: mdi:cube-outline
|
|
entity_category: diagnostic
|
|
- platform: ethernet_info
|
|
ip_address:
|
|
entity_category: diagnostic
|
|
name: boneio-dimmer IP
|
|
- platform: template
|
|
name: 'Hostname'
|
|
id: hostname
|
|
entity_category: diagnostic
|
|
lambda: |-
|
|
return id(eth).get_use_address();
|
|
update_interval: 5min
|
|
|
|
binary_sensor:
|
|
- platform: gpio
|
|
name: 'IN_01'
|
|
id: in_01
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 0
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_02'
|
|
id: in_02
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 1
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_03'
|
|
id: in_03
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 2
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_04'
|
|
id: in_04
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 3
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_05'
|
|
id: in_05
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 4
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_06'
|
|
id: in_06
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 5
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_07'
|
|
id: in_07
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 6
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
|
|
- platform: gpio
|
|
name: 'IN_08'
|
|
id: in_08
|
|
pin:
|
|
pcf8574: pcf_inputs
|
|
number: 7
|
|
mode:
|
|
input: true
|
|
inverted: true
|
|
- platform: template
|
|
name: CAN Bus Button
|
|
id: can_bus_button
|
|
|
|
light:
|
|
- platform: monochromatic
|
|
output: chl01
|
|
name: 'CHL 01'
|
|
id: chl_01
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
- platform: monochromatic
|
|
output: chl02
|
|
name: 'CHL 02'
|
|
id: chl_02
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
- platform: monochromatic
|
|
output: chl03
|
|
name: 'CHL 03'
|
|
id: chl_03
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
- platform: monochromatic
|
|
output: chl04
|
|
name: 'CHL 04'
|
|
id: chl_04
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
|
|
- platform: monochromatic
|
|
output: chr01
|
|
name: 'CHR 01'
|
|
id: chr_01
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
- platform: monochromatic
|
|
output: chr02
|
|
name: 'CHR 02'
|
|
id: chr_02
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
- platform: monochromatic
|
|
output: chr03
|
|
name: 'CHR 03'
|
|
id: chr_03
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
- platform: monochromatic
|
|
output: chr04
|
|
name: 'CHR 04'
|
|
id: chr_04
|
|
default_transition_length: 2s
|
|
gamma_correct: 0
|
|
|
|
sensor:
|
|
- platform: lm75
|
|
id: boneIO_temp
|
|
name: 'Temperature'
|
|
update_interval: 30s
|
|
entity_category: diagnostic
|
|
# on_value_range:
|
|
# - above: 70.0
|
|
# then:
|
|
# - switch.turn_on: buzzer
|
|
# - below: 70.0
|
|
# then:
|
|
# - switch.turn_off: buzzer
|
|
- platform: max9611
|
|
shunt_resistance: 0.005 ohm
|
|
gain: '1X'
|
|
voltage:
|
|
name: CHL Voltage
|
|
current:
|
|
name: CHLCurrent
|
|
power:
|
|
name: CHL Watts
|
|
temperature:
|
|
name: CHL Temperature
|
|
address: 0x70
|
|
update_interval: 10s
|
|
|
|
- platform: max9611
|
|
shunt_resistance: 0.005 ohm
|
|
gain: '1X'
|
|
voltage:
|
|
name: CHR Voltage
|
|
current:
|
|
name: CHR Current
|
|
power:
|
|
name: CHR Watts
|
|
temperature:
|
|
name: CHR Temperature
|
|
address: 0x73
|
|
update_interval: 10s
|
|
- platform: modbus_controller
|
|
modbus_controller_id: sht20
|
|
name: 'Temperature'
|
|
register_type: read
|
|
address: 1
|
|
unit_of_measurement: '°C'
|
|
device_class: 'temperature'
|
|
state_class: 'measurement'
|
|
value_type: S_WORD
|
|
accuracy_decimals: 2
|
|
filters:
|
|
- multiply: 0.1
|
|
- platform: modbus_controller
|
|
modbus_controller_id: sht20
|
|
name: 'Humidity'
|
|
register_type: read
|
|
address: 2
|
|
unit_of_measurement: '%'
|
|
device_class: 'humidity'
|
|
state_class: 'measurement'
|
|
value_type: S_WORD
|
|
accuracy_decimals: 2
|
|
filters:
|
|
- multiply: 0.1
|
|
|
|
switch:
|
|
- platform: gpio
|
|
id: buzzer
|
|
name: 'Buzzer'
|
|
pin:
|
|
number: GPIO42
|
|
mode:
|
|
output: true
|
|
inverted: true
|
|
|
|
modbus_controller:
|
|
- id: sht20
|
|
address: 62
|
|
modbus_id: boneio_modbus
|
|
setup_priority: -10
|
|
update_interval: 20s
|
|
|
|
canbus:
|
|
- platform: esp32_can
|
|
tx_pin: GPIO01
|
|
rx_pin: GPIO02
|
|
can_id: 4
|
|
bit_rate: 50kbps
|
|
on_frame:
|
|
- can_id: 5
|
|
then:
|
|
- lambda: |-
|
|
if(x.size() > 0) {
|
|
switch(x[0]) {
|
|
case 0x12: // button release
|
|
id(can_bus_button).publish_state(false);
|
|
break;
|
|
case 0x11: // button press
|
|
id(can_bus_button).publish_state(true);
|
|
break;
|
|
}
|
|
}
|
|
button:
|
|
- platform: template
|
|
name: 'CAN Sensor ON'
|
|
on_press:
|
|
- logger.log: Button Pressed
|
|
- canbus.send: [0x11, 0x22, 0x33]
|
|
- platform: template
|
|
name: 'CAN Sensor OFF'
|
|
on_press:
|
|
- logger.log: Button Pressed
|
|
- canbus.send: [0x12, 0x22, 0x33]
|