Hallo Leute,
ich habe eine innr RS230 RGB GU 10 Lampe im Einsatz.. An und Ausschalten - funktioniert, Helligkeit - funktioniert... nur die Farbauswahl will mir nicht gelingen.. hab mal wieder n Brett vorm Kopf...
meine Lampe hat den Friendly namen fel2..
Um Color zu bekommen hier die Definition von zigbee2mqtt...
color_xy: To control the XY color (CIE 1931 color space) publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"color": {"x": X_VALUE, "y": Y_VALUE}} (e.g. {"color":{"x":0.123,"y":0.123}}). To read the XY color send a message to zigbee2mqtt/FRIENDLY_NAME/get with payload {"color":{"x":"","y":""}}. Alternatively it is possible to set the XY color via RGB:
{"color": {"r": R, "g": G, "b": B}} e.g. {"color":{"r":46,"g":102,"b":150}}
{"color": {"rgb": "R,G,B"}} e.g. {"color":{"rgb":"46,102,150"}}
{"color": {"hex": HEX}} e.g. {"color":{"hex":"#547CFF"}}
color_hs: To control the hue/saturation (color) publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"color": {"hue": HUE, "saturation": SATURATION}} (e.g. {"color":{"hue":360,"saturation":100}}). To read the hue/saturation send a message to zigbee2mqtt/FRIENDLY_NAME/get with payload {"color":{"hue":"","saturation":""}}. Alternatively it is possible to set the hue/saturation via:
HSB space (hue, saturation, brightness): {"color": {"h": H, "s": S, "b": B}} e.g. {"color":{"h":360,"s":100,"b":100}} or {"color": {"hsb": "H,S,B"}} e.g. {"color":{"hsb":"360,100,100"}}
HSV space (hue, saturation, brightness):{"color": {"h": H, "s": S, "v": V}} e.g. {"color":{"h":360,"s":100,"v":100}} or {"color": {"hsv": "H,S,V"}} e.g. {"color":{"hsv":"360,100,100"}}
HSL space (hue, saturation, lightness){"color": {"h": H, "s": S, "l": L}} e.g. {"color":{"h":360,"s":100,"l":100}} or {"color": {"hsl": "H,S,L"}} e.g. {"color":{"hsl":"360,100,100"}}
jetzt meine Frage:
Welchen Channel Type benöitge ich jetzt?
Color Value RGB
Color Value HSB
oder
Color Value (HSB, RGB or CIE
den Channel lege ich genau wie an? also mqtt state:
zigbee2mqtt/fel2/get/color?
und das Command Topic?
zigbee2mqtt/fel2/set/color?
Danke
greetz Spuckiii
mqtt ... mal wieder
- udo1toni
- Beiträge: 15265
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: mqtt ... mal wieder
Vor dem Hintergrund, dass openHAB intern mit HSB als Farbmodell arbeitet, wäre es das Einfachste, auch hier HSB zu verwenden. Du brauchst also diese Form:
Dies ist der Rahmen für die Werte, die gewöhnlich einfach mit Komma getrennt gesendet werden. Stattdessen brauchen wir die Werte separat, anstelle der Großbuchstaben H, S und B. Dafür gibt es die Platzhalter %1$d, %2$d und %3$d.
Was nun noch fehlt, ist das stateTopic. Leider ist das Topic, welches mit get endet, hierfür nicht geeignet. Das dient dazu, einen Befehl zu senden, woraufhin der aktuelle Wert gesendet wird. Da fehlt also noch was, was Du nicht aus der Doku kopiert hast...
Das Thing mit einem Channel sähe ohne stateTopic so aus:
Code: Alles auswählen
{"color": {"h": H, "s": S, "b": B}}
Was nun noch fehlt, ist das stateTopic. Leider ist das Topic, welches mit get endet, hierfür nicht geeignet. Das dient dazu, einen Befehl zu senden, woraufhin der aktuelle Wert gesendet wird. Da fehlt also noch was, was Du nicht aus der Doku kopiert hast...
Das Thing mit einem Channel sähe ohne stateTopic so aus:
Code: Alles auswählen
UID: mqtt:topic:mosquitto:myColor
label: Generic MQTT Color Thing
thingTypeUID: mqtt:topic
configuration: {}
bridgeUID: mqtt:broker:mosquitto
channels:
- id: ch1
channelTypeUID: mqtt:color
label: Channel 1
description: ""
configuration:
formatBeforePublish: '{"color": {"h": %1$d, "s": %2$d, "b": %3$d}}'
commandTopic: zigbee2mqtt/fel2/set
colorMode: HSB
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
-
- Beiträge: 29
- Registriert: 11. Jul 2021 11:55
Re: mqtt ... mal wieder
Hallo Udo,udo1toni hat geschrieben: ↑21. Sep 2021 21:35 Vor dem Hintergrund, dass openHAB intern mit HSB als Farbmodell arbeitet, wäre es das Einfachste, auch hier HSB zu verwenden. Du brauchst also diese Form:Dies ist der Rahmen für die Werte, die gewöhnlich einfach mit Komma getrennt gesendet werden. Stattdessen brauchen wir die Werte separat, anstelle der Großbuchstaben H, S und B. Dafür gibt es die Platzhalter %1$d, %2$d und %3$d.Code: Alles auswählen
{"color": {"h": H, "s": S, "b": B}}
Was nun noch fehlt, ist das stateTopic. Leider ist das Topic, welches mit get endet, hierfür nicht geeignet. Das dient dazu, einen Befehl zu senden, woraufhin der aktuelle Wert gesendet wird. Da fehlt also noch was, was Du nicht aus der Doku kopiert hast...
Das Thing mit einem Channel sähe ohne stateTopic so aus:
Code: Alles auswählen
UID: mqtt:topic:mosquitto:myColor label: Generic MQTT Color Thing thingTypeUID: mqtt:topic configuration: {} bridgeUID: mqtt:broker:mosquitto channels: - id: ch1 channelTypeUID: mqtt:color label: Channel 1 description: "" configuration: formatBeforePublish: '{"color": {"h": %1$d, "s": %2$d, "b": %3$d}}' commandTopic: zigbee2mqtt/fel2/set colorMode: HSB
erstmal danke dass Du Dich uns unwissenden immer so annimmst.
Das Thing / der Channel habe ich jetzt per Copy / Paste mal erstellt. und wie sieht das jetzt mit dem Item aus?

**Update**
also das Things wie oben gesagt per copy/paste eingefügt.. dann etwas recherchiert und folgenden Befehl über die openhab-cli gesendet:
openhab:send Color_Channel1 "0,0,0"
jetzt erscheinen die Farbbalken... jedoch wird die Brightness nicht berücksichtigt...
