Jetzt dachte ich schon ihr hättet mich auf die Lösung gestoßen weil ich die Maske fürs Bekanntgeben eigener States anpassen müsste. Das hilft aber leider auch nicht 😢 Ich habe da jetzt alles Mögliche versucht, sogar testweise mal nur * ! Hilft aber auch nicht. Außerdem sieht die Debugausgabe im ioBroker-Log IMO gut aus:
mqtt-0 2016-04-08 00:19:57 debug Send to client [GrillDuino01] "GrillDuino01/RESET": 1
mqtt-0 2016-04-08 00:19:57 debug onStateChange mqtt.0.GrillDuino01.RESET: {"val":"1","ack":false,"ts":1460067597,"q":0,"from":"system.adapter.admin.0","lc":1460067597}
mqtt-0 2016-04-08 00:19:57 debug stateChange mqtt.0.GrillDuino01.RESET: {"val":"1","ack":false,"ts":1460067597,"q":0,"from":"system.adapter.admin.0","lc":1460067597}
inMem 2016-04-08 00:19:57 debug message mqtt* mqtt.0.GrillDuino01.RESET val=1, ack=false, ts=1460067597, q=0, from=system.adapter.admin.0, lc=1460067597
mqtt-0 2016-04-08 00:19:57 debug stateChange mqtt.0.GrillDuino01.Licht: {"val":1023,"ack":true,"ts":1460067597,"q":0,"from":"system.adapter.mqtt.0","lc":1460067224}
inMem 2016-04-08 00:19:57 debug message mqtt* mqtt.0.GrillDuino01.Licht val=1023, ack=true, ts=1460067597, q=0, from=system.adapter.mqtt.0, lc=1460067224
mqtt-0 2016-04-08 00:19:57 debug Server received "GrillDuino01/Licht" (number): 1023
Es könnte also schon sein, dass der FEhler im Arduino-Sketch liegt. DAbei ist mir ja erstmal völlig egal ob dann auch wirklich ein Hardreset ausgelöst würde. Aber es müsste ja im Seriellen Monitor ein Eintrag "Empfangen: topic" erscheinen. Da tut sich aber schon nix. Vielleicht wird die Callback-Funktion des MQTT-Clients gar nicht ausgeführt? Ich habe aber k.A. wie ich das sonst noch testen könnte…?
EDIT: Ich hab's dank hartnäckiger Googelei herausgefunden 😄 In der Loop-Routine des Arduino-Sketchs hatte die folgende Zeile gefehlt:
mqttClient.loop();
Damit werden jetzt die "Subscribten" Topics abgefragt und ich kann meinen Arduino auch von ioBroker aus ansteuern. *juhuuu
Danke und Gruß
Thilo