[Gelöst]Zigbee2MQTT MQTT2_DEVICE rgb reading falscher Inhalt

Begonnen von jungeradleresw, 21 Juni 2024, 20:43:43

Vorheriges Thema - Nächstes Thema

jungeradleresw

Ein Herzliches hallo in die Runde.

Ich möchte mein Zigbee System umstellen von Conbee2 und HUEBridge auf Zigbee2mqtt mit dem SLZB-06 coordinator.

Der MQTT-Server ist der FHEM Integrierte, das Ganze als Testumgebung aufgebaut.

Die RGB Lampe habe ich soweit am laufen An,Aus, Helligkeit und Farbtemperatur funktionieren.

Nur das mit der Farbe funktioniert nicht so wie ich das gerne hätte.

Wenn ich über das Dashboard von Zigbee2MQTT eine Farbe auswähle ändern sich im FHEM nur die Readings color_x und color_y.
Das Reading rgb ändert sich nicht. Im Widget steht FFFFFF

So wie ich über das FHEM-Web Widget eine andere Farbe auswähle, ändert sich das Reading rgb und auch die XY-Werte in die ausgewählte Farbe.
Es wird aber ein set rgb vorgesetzt (siehe Code). Das Widget behält die ausgewählte Farbe solange bis ich im Browser ein refresh mache,
danach steht wieder FFFFFF.

Ich bin mit meinem Latein am Ende.



Internals:
   CID        zigbee_Flugzeuglampe
   DEF        zigbee_Flugzeuglampe
   FUUID      6671d4b7-f33f-63ab-053d-1d8b9274247a238f
   IODev      MQTT2Server
   LASTInputDev MQTT2Server
   MQTT2Server_CONN MQTT2Server_192.168.123.137_33086
   MQTT2Server_MSGCNT 240
   MQTT2Server_TIME 2024-06-21 20:08:40
   MSGCNT     240
   NAME       MQTT2_zigbee_Flugzeuglampe1
   NR         50
   STATE      on
   TYPE       MQTT2_DEVICE
   eventCount 421
   JSONMAP:
     color_temp ct
   OLDREADINGS:
   READINGS:
     2024-06-19 12:38:21   IODev           MQTT2Server
     2024-06-19 12:43:13   attrTemplateVersion 20240108
     2024-06-21 20:08:40   brightness      65
     2024-06-21 20:08:40   color_mode      xy
     2024-06-21 20:08:40   color_x         0.1929
     2024-06-21 20:08:40   color_y         0.1174
     2024-06-21 20:08:40   ct              360
     2024-06-21 20:08:40   linkquality     196
     2024-06-21 20:08:40   rgb             set rgb 6b61ff
     2024-06-21 20:08:40   state           on
