hdl-automation-nodered

1.9.7 • Public • Published

HDL Automation for Node Red

Provides control and feedback of the HDL Automation bus.
HDL Automation

This project is no longer being maintained.

Don't stress! The HDL bus is unlikely to be changed in the near future so it is likely that this project will still work! I will keep the project open if you wish to contribute to the project.

How to Use

You require some way of communicating with the bus though network. This can be done by using a HDL-MBUS01IP.431 or HDL-MD512-DMX.232 (SB-DN-512DMX) (which is what this is tested on) or any other gateway that provides programming functionality to connect your bus to the network.

Sending to the bus

In order to send commands to the HDL bus it is expected that messages will be sent as following

var msg = {
    "payload": {
        "operate": "function", (required)
        "subnetId": 0, //Override the subnet id
        "deviceId": 1, //Override the device id
        "mode": "set/get", //Set will set the value to the bus, get will get the value from the bus (required)
        "direction": "request/answerBack", //Request is requesting the action to happen, answerBack is a reply from the bus (required)
        "data": {
            //The data specific to the function (see below)
        }
    }
}

Receiving from the bus

When events occur on the bus commands will be outputted in the following format:

{
    "payload": {
        "opCode": 0x002,
        "sender": { //The device that sent the message
            "deviceType": 0x00B,
            "subnetId": 1,
            "deviceId": 2,
            "wasSendToThisDevice": true/false
        },
        "target": { //The target device for the sent message
            "subnetId" : 1
            "deviceId": 3
        },
        "operate": "function",
        "mode": "set/get",
        "direction": "request/answerBack",
        "data": {
            //The data specific to the function
        },
        "contents": Buffer([0x01, 0x01]) //The raw contents sent
    }
}

Supported Functions

Scene Control

Gets/Sets a scene on an area for a device

Sequence Control

Gets/Sets a sequence on an area for a device

UV Switch

Gets/Sets a a universal switch value on a device

Single Channel Control

Gets/Sets a single channel on a device

Date Time

Gets the date/time

AC Control

Controls a HVAC device (See panel control as some devices use the panel)

Panel Control

Controls a individual control panel, including AC control if controlled via a panel

Dry Control

Gets the value of a dry contact, useful for PIRs

Dependencies (2)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i hdl-automation-nodered

    Weekly Downloads

    8

    Version

    1.9.7

    License

    Apache-2.0

    Unpacked Size

    136 kB

    Total Files

    33

    Last publish

    Collaborators

    • haydendonald