To change the mode publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"fan_mode": VALUE} where VALUE can be: off, auto, 1, 2, 3, 4, 5, 6, 7, 8, 9.
Autodiscovery MQTT doesn't make a selector switch for the fan mode, so i made a dummy (idx 541). 0 = off, 10 = auto, 20 =1 till 9 = 100
From Domoticz in MQTT:
Code: Select all
{
"Battery" : 255,
"LastUpdate" : "2022-10-24 10:39:30",
"LevelActions" : "||||||||||",
"LevelNames" : "Uit|Auto|1|2|3|4|5|6|7|8|9",
"LevelOffHidden" : "false",
"RSSI" : 12,
"SelectorStyle" : "1",
"description" : "",
"dtype" : "Light/Switch",
"hwid" : "16",
"id" : "0001426D",
"idx" : 541,
"name" : "Luchtververser",
"nvalue" : 2,
"stype" : "Switch",
"svalue1" : "100",
"switchType" : "Selector",
"unit" : 1
}
I made a flow in Node-RED to translate Domoticz to MQTT
Code: Select all
[{"id":"1bec2846.4029b8","type":"tab","label":"Luchtververser","disabled":false,"info":""},{"id":"92af5d9e.d6b11","type":"mqtt in","z":"1bec2846.4029b8","name":"Domoticz Luchtververser","topic":"domoticz/out/541/","qos":"2","datatype":"auto","broker":"4d2ff189.666908","nl":false,"rap":false,"x":150,"y":200,"wires":[["a6e7acbe.f6401"]]},{"id":"a6e7acbe.f6401","type":"json","z":"1bec2846.4029b8","name":"","property":"payload","action":"","pretty":false,"x":370,"y":200,"wires":[["b6d70fc0.f6db5"]]},{"id":"cb50b45d.9a4e28","type":"mqtt out","z":"1bec2846.4029b8","name":"MQTT Lucht ververser","topic":"zigbee2mqtt/Luchtververser/set/","qos":"2","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"4d2ff189.666908","x":1060,"y":220,"wires":[]},{"id":"b6d70fc0.f6db5","type":"switch","z":"1bec2846.4029b8","name":"","property":"payload.svalue1","propertyType":"msg","rules":[{"t":"eq","v":"0","vt":"str"},{"t":"eq","v":"10","vt":"str"},{"t":"eq","v":"20","vt":"str"},{"t":"eq","v":"30","vt":"str"},{"t":"eq","v":"40","vt":"str"},{"t":"eq","v":"50","vt":"str"},{"t":"eq","v":"60","vt":"str"},{"t":"eq","v":"70","vt":"str"},{"t":"eq","v":"80","vt":"str"},{"t":"eq","v":"90","vt":"str"},{"t":"eq","v":"100","vt":"str"}],"checkall":"true","repair":false,"outputs":11,"x":530,"y":200,"wires":[["84ae7545.8ffa28"],["881d8691.c06168"],["19ce1141.d3d9ef"],["62faf9e6.ef52b8"],["5ff40353.feecbc"],["27c0f93.50b5306"],["76c5ca57.250ad4"],["dbddd75e.ec73d8"],["15badd72.2f72a3"],["b3344efa.f3137"],["a0d9040d.0eb0c8"]]},{"id":"881d8691.c06168","type":"function","z":"1bec2846.4029b8","name":"auto","func":"msg.payload = {\"fan_mode\": auto}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":60,"wires":[["cb50b45d.9a4e28"]]},{"id":"19ce1141.d3d9ef","type":"function","z":"1bec2846.4029b8","name":"1","func":"msg.payload = {\"fan_mode\": 1}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":100,"wires":[["cb50b45d.9a4e28"]]},{"id":"62faf9e6.ef52b8","type":"function","z":"1bec2846.4029b8","name":"2","func":"msg.payload = {\"fan_mode\": 2}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":140,"wires":[["cb50b45d.9a4e28"]]},{"id":"5ff40353.feecbc","type":"function","z":"1bec2846.4029b8","name":"3","func":"msg.payload = {\"fan_mode\": 3}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":180,"wires":[["cb50b45d.9a4e28"]]},{"id":"27c0f93.50b5306","type":"function","z":"1bec2846.4029b8","name":"4","func":"msg.payload = {\"fan_mode\": 4}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":220,"wires":[["cb50b45d.9a4e28"]]},{"id":"76c5ca57.250ad4","type":"function","z":"1bec2846.4029b8","name":"5","func":"msg.payload = {\"fan_mode\": 5}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":260,"wires":[["cb50b45d.9a4e28"]]},{"id":"dbddd75e.ec73d8","type":"function","z":"1bec2846.4029b8","name":"6","func":"msg.payload = {\"fan_mode\": 6}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":300,"wires":[["cb50b45d.9a4e28"]]},{"id":"15badd72.2f72a3","type":"function","z":"1bec2846.4029b8","name":"7","func":"msg.payload = {\"fan_mode\": 7}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":340,"wires":[["cb50b45d.9a4e28"]]},{"id":"b3344efa.f3137","type":"function","z":"1bec2846.4029b8","name":"8","func":"msg.payload = {\"fan_mode\": 8}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":380,"wires":[["cb50b45d.9a4e28"]]},{"id":"a0d9040d.0eb0c8","type":"function","z":"1bec2846.4029b8","name":"9","func":"msg.payload = {\"fan_mode\": 9}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":420,"wires":[["cb50b45d.9a4e28"]]},{"id":"8381b23d.4aaae","type":"comment","z":"1bec2846.4029b8","name":"","info":"","x":150,"y":60,"wires":[]},{"id":"84ae7545.8ffa28","type":"function","z":"1bec2846.4029b8","name":"off","func":"msg.payload = {\"fan_mode\": off}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":750,"y":20,"wires":[[]]},{"id":"4d2ff189.666908","type":"mqtt-broker","name":"192.168.2.4","broker":"192.168.2.4","port":"1883","clientid":"","usetls":false,"verifyservercert":true,"protocolVersion":"4","keepalive":"15","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","birthMsg":{},"closeTopic":"","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"sessionExpiry":""}]
Or is there a way to send a command from de Domoticz selector switch?