Hallo zusammen,
bin ich beschäftige mich schon seit Tagen damit einen RGB wert über MQTT zu übertragen. Der Hacken an der Sache, der RGB Conrtoller nimmt die Hexwerte nur an wenn eine Raute vorangeht.
Wahlweise kann ich die werte auch als RRR,GGG,BBB senden, da wird allerdings das Komma zum Problem.
define RGB_LED_Kueche MQTT_DEVICE
attr RGB_LED_Kueche IODev mqtt
attr RGB_LED_Kueche icon light_led_stripe_rgb
attr RGB_LED_Kueche publishSet 1 0 rgb_test/relay/0/set
attr RGB_LED_Kueche publishSet_RGB RGB rgb_test/rgb/set
attr RGB_LED_Kueche publishSet_Test RGB rgb_test/rgb/set #nur zum testen
attr RGB_LED_Kueche room Küche
attr RGB_LED_Kueche stateFormat state
attr RGB_LED_Kueche subscribeReading_RGB /rgb_test/rgb
attr RGB_LED_Kueche subscribeReading_Status /rgb_test/relay/0
attr RGB_LED_Kueche webCmd RGB:on:off
attr RGB_LED_Kueche widgetOverride RGB:colorpicker,RGB
Das ist mein MQTT Device mit Colorpicker.
die Raute wird wie ich gelesen habe grundsätzlich gefiltert.
mit dem Attribut eventMap habe ich zwar eine Raute in die Nachricht bekommen, aber nicht so wie ich es brauche.
Gibt es einen Weg da eventuell einen Inline Perl Code zu verwenden?
in der MQTT Nachricht muss als Message #FFFFFF stehen, von Fhem kommt zur Zeit nur FFFFFF.
Danke
Versuche mal mit der Version, die in hier (https://forum.fhem.de/index.php/topic,86270.0.html) verlinkt ist.
Bei mir überträgt set XXX Test #FFFFFE korrekt den Wert mit dem '#'-Zeichen.
EDIT: Das was du sagst geht von der Kommandozeile/ Fhem. Jetzt muss ich das nur noch dem RGB Wert des Colorpickers voranstellen
Habe die beiden Daten geladen un in den FHEM Orner kopiert/überschrieben, Fhem neu gestartet.
attr RGB_LED_Kueche publishSet_Test #00FF00 rgb_test/rgb/set
laut mosquitto kommt da nur
rgb_test/rgb/set 00FF00
Irgendwas, das ich nicht beachtet habe?
wie gesagt, funktioniert (s. Screenshot), zu beachten ist da eig. nichts.
Werde gleich mit genau Deinem Config versuchen.
geht auch.
Ich verstehe das Problem. Bei der Farbauswahl in der GUI wird # nicht mitübertragen. Das ist aber kein Problem mit MQTT, sondern die Eigenschaft von dem ColorPicker. Ob man den entsprechend einstellen kann, weiß ich leider nicht. Erstelle einen entsprechenden Thread im passendem Unterforum.
Danke vielmals.
Kann es sein, dass das Problem schon bei der der Eingabe für das publishSet anfängt?
denn wenn ich ohne den Colorpicker wie in meinem zweitem Beitrag manuell den Wert eintrage wird die Raute bereits da gefiltert.
Nein. Mit dem Attr kannst Du auch nichts übertragen. Dafür gibt es set Befehl. s. meine Screenshots.
MQTT verhält sich korrekt.
Eine mögliche Lösung wäre mit einem Dummy zu arbeiten, um den Wert entsprechend zu verändern (um die Raute zu erweitern) und dann mit MQTT_BRIDGE zu übertragen.
Gut, danke nochmals.
Dann können wir das hier schließen.
Ich frage mal in den anderen Unterforen nach,