node-red-contrib-homematic
🏠 Integrate your Homematic devices with Node-RED
Features
node-red-contrib-homematic provides functions to control Homematic devices with Node-RED.
Node-RED - is a visual tool for wiring the Internet of Things (IoT) - read more @http://nodered.org
This node outputs a message to msg.payload containing "remote script calls" which can be send to the CCU using the HttpRequest node.
Communication
This node provides "remote script calls" which can be send using the HttpRequest node
How to use this Node?
Talk to Homematic with node-red-contrib-homematic:
Example shows how to change the level of a dimmer
Inject node ---- Homematic node ---- HttpRequest node ---- Debug node
Homematic node config
Configure your CCU
you can configure multiple endpoints
Configure your devices
you can configure multiple devices
your config ccu/devices will be saved..
Choose function, channel and attribute
You can also pass values into the node!
Just pass the input value as the msg.payload parameter and use the "{{msg.payload}}" syntax in the value field.
Configure HttpRequest node like this
The Vanilla Way
Talk to Homematic only with core nodes
Example shows how to change the level of a dimmer
Inject node ---- Function node ---- HttpRequest node ---- Debug node
Function node content
var script = "var d = dom.GetObject(\"BidCos-RF.LEQ0990753:1.LEVEL\");if (d){d.State(\"100\");}";
var headers = {};
headers["Content-Length"] = script.length;
headers["Content-Type"] = "application/x-www-form-urlencoded";
msg.headers = headers;
msg.method = "POST";
msg.url = "http://20.1.0.50/tclrega.exe";
msg.payload = script;
return msg;
Exported Flow
Find the exported flow example in "test" directory
XML-RPC API
Install
cd node-red/
npm install node-red-contrib-homematic
Docker Install
On the host machine
docker run \
--name nodered \
--restart=always \
-v /home/docker/node-red:/data \
-p 1880:1880 \
-d nodered/node-red-docker
Also on the host machine
cd /home/docker/node-red
npm install node-red-contrib-homematic
Something missing?
You can easily extend this module to fit your needs by editing the html file. feel free to create a pull request!
Code of Conduct
See the CODE
License
See the LICENSE file for license rights and limitations (MIT).