Diese bietet die Möglichkeit verschiedene vorprogrammierte Programme zu starten. Diese lassen sich direkt am Controller umschalten.
Man kann diese aber auch über den Dienst deconz.configure aus HA aufrufen.
Neben den Effekten können bis zu 6 Effekt-Farben ausgewählt werden sowie die Geschwindigkeit.
Das Ganze lässt sich dann schön in einen Karte packen um so bequem die Lichterkette über Lavelace zu steuern. Selbstverständlich lässt sich die Steuerung auch in Automatisierungen und Skripten verwenden.
Zuerst brauchen wir 6 Dummy RGB Lichter um die Effekt Farbenauswahl zu ermöglichen. Ich habe dazu MQTT Lichter angelegt.
Code: Alles auswählen
- platform: mqtt
name: "Effekt Farbe 1"
command_topic: "lichterkette/effektfarbe/1/set"
rgb_command_topic: "lichterkette/effektfarbe/1/set"
optimistic: true
qos: 0
- platform: mqtt
name: "Effekt Farbe 2"
command_topic: "lichterkette/effektfarbe/2/set"
rgb_command_topic: "lichterkette/effektfarbe/2/set"
optimistic: true
qos: 0
- platform: mqtt
name: "Effekt Farbe 3"
command_topic: "lichterkette/effektfarbe/3/set"
rgb_command_topic: "lichterkette/effektfarbe/3/set"
optimistic: true
- platform: mqtt
name: "Effekt Farbe 4"
command_topic: "lichterkette/effektfarbe/4/set"
rgb_command_topic: "lichterkette/effektfarbe/4/set"
optimistic: true
- platform: mqtt
name: "Effekt Farbe 5"
command_topic: "lichterkette/effektfarbe/5/set"
rgb_command_topic: "lichterkette/effektfarbe/5/set"
optimistic: true
- platform: mqtt
name: "Effekt Farbe 6"
command_topic: "lichterkette/effektfarbe/6/set"
rgb_command_topic: "lichterkette/effektfarbe/6/set"
steady
snow
rainbow
snake
twinkle
waves
updown
vintage
fading
collide
strobe
sparkles
glow
horizontal_flag
Mein input_select heisst
Code: Alles auswählen
input_select.effekte
Minimal Wert = 1
Maximalwert = 100
Schrittgröße = 1
Mein input_number heisst
Code: Alles auswählen
input_number.effekt_speed
Code: Alles auswählen
alias: Effekt setzen Lichterkette
sequence:
- service: light.turn_on
target:
entity_id:
- light.lichterkette1
- service: deconz.configure
data:
data:
effect: '{{ states.input_select.effekte.state }}'
effectSpeed: '{{ states.input_number.effekt_speed.state }}'
effectColours:
- '{{ state_attr("light.effekt_farbe_1", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_2", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_3", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_4", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_5", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_6", "rgb_color") }}'
field: /lights/53/state
mode: single
icon: mdi:pine-tree
Der Effekt ist der Wert unser Auswahlliste (input_select.effekte)
Die Effekt-Geschwindigkeit ist der Wert von unserem Numerischen Helfer (input_number.effekt_speed)
Und Die 6 Farben sind die RGB Werte der erstellten MQTT Lichter
Je nach Effekt werden 1 bis 6 Farben verwendet.
Code: Alles auswählen
field: /lights/53/state
Die Zahl 53, ist die auf die es ankommt. Welche Nummer eure LED-Kette in deCONZ hat könnt ihr über Phoscon ermitteln.
Oben Like auf Menü klicken, dann Info und API Informationen
Lichter Auswählen. Über die Auswahlliste die LED-Lichterette auswählen.
In der Adressenzeile, ganz am Ende findet Ihr die Nummer eurer LED-Lichterkette.
Jetzt kann man das Alles schön in einen Karte packen und fertig.
Effektfarben über den Color-Picker auswählen, den Effekt auswählen und die passende Geschwindigkeit.
Anschließend auf Script Ausführen klicken und schon blinkt die LED-Lichterkette, so wie es man gern hätte.
Code: Alles auswählen
type: vertical-stack
cards:
- type: button
tap_action:
action: toggle
entity: light.lichterkette1
show_icon: false
show_state: true
show_name: true
name: Weihnachtsbaum
- type: glance
entities:
- entity: light.effekt_farbe_1
- entity: light.effekt_farbe_2
- entity: light.effekt_farbe_3
show_state: false
show_icon: true
show_name: true
- type: glance
entities:
- entity: light.effekt_farbe_4
- entity: light.effekt_farbe_5
- entity: light.effekt_farbe_6
show_state: false
- type: entities
entities:
- entity: input_select.effekte
- entity: input_number.effekt_speed
- entity: script.effekt_setzen_lichterkette
name: Effekt setzen
Die Auswahl des Effekts erfolgt über ein Skript. Dabei wird zufällig einer der 3 Effekte ausgewählt ("horizontal_flag", "sparkles", "glow" )
Code: Alles auswählen
alias: Effekte Zufall
sequence:
- service: deconz.configure
data:
data:
effect: '{{ [ "horizontal_flag", "sparkles", "glow" ] | random}}'
effectSpeed: '{{ states.input_number.effekt_speed.state }}'
effectColours:
- '{{ state_attr("light.effekt_farbe_1", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_2", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_3", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_4", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_5", "rgb_color") }}'
- '{{ state_attr("light.effekt_farbe_6", "rgb_color") }}'
field: /lights/53/state
mode: single
Das ganze lässt sich auch schön in einen Automatisierung reinpacken.
Code: Alles auswählen
alias: 'Garten - Weihnachten - Lichterkette Outdoor Zufall Effekte '
description: ''
trigger:
- platform: time_pattern
minutes: '30'
id: zufall
- platform: sun
event: sunset
offset: '0'
id: an
- platform: sun
event: sunrise
offset: '0'
id: aus
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: an
sequence:
- service: script.effekt_setzen_lichterkette
- conditions:
- condition: trigger
id: aus
sequence:
- service: light.turn_off
target:
entity_id:
- light.lichterkette1
- conditions:
- condition: trigger
id: zufall
- condition: state
entity_id: sun.sun
state: below_horizon
- condition: state
entity_id: light.lichterkette1
state: 'on'
sequence:
- service: script.effekte_zufall
default: []
mode: single
Gruß
Osorkon