Attributes:
   comment    The specified ct and brightness values in on and warm etc. commands ��can be adjusted at any time via the setList attribute
   devStateIcon {zigbee2mqtt_devStateIcon255($name)}
   devicetopic zigbee2mqtt/Flugzeuglampe
   getList    power_on_behavior:noArg power_on_behavior $DEVICETOPIC/get {"power_on_behavior": ""}
   icon       telegram
   jsonMap    color_temp:ct
   model      zigbee2mqtt_light_rgbcct_rgb
   readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP); $ret->{state}=lc($ret->{state}) if defined $ret->{state}; return $ret }
   room       MQTT2_DEVICE
   setList    on:noArg $DEVICETOPIC/set { "state":"ON"}
  off:noArg $DEVICETOPIC/set {"state":"OFF"}
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":$EVTPART1}
  ct:colorpicker,CT,154,2,500 $DEVICETOPIC/set {"state":"on","color_temp":$EVTPART1}
  warm:noArg $DEVICETOPIC/set {"brightness": 1-254 , "color_temp": 320}
  white:noArg $DEVICETOPIC/set {"brightness": 1-254, "color_temp": 250}
  rgb:colorpicker,RGB {"$DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}
  power_on_behavior:on,off,toggle,previous $DEVICETOPIC/set {"power_on_behavior": "$EVTPART1"}
   setStateList on off
   stateFormat state
   userReadings rgb color_y.*{Color::xyY2hex(ReadingsVal($name,'color_x',0),ReadingsVal($name,'color_y',0))}
   webCmd     toggle:on:off:brightness:ct:rgb

Mit freundlichen Grüßen und Dank im vorraus
Ingo

TomLee

Hallo,

kurz, ohne mich mit der Thematik genau auseinandergesetzt zu haben. In dem userreadings fehlt, warum auch immer, ein Doppelpunkt nach dem rgb. Evtl./wsl. ist das schon die Ursache ?

jungeradleresw

Hallo,

auch der Doppelpunkt führt nicht zu dem gewünschten Ergebnis.

Es hat sich nichts geändert.

TomLee

Moin,

zeig bitte mal deine Änderung. Hast du das Leerzeichen zw. rgb color_y.* durch den Doppelpunkt ersetzt oder ergänzt ?
Nach dem trigger color_y.* und dem darauffolgenden Perl fehlt auch ein Leerzeichen.

jungeradleresw

#4
Danke für die Hilfe.



Internals:
   CID        zigbee_Flugzeuglampe
   DEF        zigbee_Flugzeuglampe
   FUUID      6671d4b7-f33f-63ab-053d-1d8b9274247a238f
   IODev      MQTT2Server
   LASTInputDev MQTT2Server
   MQTT2Server_CONN MQTT2Server_192.168.123.137_33086
   MQTT2Server_MSGCNT 263
   MQTT2Server_TIME 2024-06-22 11:39:25
   MSGCNT     263
   NAME       MQTT2_zigbee_Flugzeuglampe1
   NR         50
   STATE      on
   TYPE       MQTT2_DEVICE
   eventCount 462
   JSONMAP:
     color_temp ct
   OLDREADINGS:
   READINGS:
     2024-06-19 12:38:21   IODev           MQTT2Server
     2024-06-19 12:43:13   attrTemplateVersion 20240108
     2024-06-22 11:39:25   brightness      254
     2024-06-22 11:39:25   color_mode      xy
     2024-06-22 11:39:25   color_x         0.2239
     2024-06-22 11:39:25   color_y         0.6038
     2024-06-22 11:39:25   ct              153
     2024-06-22 11:39:25   linkquality     185
     2024-06-22 11:39:25   rgb             set rgb 66ff66
     2024-06-22 11:39:25   state           on
Attributes:
   comment    The specified ct and brightness values in on and warm etc. commands ��can be adjusted at any time via the setList attribute
   devStateIcon {zigbee2mqtt_devStateIcon255($name)}
   devicetopic zigbee2mqtt/Flugzeuglampe
   getList    power_on_behavior:noArg power_on_behavior $DEVICETOPIC/get {"power_on_behavior": ""}
   icon       telegram
   jsonMap    color_temp:ct
   model      zigbee2mqtt_light_rgbcct_rgb
   readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP); $ret->{state}=lc($ret->{state}) if defined $ret->{state}; return $ret }
   room       MQTT2_DEVICE
   setList    on:noArg $DEVICETOPIC/set { "state":"ON"}
  off:noArg $DEVICETOPIC/set {"state":"OFF"}
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":$EVTPART1}
  ct:colorpicker,CT,154,2,500 $DEVICETOPIC/set {"state":"on","color_temp":$EVTPART1}
  warm:noArg $DEVICETOPIC/set {"brightness": 1-254 , "color_temp": 320}
  white:noArg $DEVICETOPIC/set {"brightness": 1-254, "color_temp": 250}
  rgb:colorpicker,RGB {"$DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}
  power_on_behavior:on,off,toggle,previous $DEVICETOPIC/set {"power_on_behavior": "$EVTPART1"}
   setStateList on off
   stateFormat state
   userReadings rgb:color_y.*{Color::xyY2hex(ReadingsVal($name,'color_x',0),ReadingsVal($name,'color_y',0))}
   webCmd     toggle:on:off:brightness:ct:rgb

mit Leerzeichen nach color_y.*

Internals:
   CID        zigbee_Flugzeuglampe
   DEF        zigbee_Flugzeuglampe
   FUUID      6671d4b7-f33f-63ab-053d-1d8b9274247a238f
   IODev      MQTT2Server
   LASTInputDev MQTT2Server
   MQTT2Server_CONN MQTT2Server_192.168.123.137_33086
   MQTT2Server_MSGCNT 265
   MQTT2Server_TIME 2024-06-22 11:49:34
   MSGCNT     265
   NAME       MQTT2_zigbee_Flugzeuglampe1
   NR         50
   STATE      on
   TYPE       MQTT2_DEVICE
   eventCount 466
   JSONMAP:
     color_temp ct
   OLDREADINGS:
   READINGS:
     2024-06-19 12:38:21   IODev           MQTT2Server
     2024-06-19 12:43:13   attrTemplateVersion 20240108
     2024-06-22 11:49:34   brightness      254
     2024-06-22 11:49:34   color_mode      xy
     2024-06-22 11:49:34   color_x         0.2159
     2024-06-22 11:49:34   color_y         0.626
     2024-06-22 11:49:34   ct              153
     2024-06-22 11:49:34   linkquality     185
     2024-06-22 11:49:34   rgb             Error evaluating MQTT2_zigbee_Flugzeuglampe1 userReading rgb: Undefined subroutine &Color::xyY2hex called at (eval 1879) line 1.

     2024-06-22 11:49:34   state           on
Attributes:
   comment    The specified ct and brightness values in on and warm etc. commands ��can be adjusted at any time via the setList attribute
   devStateIcon {zigbee2mqtt_devStateIcon255($name)}
   devicetopic zigbee2mqtt/Flugzeuglampe
   getList    power_on_behavior:noArg power_on_behavior $DEVICETOPIC/get {"power_on_behavior": ""}
   icon       telegram
   jsonMap    color_temp:ct
   model      zigbee2mqtt_light_rgbcct_rgb
   readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP); $ret->{state}=lc($ret->{state}) if defined $ret->{state}; return $ret }
   room       MQTT2_DEVICE
   setList    on:noArg $DEVICETOPIC/set { "state":"ON"}
  off:noArg $DEVICETOPIC/set {"state":"OFF"}
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":$EVTPART1}
  ct:colorpicker,CT,154,2,500 $DEVICETOPIC/set {"state":"on","color_temp":$EVTPART1}
  warm:noArg $DEVICETOPIC/set {"brightness": 1-254 , "color_temp": 320}
  white:noArg $DEVICETOPIC/set {"brightness": 1-254, "color_temp": 250}
  rgb:colorpicker,RGB {"$DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}
  power_on_behavior:on,off,toggle,previous $DEVICETOPIC/set {"power_on_behavior": "$EVTPART1"}
   setStateList on off
   stateFormat state
   userReadings rgb:color_y.* {Color::xyY2hex(ReadingsVal($name,'color_x',0),ReadingsVal($name,'color_y',0))}
   webCmd     toggle:on:off:brightness:ct:rgb

TomLee

Ergänz mal noch das Leerzeichen zw. trigger und dem Ausführungsteil:

userReadings rgb:color_y.* {Color::xyY2rgb(ReadingsVal($name,'color_x',0),ReadingsVal($name,'color_y',0))}
Was hast du denn da rumgespielt, das userreadings wird dich so nicht vom Template erstellt ?

jungeradleresw

#6
ich habe viel ausprobiert weil bei dem Original Template userreading eine Fehlermeldung erscheint.

Internals:
   CID        zigbee_Flugzeuglampe
   DEF        zigbee_Flugzeuglampe
   FUUID      6671d4b7-f33f-63ab-053d-1d8b9274247a238f
   IODev      MQTT2Server
   LASTInputDev MQTT2Server
   MQTT2Server_CONN MQTT2Server_192.168.123.137_52178
   MQTT2Server_MSGCNT 10
   MQTT2Server_TIME 2024-06-22 12:01:33
   MSGCNT     10
   NAME       MQTT2_zigbee_Flugzeuglampe1
   NR         50
   STATE      on
   TYPE       MQTT2_DEVICE
   eventCount 16
   JSONMAP:
     color_temp ct
   READINGS:
     2024-06-22 11:56:22   IODev           MQTT2Server
     2024-06-19 12:43:13   attrTemplateVersion 20240108
     2024-06-22 12:01:33   brightness      3
     2024-06-22 12:01:33   color_mode      xy
     2024-06-22 12:01:33   color_x         0.2198
     2024-06-22 12:01:33   color_y         0.615
     2024-06-22 12:01:33   ct              153
     2024-06-22 12:01:33   linkquality     189
     2024-06-22 12:01:33   rgb             Error evaluating MQTT2_zigbee_Flugzeuglampe1 userReading rgb: Undefined subroutine &Color::xyY2rgb called at (eval 132) line 1.

     2024-06-22 12:01:33   state           on
Attributes:
   comment    The specified ct and brightness values in on and warm etc. commands ��can be adjusted at any time via the setList attribute
   devStateIcon {zigbee2mqtt_devStateIcon255($name)}
   devicetopic zigbee2mqtt/Flugzeuglampe
   getList    power_on_behavior:noArg power_on_behavior $DEVICETOPIC/get {"power_on_behavior": ""}
   icon       telegram
   jsonMap    color_temp:ct
   model      zigbee2mqtt_light_rgbcct_rgb
   readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP); $ret->{state}=lc($ret->{state}) if defined $ret->{state}; return $ret }
   room       MQTT2_DEVICE
   setList    on:noArg $DEVICETOPIC/set { "state":"ON"}
  off:noArg $DEVICETOPIC/set {"state":"OFF"}
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":$EVTPART1}
  ct:colorpicker,CT,154,2,500 $DEVICETOPIC/set {"state":"on","color_temp":$EVTPART1}
  warm:noArg $DEVICETOPIC/set {"brightness": 1-254 , "color_temp": 320}
  white:noArg $DEVICETOPIC/set {"brightness": 1-254, "color_temp": 250}
  rgb:colorpicker,RGB {"$DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}
  power_on_behavior:on,off,toggle,previous $DEVICETOPIC/set {"power_on_behavior": "$EVTPART1"}
   setStateList on off
   stateFormat state
   userReadings rgb:color_y.* {Color::xyY2rgb(ReadingsVal($name,'color_x',0),ReadingsVal($name,'color_y',0))}
   webCmd     toggle:on:off:brightness:ct:rgb



Ich habe jetzt beim userreading das kleingeschriebene rgb durch Großbuchstaben ersetzt (RGB):

Internals:
   CID        zigbee_Flugzeuglampe
   DEF        zigbee_Flugzeuglampe
   FUUID      6671d4b7-f33f-63ab-053d-1d8b9274247a238f
   IODev      MQTT2Server
   LASTInputDev MQTT2Server
   MQTT2Server_CONN MQTT2Server_192.168.123.137_52178
   MQTT2Server_MSGCNT 21
   MQTT2Server_TIME 2024-06-22 12:55:52
   MSGCNT     21
   NAME       MQTT2_zigbee_Flugzeuglampe1
   NR         50
   STATE      on
   TYPE       MQTT2_DEVICE
   eventCount 38
   JSONMAP:
     color_temp ct
   OLDREADINGS:
   READINGS:
     2024-06-22 11:56:22   IODev           MQTT2Server
     2024-06-22 12:55:52   RGB             Error evaluating MQTT2_zigbee_Flugzeuglampe1 userReading RGB: Undefined subroutine &Color::xyY2hex called at (eval 238) line 1.

     2024-06-19 12:43:13   attrTemplateVersion 20240108
     2024-06-22 12:55:52   brightness      3
     2024-06-22 12:55:52   color_mode      xy
     2024-06-22 12:55:52   color_x         0.1903
     2024-06-22 12:55:52   color_y         0.1067
     2024-06-22 12:55:52   ct              441
     2024-06-22 12:55:52   linkquality     200
     2024-06-22 12:55:52   rgb             set rgb 6857ff
     2024-06-22 12:55:52   state           on
Attributes:
   comment    The specified ct and brightness values in on and warm etc. commands ��can be adjusted at any time via the setList attribute
   devStateIcon {zigbee2mqtt_devStateIcon255($name)}
   devicetopic zigbee2mqtt/Flugzeuglampe
   getList    power_on_behavior:noArg power_on_behavior $DEVICETOPIC/get {"power_on_behavior": ""}
   icon       telegram
   jsonMap    color_temp:ct
   model      zigbee2mqtt_light_rgbcct_rgb
   readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP); $ret->{state}=lc($ret->{state}) if defined $ret->{state}; return $ret }
   room       MQTT2_DEVICE
   setList    on:noArg $DEVICETOPIC/set { "state":"ON"}
  off:noArg $DEVICETOPIC/set {"state":"OFF"}
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":$EVTPART1}
  ct:colorpicker,CT,154,2,500 $DEVICETOPIC/set {"state":"on","color_temp":$EVTPART1}
  warm:noArg $DEVICETOPIC/set {"brightness": 1-254 , "color_temp": 320}
  white:noArg $DEVICETOPIC/set {"brightness": 1-254, "color_temp": 250}
  rgb:colorpicker,RGB {"$DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}
  power_on_behavior:on,off,toggle,previous $DEVICETOPIC/set {"power_on_behavior": "$EVTPART1"}
   setStateList on off
   stateFormat state
   userReadings RGB:color_y.* {Color::xyY2hex(ReadingsVal($name,'color_x',0),ReadingsVal($name,'color_y',0))}
   webCmd     toggle:on:off:brightness:ct:rgb



TomLee

#7
Sry, war auf dem Sprung zum einkaufen.
xyY2rgb ist falsch gewesen, hatte ich beim kopieren nicht gemerkt.

So wird es mit dem Template angelegt und funzt bei mir:

defmod MQTT2_zigbee_rgbw_bulb_flur_privat MQTT2_DEVICE zigbee_0x00158d0003e5ee0c
attr MQTT2_zigbee_rgbw_bulb_flur_privat userattr dekotemp dekotemp_map structexclude
attr MQTT2_zigbee_rgbw_bulb_flur_privat IODev MQTT2_Server
attr MQTT2_zigbee_rgbw_bulb_flur_privat alexaName aprikose
attr MQTT2_zigbee_rgbw_bulb_flur_privat comment The specified ct and brightness values in on and warm etc. commands ��can be adjusted at any time via the setList attribute
attr MQTT2_zigbee_rgbw_bulb_flur_privat devStateIcon {Color::devStateIcon($name,'rgb','rgb','brightness','state')}
attr MQTT2_zigbee_rgbw_bulb_flur_privat devicetopic zigbee2mqtt/0x00158d0003e5ee0c
attr MQTT2_zigbee_rgbw_bulb_flur_privat getList power_on_behavior:noArg power_on_behavior $DEVICETOPIC/get {"power_on_behavior": ""}
attr MQTT2_zigbee_rgbw_bulb_flur_privat homebridgeMapping Brightness=brightness::brightness,maxValue=100,max=100,factor=0.39371,delay=true
attr MQTT2_zigbee_rgbw_bulb_flur_privat icon hue_filled_white_and_color_e27_b22
attr MQTT2_zigbee_rgbw_bulb_flur_privat imageLink /fhem/deviceimages/mqtt2/404000-404005-404012.jpg
attr MQTT2_zigbee_rgbw_bulb_flur_privat jsonMap color_temp:ct
attr MQTT2_zigbee_rgbw_bulb_flur_privat model zigbee2mqtt_light_rgbcct_rgb
attr MQTT2_zigbee_rgbw_bulb_flur_privat readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP);; $ret->{state}=lc($ret->{state}) if defined $ret->{state};; return $ret }\
zigbee2mqtt/0x00158d0003e5ee0c/availability:.* availability
attr MQTT2_zigbee_rgbw_bulb_flur_privat room Deko,MQTT2_DEVICE,Privat->EG->Flur
attr MQTT2_zigbee_rgbw_bulb_flur_privat setList on:noArg $DEVICETOPIC/set {"brightness": 15 , "state":"ON"}\
  off:noArg $DEVICETOPIC/set {"state":"OFF"}\
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":"$EVTPART1"}\
  ct:colorpicker,CT,154,2,500 $DEVICETOPIC/set {"color_temp":"$EVTPART1"}\
  warm:noArg $DEVICETOPIC/set {"brightness": 120 , "color_temp": 320}\
  white:noArg $DEVICETOPIC/set {"brightness": 120, "color_temp": 250}\
  rgb:colorpicker,RGB {"$DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}\
  power_on_behavior:on,off,toggle,previous $DEVICETOPIC/set {"power_on_behavior": "$EVTPART1"}\
  hue:colorpicker,HUE,0,1,360 {my $hex=Color::hsv2hex($EVTPART1,'100',ReadingsNum($NAME,'brightness',0));;return qq($DEVICETOPIC/set {"color":{"hex":"#$hex"}}) }
