Seite 1 von 1
RGB Lampe E27 Tasmota mit RGBWW
Verfasst: 12. Jan 2020 21:39
von b-tronic
Hi,
kann mir jemand sagen wie ich über Openhab2 den Colorwert beschreiben kann:
Thing in Openhab:
Code: Alles auswählen
Thing topic sonoffb1 "Sonoff B1" @ "Aussen" {
Channels:
Type string : reachable "Reachable" [ stateTopic="tele/tasmota/LWT" ]
Type switch : power "Power" [ stateTopic="stat/tasmota/POWER", commandTopic="cmnd/tasmota/POWER" ]
Type switch : fade "Fade" [ stateTopic="tele/tasmota/STATE", commandTopic="cmnd/tasmota/FADE", transformationPattern="JSONPATH:$.Fade" ]
Type dimmer : dimmer "Dimmer" [ stateTopic="tele/tasmota/STATE", commandTopic="cmnd/tasmota/DIMMER", transformationPattern="JSONPATH:$.Dimmer" ]
Type string : mode "Mode" [ stateTopic="tele/tasmota/STATE", commandTopic="cmnd/tasmota/SCHEME", transformationPattern="JSONPATH:$.Scheme" ]
Type colorHSB : colour "Colour" [ stateTopic="tele/tasmota/STATE", commandTopic="cmnd/tasmota/HSBColor", transformationPattern="JSONPATH:$.HSBColor" ]
Type number : rssi "WiFi Signal Strength" [ stateTopic="tele/tasmota/STATE", transformationPattern="JSONPATH:$.Wifi.RSSI"]
}
So sieht der Log der Birne aus:
Code: Alles auswählen
stat/tasmota/RESULT = {"POWER":"ON","Dimmer":20,"Color":"50,0,0,0,0","HSBColor":"0,100,20","Channel":[20,0,0,0,0],"CT":465}
Wenn ich über Openhab die Lampe ansteuere wird nur Power,Dimmer und HSBColor angesteuert, ich brauche aber die Color Variable.
Die Belegung der Color Variable ist R,G,B,Warmweis,Kaltweis
Wie muß ich Thing und Item anlegen damit die Color Variable angesteuert wird ?
MfG B-Tronic
Re: RGB Lampe E27 Tasmota mit RGBWW
Verfasst: 13. Jan 2020 11:19
von seppy
Hi,
sollte gehen, aber ich habe es bisher nur eingebaut aber noch nicht getestet:
thing:
Code: Alles auswählen
Thing mqtt:topic:ThgSmartLEDPoolwand1 "Poolwand LED 1" (mqtt:broker:mqtthomebox) {
Channels:
Type switch : PowerSwitch
"Power Switch"
[stateTopic="stat/mqttclient_led1/POWER", commandTopic="cmnd/mqttclient_led1/POWER", on="ON", off="OFF"]
Type switch : PowerSwitchRes
"Switch State"
[stateTopic="stat/mqttclient_led1/RESULT", transformationPattern="JSONPATH:$.POWER",on="ON",off="OFF"]
Type colorHSB : LedColor
"Color"
[stateTopic="stat/mqttclient_led1/Color", transformationPattern="JSONPATH:$.Color", commandTopic="cmnd/mqttclient_led1/Color"]
items:
Code: Alles auswählen
Color SmartLEDPoolwand1Color
"LED 1 Farbe"
<colorpicker>
(gAussenSmartLEDColor)
{channel="mqtt:topic:ThgSmartLEDPoolwand1:LedColor"}
sitemap:
Code: Alles auswählen
Colorpicker item=SmartLEDPoolwand1Color label="Poolwand LED 1 Farbe" icon="colorpicker"
So sollte es in der Theorie funktionieren, gestestet habe ich aber noch nicht.
Grüße,
Seppy
Re: RGB Lampe E27 Tasmota mit RGBWW
Verfasst: 13. Jan 2020 19:11
von b-tronic
Geht leider nicht.
Beim Type ColorHSB werden nur die 3 Farbwerte beschrieben, also bei der Color Tasmota Variable die ersten 3 Felder.
Das geht bei meiner Lampe auch mit dem direkten HSB Wert:
stat/tasmota/RESULT = {"POWER":"ON","Dimmer":13,"Color":"0,0,0,33,0","HSBColor":"0,0,0","Channel":[0,0,0,13,0],"CT":153}
Ich will jedoch den 4. und 5. Color Wert beschreiben, z.B. mit einem Dimmer Type, aber wie kann ich die Variable deklarieren das
die ersten 3 Werte mit "0" beschrieben werden und der 4. oder 5. Wert mit dem Wert der Dimmer Variable ?
Re: RGB Lampe E27 Tasmota mit RGBWW
Verfasst: 26. Jan 2020 08:33
von b-tronic
So funktioniert es:
Thing
Code: Alles auswählen
Thing topic sonoffb1 "Sonoff B1" @ "Aussen" {
Channels:
Type string : reachable "Reachable" [ stateTopic="tele/tasmota/LWT" ]
Type switch : PowerSwitch "Power Switch" [ stateTopic="stat/tasmota/RESULT", commandTopic="cmnd/tasmota/POWER" ]
Type switch : PowerSwitchRes "Switch State" [ stateTopic="state/tasmota/RESULT", commandTopic="cmnd/tasmota/POWER" ]
Type string : LedColor "Color" [ stateTopic="stat/tasmota/RESULT", commandTopic="cmnd/tasmota/Color" ]
Type number : rssi "WiFi Signal Strength" [ stateTopic="tele/tasmota/STATE", transformationPattern="JSONPATH:$.Wifi.RSSI"]
}
Item
Code: Alles auswählen
Switch Lamp_Power "Lamp General On/Off" (Lights) {channel="mqtt:topic:mosquitto:sonoffb1:PowerSwitch"}
String Lamp_ColorRGBCWString "Color RGBCW hex [0x%s]" <light> (Lights) {channel="mqtt:topic:mosquitto:sonoffb1:LedColor"}
Color Lamp_ColorHSB "Color HSB" <light> (Lights)
Dimmer Lamp_CWDimmer "Dimmer Cold White" <light> (Lights)
Dimmer Lamp_WWDimmer "Dimmer Warm White" <light> (Lights)
Rules:
Code: Alles auswählen
rule "RGB Lampe Farbe"
when
Item Lamp_ColorHSB received command
then
var r = ((Lamp_ColorHSB.state as HSBType).getRed * 255 / 100).intValue
var g = ((Lamp_ColorHSB.state as HSBType).getGreen * 255 / 100).intValue
var b = ((Lamp_ColorHSB.state as HSBType).getBlue * 255 / 100).intValue
var ww = 0
var cw = 0
var rgbw = String.format("%02x%02x%02x%02x%02x", r, g, b, cw, ww)
Lamp_ColorRGBCWString.sendCommand(rgbw)
end
rule "RGB Lampe Warmwhite"
when
Item Lamp_WWDimmer received command
then
var r = 0
var g = 0
var b = 0
var ww = ((Lamp_WWDimmer.state as Number) * 255 / 100).intValue
var cw = 0
var rgbw = String.format("%02x%02x%02x%02x%02x", r, g, b, cw, ww)
Lamp_ColorRGBCWString.sendCommand(rgbw)
end
rule "RGB Lampe Coldwhite"
when
Item Lamp_CWDimmer received command
then
var r = 0
var g = 0
var b = 0
var cw = ((Lamp_CWDimmer.state as Number) * 255 / 100).intValue
var ww = 0
var rgbw = String.format("%02x%02x%02x%02x%02x", r, g, b, cw, ww)
Lamp_ColorRGBCWString.sendCommand(rgbw)
end
Sitemap:
Code: Alles auswählen
Colorpicker item=Lamp_ColorHSB label="LED 1 Farbe" icon="colorpicker"
Default item=Lamp_WWDimmer
Default item=Lamp_CWDimmer
Re: RGB Lampe E27 Tasmota mit RGBWW
Verfasst: 28. Mai 2020 16:59
von StephanR
Hallo b-tronic, hallo Seppy,
an beide Danke für die Hinweise hier, sie haben bereits einiges geholfen.
Ich nutze z. Z. die aktuellste Version von OpenHab2 und versuche eine mit "Tasmota 8.1.0.2 by Theo Arends"
geflaste SB50 BULB E27 LED Birne zu integrieren.
Kann mir jemand von Euch bitte mitteilen, ob bei Euch das Gleiche Verhalten auf einer Sitemap auftritt,
wenn der Colorpicker zum Einsatz kommt?
Mein Problem ist, dass die Farbe der Lampe über das "colorwheel" ausgewählt wird.
Via MQTT Client kann ich feststellen, dass korrekte Werte ermittelt / verschickt werden.
Nun nach Auswahl der Farbe (Farbkreis wurde verschoben!) klicke ich auf "OK" - in der Hoffnung OpenHab2 speichert den gewählten Farbwert für dieses Item. Wenn ich nun den Colorpicker erneut aufrufe, steht der Farbkreis in der Mitte und nicht dort, wo der Farbkreis stand bevor auf "OK" geklickt wurde. Ebenso der Wert für Farbsättigung wandert immer in die Mitte zurück.
Ist dies bei Euch ebenso?
Danke für potentielle Hilfe von StephanR
Re: RGB Lampe E27 Tasmota mit RGBWW
Verfasst: 28. Mai 2020 17:28
von StephanR
Hallo, das Problem hat sich erledigt.
Die Ursache ist schlicht und einfach:
warte bis OpenHab2 dies Daten nach einem "OK" gespeichert hat und dann schau nach, ob dieses Phänomen noch existiert.
Bei genug Warten (15 Sekunde!?) und dann erneutes Aufrufen vom "colorwheel" steht der Farbkreis und die Farbsättigung an richtiger Stelle.