This is a
playground to test code. It runs a full
Node.js environment and already has all of
npm’s 400,000 packages pre-installed, including
node-red-contrib-hapcan with all
npm packages installed. Try it out:
This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.
The node.js package that brings HAPCAN Home Automation Project support in node-red.
Nodes are using the Hapcan ethernet module to communicate between Hapcan bus and node-red.
Node-red 1.x.x support, includes new output nodes input event registration - which allows to using new Complete Node-red node. There are also some visual issues fixes for custom-input and custom-output nodes for Node-red 1.x.x.
Added new button output node, that controls 14 buttons LEDs.
This version require Node-red version 1.x.x and later and will not work on older versions.
Just open Manage palette from node-red dashboard menu, switch to Install tab and search for hapcan word. Only stable releases.
Only stable releases
npm install node-red-contrib-hapcan
Latest available version - working in most cases.
git clone https://github.com/Onixarts/node-red-contrib-hapcan
Package contains multiple input and output nodes for different Hapcan modules. You don't need to know any Hapcan's messages to make it work. Each node uses special (hidden) gateway node to communicate with Hapcan system. UNIV3 and UNIV1 modules support included.
Simply drag any Hapcan node and double click to open edit mode. First, You need to configure gateway. You need to do it only once. Any other node will use this gateway.
Each node has help provided, so You can read about parameters and its possibilities.
You can configure each input node to receive data from selected node, but You can also filter the messages if this node has many inputs (for example 14 buttons module).
Input nodes produces json object payload that contains simply to understand Hapcan message values that You can use in Your flow. There are also userField value available, so it is possible to output custom defined value on each input state.
Output nodes delivers default action, that You can choose for the selected Hapcan module (for example toggle action in relay output), so any payload received by this node will trigger the default action. You can also control Hapcan module by passing more detailed payload with topic set to control value. Details are available in the help panel for each node.
You can control the nodes by payload in many ways. For example, let's consider relay output. You can pass string value with "ON", "Off", "Toggle" text (case insensitive) to switch channel selected in node configuration. You can also pass number 0,1,2 (Hapcan module compatible values). You can also pass bool value of true or false, to enable or disable relay - in this case the possible actions are limited to ON and OFF. Finally, you can pass object (JSON) where You have full control over node - You can override default settings in configuration then.
Example of RGB output node configuration - it contains each control frame fields for simple use.
Thera are also Custom input and output nodes which allows You to send and receive any messages to and from the bus. You can name each data byte as You want. It also has a preset menu, with common Hapcan's messages frames, ready to be used.
Discover devices function allows You to search the Hapcan bus for devices present, and then select them easily in any node configuration instead remember necessity for node and group number for each device.