attr MQTT2_zigbee_rgbw_bulb_flur_privat setStateList on off
attr MQTT2_zigbee_rgbw_bulb_flur_privat stateFormat {lc ReadingsVal($name,"state",0)}
attr MQTT2_zigbee_rgbw_bulb_flur_privat userReadings rgb:color_y.* {Color::xyY2hex(ReadingsNum($name,'color_x',0),ReadingsNum($name,'color_y',0),ReadingsNum($name,'brightness',254))}
attr MQTT2_zigbee_rgbw_bulb_flur_privat verbose 2
attr MQTT2_zigbee_rgbw_bulb_flur_privat webCmd rgb:brightness:ct
attr MQTT2_zigbee_rgbw_bulb_flur_privat webCmdLabel RGB:Brightness\
:Colortemp

setstate MQTT2_zigbee_rgbw_bulb_flur_privat rgb
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-21 17:20:43 IODev MQTT2_Server
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2023-11-25 17:48:00 associatedWith MQTT2_zigbee_bridge
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-21 17:28:34 availability online
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-21 22:11:38 brightness 15
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 13:37:11 color_mode xy
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 13:37:11 color_x 0.1379
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 13:37:11 color_y 0.0863
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 13:37:11 ct 386
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 13:37:11 hue set hue 227
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 13:37:11 linkquality 223
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-04-21 12:58:05 power_on_behavior off
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 13:37:11 rgb 0A1BF9
setstate MQTT2_zigbee_rgbw_bulb_flur_privat 2024-06-22 10:56:22 state rgb

