Last Updated or created 2022-11-17
Getting 433Mhz dimmers working under HA is a pain in the *ss.
After moving my Rfxcom from domoticz to HA, there was still no good way to add dimmers.
I’ve tried adding switches and migrating them to lights, but it didn’t work.
So i took another approach.
Domoticz has a good 433 to mqtt plugin. So i used NodeRed to talk to HA and Domoticz via MQTT.
Domoticz
MQTT gateway setup
Home Assistant
/config/configuration.yaml
light:
- platform: mqtt
name: "KitchenOutside"
payload_on: "99"
payload_off: "0"
unique_id: "KitchenOutside"
brightness_scale: "99"
brightness_state_topic: ha433/kitchenoutside/brightcontrol
brightness_command_topic: ha433/kitchenoutside/brightcontrol
state_topic: ha433/kitchenoutside/brightcontrol
command_topic: ha433/kitchenoutside/control
optimistic: false
on_command_type: brightness
- platform: mqtt
name: "Living5Spots"
payload_on: "30"
payload_off: "0"
unique_id: "Living5Spots"
brightness_scale: "30"
brightness_state_topic: ha433/Living5Spots/brightcontrol
brightness_command_topic: ha433/Living5Spots/brightcontrol
state_topic: ha433/Living5Spots/brightcontrol
command_topic: ha433/Living5Spots/control
optimistic: false
on_command_type: brightness
Node Red
Flow
Node-RED Deploy
Search flows
Node
"d4aab6722750908c"
Type function
show more
Export nodes
Export
[
{
"id": "31dba0859e04acb4",
"type": "mqtt in",
"z": "a49c5bcd66c12a46",
"name": "",
"topic": "ha433/kitchenoutside/brightcontrol",
"qos": "2",
"datatype": "auto",
"broker": "8c74c5f6.9a7a48",
"nl": false,
"rap": true,
"rh": 0,
"inputs": 0,
"x": 330,
"y": 160,
"wires": [
[
"e2501f2b6e2ab43d"
]
]
},
{
"id": "e2501f2b6e2ab43d",
"type": "function",
"z": "a49c5bcd66c12a46",
"name": "Dimmer function",
"func": "var idx = 9735;\nvar bright = msg.payload;\nmsg.payload = {};\nmsg.payload = {\"command\": \"switchlight\", \"idx\": idx, \"switchcmd\": \"Set Level\", \"level\": bright};\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 690,
"y": 160,
"wires": [
[
"5f0314b0950d24c0"
]
]
},
{
"id": "5f0314b0950d24c0",
"type": "mqtt out",
"z": "a49c5bcd66c12a46",
"name": "",
"topic": "domoticz2/in",
"qos": "",
"retain": "",
"respTopic": "",
"contentType": "",
"userProps": "",
"correl": "",
"expiry": "",
"broker": "8c74c5f6.9a7a48",
"x": 970,
"y": 160,
"wires": []
},
{
"id": "95eb4d0ed97fdefb",
"type": "mqtt in",
"z": "a49c5bcd66c12a46",
"name": "",
"topic": "ha433/kitchenoutside/control",
"qos": "2",
"datatype": "auto",
"broker": "8c74c5f6.9a7a48",
"nl": false,
"rap": true,
"rh": 0,
"inputs": 0,
"x": 320,
"y": 220,
"wires": [
[
"d4aab6722750908c"
]
]
},
{
"id": "d4aab6722750908c",
"type": "function",
"z": "a49c5bcd66c12a46",
"name": "Off function",
"func": "var idx = 9735;\nvar bright = 0;\nmsg.payload = {};\nmsg.payload = {\"command\": \"switchlight\", \"idx\": idx, \"switchcmd\": \"Set Level\", \"level\": bright};\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 670,
"y": 220,
"wires": [
[
"5f0314b0950d24c0"
]
]
},
{
"id": "8c74c5f6.9a7a48",
"type": "mqtt-broker",
"name": "mqttserver",
"broker": "mqttserver",
"port": "1883",
"clientid": "",
"usetls": false,
"compatmode": true,
"keepalive": "15",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "",
"closeTopic": "",
"closePayload": "",
"willTopic": "",
"willQos": "0",
"willPayload": ""
}
]


So …. this works, and i have now a generic mqtt “router”
Update: Below works now






