Initial commit
This commit is contained in:
458
boneio-dimmer_8ch-v0_3.yaml
Normal file
458
boneio-dimmer_8ch-v0_3.yaml
Normal file
@@ -0,0 +1,458 @@
|
||||
substitutions:
|
||||
name: boneio-dr-8ch-03
|
||||
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.3'
|
||||
|
||||
esp32:
|
||||
board: esp32dev
|
||||
framework:
|
||||
type: esp-idf
|
||||
|
||||
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]
|
||||
|
||||
packages:
|
||||
internals_packages:
|
||||
url: https://github.com/boneIO-eu/esphome
|
||||
ref: packages-v2.0.0
|
||||
files:
|
||||
[
|
||||
'packages/devices/serial_no.yaml',
|
||||
'packages/devices/dimmer_i2c.yaml',
|
||||
'packages/devices/dimmer_ina219.yaml',
|
||||
'packages/boards/dimmer_output.yaml',
|
||||
]
|
||||
|
||||
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-dimmer_8ch-v0_3.yaml@latest
|
||||
import_full_config: true
|
||||
|
||||
pcf8574:
|
||||
- id: 'pcf_inputs'
|
||||
address: 0x38
|
||||
|
||||
logger:
|
||||
api:
|
||||
reboot_timeout: 0s
|
||||
ota:
|
||||
- platform: esphome
|
||||
- platform: web_server
|
||||
|
||||
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 std::string(id(eth).get_use_address());
|
||||
update_interval: 5min
|
||||
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
name: 'IN_01'
|
||||
id: in_01
|
||||
pin:
|
||||
pcf8574: pcf_inputs
|
||||
number: 1
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_01
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chl_01).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chl_01
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chl_01
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chl_01
|
||||
invalid_cooldown: 0.5s
|
||||
- platform: gpio
|
||||
name: 'IN_02'
|
||||
id: in_02
|
||||
pin:
|
||||
pcf8574: pcf_inputs
|
||||
number: 2
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_02
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chl_02).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chl_02
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chl_02
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chl_02
|
||||
invalid_cooldown: 0.5s
|
||||
- platform: gpio
|
||||
name: 'IN_03'
|
||||
id: in_03
|
||||
pin:
|
||||
pcf8574: pcf_inputs
|
||||
number: 3
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_03
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chl_03).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chl_03
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chl_03
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chl_03
|
||||
invalid_cooldown: 0.5s
|
||||
- platform: gpio
|
||||
name: 'IN_04'
|
||||
id: in_04
|
||||
pin:
|
||||
pcf8574: pcf_inputs
|
||||
number: 4
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_04
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chl_04).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chl_04
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chl_04
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chl_04
|
||||
invalid_cooldown: 0.5s
|
||||
- platform: gpio
|
||||
name: 'IN_05'
|
||||
id: in_05
|
||||
pin:
|
||||
number: 36
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_05
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chr_01).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chr_01
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chr_01
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chr_01
|
||||
invalid_cooldown: 0.5s
|
||||
- platform: gpio
|
||||
name: 'IN_06'
|
||||
id: in_06
|
||||
pin:
|
||||
number: 39
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_06
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chr_02).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chr_02
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chr_02
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chr_02
|
||||
invalid_cooldown: 0.5s
|
||||
- platform: gpio
|
||||
name: 'IN_07'
|
||||
id: in_07
|
||||
pin:
|
||||
number: 34
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_07
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chr_03).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chr_03
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chr_03
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chr_03
|
||||
invalid_cooldown: 0.5s
|
||||
- platform: gpio
|
||||
name: 'IN_08'
|
||||
id: in_08
|
||||
pin:
|
||||
number: 35
|
||||
mode:
|
||||
input: true
|
||||
inverted: true
|
||||
on_multi_click:
|
||||
- timing:
|
||||
- ON for at least 0.7s
|
||||
then:
|
||||
- while:
|
||||
condition:
|
||||
binary_sensor.is_on: in_08
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
lambda: 'return id(chr_04).current_values.get_brightness() >= 0.90f;'
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: chr_04
|
||||
brightness: 5%
|
||||
transition_length: 0.2s
|
||||
else:
|
||||
- light.dim_relative:
|
||||
id: chr_04
|
||||
relative_brightness: 5%
|
||||
transition_length: 0.2s
|
||||
- delay: 200ms
|
||||
invalid_cooldown: 0.5s
|
||||
- timing: #single click
|
||||
- ON for at most 0.4s
|
||||
- OFF for at least 0.1s
|
||||
then:
|
||||
light.toggle: chr_04
|
||||
invalid_cooldown: 0.5s
|
||||
|
||||
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
|
||||
|
||||
switch:
|
||||
- platform: gpio
|
||||
id: buzzer
|
||||
name: 'Buzzer'
|
||||
pin:
|
||||
pcf8574: pcf_inputs
|
||||
number: 0
|
||||
mode:
|
||||
output: true
|
||||
inverted: true
|
||||
Reference in New Issue
Block a user