jungeradleresw

Kein Problem, ich war auch gerade mit dem Hund draußen.

So ich habe meine Lampe komplett gelöscht und deine angepasset.

2 Attribute habe ich gelöscht (alexaName und homebridgeMapping)

Es ist aber die selbe Reaktion.

Internals:
   CFGFN     
   CID        zigbee_Flugzeuglampe
   DEF        zigbee_Flugzeuglampe
   FUUID      6676c8e9-f33f-63ab-c28d-71d19272ca5728f3
   IODev      MQTT2Server
   LASTInputDev MQTT2Server
   MQTT2Server_CONN MQTT2Server_192.168.123.137_52178
   MQTT2Server_MSGCNT 3
   MQTT2Server_TIME 2024-06-22 14:52:59
   MSGCNT     3
   NAME       MQTT2_zigbee_Flugzeuglampe1
   NR         51
   STATE      on
   TYPE       MQTT2_DEVICE
   eventCount 6
   JSONMAP:
     color_temp ct
   READINGS:
     2024-06-22 14:52:31   IODev           MQTT2Server
     2024-06-22 14:52:59   brightness      3
     2024-06-22 14:52:59   color_mode      xy
     2024-06-22 14:52:59   color_x         0.2293
     2024-06-22 14:52:59   color_y         0.2167
     2024-06-22 14:52:59   ct              153
     2024-06-22 14:52:59   linkquality     200
     2024-06-22 14:52:59   rgb             Error evaluating MQTT2_zigbee_Flugzeuglampe1 userReading rgb: Undefined subroutine &Color::xyY2hex called at (eval 311) line 1.

     2024-06-22 14:52:59   state           on
