move dimmer output to external file

This commit is contained in:
pszafer
2024-10-25 09:18:54 +02:00
parent a86adfce01
commit c11ffdd002
4 changed files with 288 additions and 132 deletions

42
boards/dimmer_output.yaml Normal file
View File

@@ -0,0 +1,42 @@
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04

View File

@@ -21,12 +21,13 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.4.0 ref: v1.5.0
files: files:
[ [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
'devices/dimmer_i2c.yaml', 'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml', 'devices/dimmer_ina219.yaml',
'board/dimmer_output.yaml',
] ]
ethernet: ethernet:
@@ -135,49 +136,6 @@ binary_sensor:
input: true input: true
inverted: true inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light: light:
- platform: rgbw - platform: rgbw
name: 'RGBW L' name: 'RGBW L'

View File

@@ -21,12 +21,13 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.4.0 ref: v1.5.0
files: files:
[ [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
'devices/dimmer_i2c.yaml', 'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml', 'devices/dimmer_ina219.yaml',
'board/dimmer_output.yaml',
] ]
ethernet: ethernet:
@@ -135,49 +136,6 @@ binary_sensor:
input: true input: true
inverted: true inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light: light:
- platform: cwww - platform: cwww
name: 'CHL_01_02' name: 'CHL_01_02'

View File

@@ -21,12 +21,13 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.4.0 ref: v1.5.0
files: files:
[ [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
'devices/dimmer_i2c.yaml', 'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml', 'devices/dimmer_ina219.yaml',
'board/dimmer_output.yaml',
] ]
ethernet: ethernet:
@@ -76,107 +77,304 @@ text_sensor:
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: 'IN_01' name: 'IN_01'
id: in_01
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
number: 1 number: 1
mode: mode:
input: true input: true
inverted: 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 - platform: gpio
name: 'IN_02' name: 'IN_02'
id: in_02
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
number: 2 number: 2
mode: mode:
input: true input: true
inverted: 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 - platform: gpio
name: 'IN_03' name: 'IN_03'
id: in_03
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
number: 3 number: 3
mode: mode:
input: true input: true
inverted: 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 - platform: gpio
name: 'IN_04' name: 'IN_04'
id: in_04
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
number: 4 number: 4
mode: mode:
input: true input: true
inverted: 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 - platform: gpio
name: 'IN_05' name: 'IN_05'
id: in_05
pin: pin:
number: 36 number: 36
mode: mode:
input: true input: true
inverted: 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(chl_05).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chl_05
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chl_05
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_05
invalid_cooldown: 0.5s
- platform: gpio - platform: gpio
name: 'IN_06' name: 'IN_06'
id: in_06
pin: pin:
number: 39 number: 39
mode: mode:
input: true input: true
inverted: 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(chl_06).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chl_06
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chl_06
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_06
invalid_cooldown: 0.5s
- platform: gpio - platform: gpio
name: 'IN_07' name: 'IN_07'
id: in_07
pin: pin:
number: 34 number: 34
mode: mode:
input: true input: true
inverted: 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(chl_07).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chl_07
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chl_07
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_07
invalid_cooldown: 0.5s
- platform: gpio - platform: gpio
name: 'IN_08' name: 'IN_08'
id: in_08
pin: pin:
number: 35 number: 35
mode: mode:
input: true input: true
inverted: true inverted: true
on_multi_click:
output: - timing:
- platform: ledc - ON for at least 0.7s
pin: 33 then:
frequency: 1000Hz - while:
inverted: false condition:
id: chl01 binary_sensor.is_on: in_08
- platform: ledc then:
pin: 32 - if:
frequency: 1000Hz condition:
inverted: false lambda: 'return id(chl_08).current_values.get_brightness() >= 0.90f;'
id: chl02 then:
- platform: ledc - light.turn_on:
pin: 12 id: chl_08
frequency: 1000Hz brightness: 5%
inverted: false transition_length: 0.2s
id: chl03 else:
- platform: ledc - light.dim_relative:
pin: 14 id: chl_08
frequency: 1000Hz relative_brightness: 5%
inverted: false transition_length: 0.2s
id: chl04 - delay: 200ms
invalid_cooldown: 0.5s
- platform: ledc - timing: #single click
pin: 13 - ON for at most 0.4s
frequency: 1000Hz - OFF for at least 0.1s
inverted: false then:
id: chr01 light.toggle: chl_08
- platform: ledc invalid_cooldown: 0.5s
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light: light:
- platform: monochromatic - platform: monochromatic