A Philips Hue Bridge emulator to control any kind of lights (or other things for that matter).
This is a work in progress!
Ref.: stackoverflow
sudo apt install libcap2-bin
sudo setcap cap_net_bind_service=+ep `readlink -f \`which node\``
Note 1: The Philips Hue app seems only to be able to connect to port 80.
Note 2: The above setcap
command does not survive a reboot.
To install - change to your Node-RED user directory.
cd ~/.node-red
npm install node-red-contrib-huebridge
...
...
...
Support colormode 'hs' (hue, saturation), 'xy' (CIE 1931 Chromacity) and 'ct' (color temperature).
...
Enables pairing.
topic
can be anything (i.e. the node does not use it).
payload
can be anything (i.e. the node does not use it).
....
Emulate a Hue Tap with it's four buttons.
topic
can be anything (i.e. the node does not use it).
payload
must be a number.
Valid payload numbers: 1, 2, 3, 4
.
Not implemented.
Not implemented.
Not implemented.
Not implemented.
Not implemented as a node.
Not implemented as a node.
Not implemented as a node.
Not implemented as a node.
Not implemented as a node.
Not implemented as a node.
Not implemented as a node.
-
The timezone can be set using the Hue App but these nodes will always use the timezone setup on the server running Node-RED.
-
HomeKit interface is not implemented.
-
None of the remote access features will work.
-
The transfom node will handle transitions but it might not work very well. It does a transition calculation once every 100ms and that might simply be too much depending on your setup.
- Red at 100% brightness (using hue, saturation - colormode 'hs')
topic = setstate
payload (JSON) = {"transitiontime":4,"on":true,"bri":254,"colormode":"hs","hue":0,"sat":254}
- Green at 100% brightness (using hue, saturation - colormode 'hs')
topic = setstate
payload (JSON) = {"transitiontime":4,"on":true,"bri":254,"colormode":"hs","hue":21845,"sat":254}
- Blue at 100% brightness (using hue, saturation - colormode 'hs')
topic = setstate
payload (JSON) = {"transitiontime":4,"on":true,"bri":254,"colormode":"hs","hue":43690,"sat":254}
- White at 100% brightness (using hue, saturation - colormode 'hs')
topic = setstate
payload (JSON) = {"transitiontime":4,"on":true,"bri":254,"colormode":"hs","hue":0,"sat":0}
- Off
topic = setstate
payload (JSON) = {"on":false,"bri":0}
- On at 100% brightness
topic = setstate
payload (JSON) = {"on":true,"bri":254}
Copyright 2018 Michael Jacobsen under the GNU General Public License version 3.