Attributes:
   IODev      MQTT2Server
   comment    The specified ct and brightness values in on and warm etc. commands ��can be adjusted at any time via the setList attribute
   devStateIcon {Color::devStateIcon($name,'rgb','rgb','brightness','state')}
   devicetopic zigbee2mqtt/Flugzeuglampe
   getList    power_on_behavior:noArg power_on_behavior $DEVICETOPIC/get {"power_on_behavior": ""}
   icon       hue_filled_white_and_color_e27_b22
   imageLink  /fhem/deviceimages/mqtt2/404000-404005-404012.jpg
   jsonMap    color_temp:ct
   model      zigbee2mqtt_light_rgbcct_rgb
   readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT,'',$JSONMAP); $ret->{state}=lc($ret->{state}) if defined $ret->{state}; return $ret }
zigbee2mqtt/Flugzeuglampe/availability:.* availability
   room       Deko,MQTT2_DEVICE,Privat->EG->Flur
   setList    on:noArg $DEVICETOPIC/set {"brightness": 15 , "state":"ON"}
  off:noArg $DEVICETOPIC/set {"state":"OFF"}
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":"$EVTPART1"}
  ct:colorpicker,CT,154,2,500 $DEVICETOPIC/set {"color_temp":"$EVTPART1"}
  warm:noArg $DEVICETOPIC/set {"brightness": 120 , "color_temp": 320}
  white:noArg $DEVICETOPIC/set {"brightness": 120, "color_temp": 250}
  rgb:colorpicker,RGB {"$DEVICETOPIC/set ".zigbee2mqtt_RGB2JSON($EVTPART1)}
  power_on_behavior:on,off,toggle,previous $DEVICETOPIC/set {"power_on_behavior": "$EVTPART1"}
  hue:colorpicker,HUE,0,1,360 {my $hex=Color::hsv2hex($EVTPART1,'100',ReadingsNum($NAME,'brightness',0));return qq($DEVICETOPIC/set {"color":{"hex":"#$hex"}}) }
   setStateList on off
   stateFormat {lc ReadingsVal($name,"state",0)}
   userReadings rgb:color_y.* {Color::xyY2hex(ReadingsNum($name,'color_x',0),ReadingsNum($name,'color_y',0),ReadingsNum($name,'brightness',254))}
   userattr   dekotemp dekotemp_map structexclude
   verbose    2
   webCmd     rgb:brightness:ct
   webCmdLabel RGB:Brightness
:Colortemp

TomLee

Hab keine Erklärung dafür oder sehe deinen Fehler auch nicht, da muss wer was zu sagen der da tiefer drinsteckt.

Du konntest das Template anwenden, also hast Du auch ein annähernd aktuelles Fhem. In der Color.pm wurde die Funktion vor 5 Jahren ergänzt (das Template kam später), die sollte also auch vorhanden sein.
Evtl. prüfst Du das mal, warum auch immer die nicht vorhanden sein sollte.


jungeradleresw

Erstmal Danke für deine Hilfe.

Ich habe vorhin erst ein update gemacht.

TomLee

ZitatIch habe vorhin erst ein update gemacht.

Was steht denn im Logfile wenn Du oben in der Befehlszeile von FHEM folgendes eingibst:
"head -n 2 /opt/fhem/FHEM/Color.pm"

jungeradleresw

# $Id: Color.pm 20813 2019-12-22 18:42:10Z justme1968 $

TomLee

Hast Du FHEM nach dem update auch neu gestartet ?

jungeradleresw

#14
ja mit shutdown restart, ich habe eben noch ein update force durgeführt danach nochmal shutdown restart,

hat sich aber nichts geändert.

# $Id: Color.pm 20813 2019-12-22 18:42:10Z justme1968 $

TomLee

Die Color.pm Version passt schon, das ist die aktuelle.

Ich sehe die Ursache für die Undefined subroutine &Color::xyY2hex-Meldung nicht.

jungeradleresw

ich bin mit meinem Latein auch am Ende.

Trotzdem Danke für deine Hilfe.


jungeradleresw

Jo das war es.

Wer lesen kann ist klar im Vorteil.

Danke.