smithtek-nodered-consched 1.1.0

Hybrid scheduler and process control node for Smithtek.cloud

npm install smithtek-nodered-consched

smithtek-nodered-consched

SmithTek format

SmithTek format

Installation

Install the smithtek-nodered-consched node using the Node-RED Palette Manager, or manually place the node inside your Node-RED ~/.node-red/nodes directory and restart Node-RED.


Setup Order

The Smithtek.cloud widget should be set up first, before configuring the Node-RED node.

The widget is where the schedule and control configuration is created, saved, and stored inside Smithtek.cloud. The Node-RED node then polls that saved configuration and uses it to control the 24 outputs.

Recommended setup order:

  1. Create a new configuration variable in Smithtek.cloud
  2. Add the custom HTML widget to your Smithtek.cloud dashboard
  3. Paste the supplied widget HTML and CSS into the widget code editor
  4. Enter the Device Token and Variable ID into the widget HTML
  5. Save the widget configuration
  6. Add and configure the smithtek-nodered-consched node in Node-RED

SmithTek format


Smithtek.cloud Variable Setup

It is recommended to create a dedicated variable inside your Smithtek.cloud device called:

config

This variable can be used exclusively for the ConSched context cache/configuration data.

The widget stores all setup data inside the context of this single variable, including:

  • site name
  • output mappings
  • schedule settings
  • control settings
  • setpoints
  • modes

Using a dedicated config variable keeps the ConSched setup separate from normal live data such as levels, pressures, flows, alarms, or equipment states.


Smithtek.cloud Widget Setup First

Log in to:

www.smithtek.cloud

Then follow these steps:

  1. Open the required dashboard.
  2. Add a new HTML Canvas / HTML Widget.
  3. Open the widget code editor.
  4. Delete the default code from the HTML window.
  5. Delete the default code from the CSS window.
  6. Copy the supplied ConSched HTML code into the HTML window.
  7. Copy the supplied ConSched CSS code into the CSS window.
  8. In the HTML code, edit the default connection settings section near the top of the script.
  9. Update the Device Token and Variable ID values.

Example:

const DEFAULT_DEVICE_TOKEN = "PASTE_DEVICE_TOKEN_HERE";
const DEFAULT_VARIABLE_ID = "PASTE_CONFIG_VARIABLE_ID_HERE";

In the current widget code this is around line 44, but the exact line number may change if the code is edited.

The Device Token comes from your Smithtek.cloud device. The Variable ID should be the ID of the dedicated config variable.

After saving the widget, use the widget interface to create your schedule and control blocks, then click πŸ’Ύ Save to upload the full configuration to Smithtek.cloud.


Overview

smithtek-nodered-consched is a hybrid automation node for Smithtek.cloud that combines:

  • Time-based scheduling
  • Process/setpoint control
  • RF-friendly change-based messaging
  • 24 independent outputs
  • Offline cached operation

The node is designed to work alongside the Smithtek ConSched Widget inside Smithtek.cloud.

Configuration is stored inside a single Smithtek.cloud variable and automatically cached locally on the PassPort.

Even during:

  • network outages
  • unstable communications
  • power interruptions

…the node will continue operating using the cached configuration and the onboard RTC (real-time clock).

⚠️ The PassPort local clock controls all schedule timing. If the RTC/local time is adjusted, the scheduler timing will also change.


Core Features

  • Supports up to 24 independent outputs
  • Hybrid Schedule + Control logic
  • Schedule Mode
  • Process Control Mode
  • Pump In / Pump Out hysteresis logic
  • ON / OFF / AUTO override modes
  • Output selection mapping
  • Offline cache support
  • RTC compatible
  • Reduced RF traffic support
  • Live status reporting under the node

Output Mapping

Each configuration block inside the widget can now be assigned to any output:

  • output1
  • output2
  • output3
  • etc.

Unlike older scheduler versions, outputs are no longer locked to row order.

This allows:

  • deleting schedules safely
  • reordering outputs
  • sparse output layouts
  • mixing schedule and control outputs together

Setup smithtek-nodered-consched

SmithTek format

  1. Drag the smithtek-nodered-consched node into your Node-RED flow
  2. Configure the following:
  • Device Token β†’ Smithtek.cloud device API token

  • Variable ID β†’ Variable used to store the hybrid configuration

  • Poll Interval β†’ 10 to 60 seconds

  • Output Update Mode

    • Update Once Only
    • Update On Every Poll

Input Payload

The node now accepts a JSON payload input for Process Control Mode.

Example:

{
  "tank-level": 42.5,
  "pressure": 380,
  "flow": 12.4
}

The node will search incoming payloads for matching variable names configured inside the widget.


SmithTek format

Schedule Mode

Schedule Mode uses:

  • Day selection
  • Start time
  • Run duration
  • ON / OFF / Auto Schedule modes

Schedule Modes

ON

Forces the output ON continuously.

OFF

Forces the output OFF continuously.

Auto Schedule

Uses the configured:

  • days
  • start time
  • runtime

…to automatically control the output.


Control Mode

Control Mode uses live process values from incoming JSON payloads.

Each control block contains:

  • Variable Name
  • Low Setpoint
  • High Setpoint
  • Direction
  • Mode

Pump In Logic

Typical tank filling logic.

Example:

  • Low setpoint = 30
  • High setpoint = 80

Behaviour:

  • Below 30 β†’ Output ON
  • Above 80 β†’ Output OFF
  • Between 30 and 80 β†’ Holds previous state

Pump Out Logic

Typical tank draining logic.

Example:

  • Low setpoint = 30
  • High setpoint = 80

Behaviour:

  • Above 80 β†’ Output ON
  • Below 30 β†’ Output OFF
  • Between 30 and 80 β†’ Holds previous state

Output Update Modes

Update Once Only

Only sends output messages when the output changes state.

Benefits:

  • Lower RF traffic
  • Reduced telemetry usage
  • Cleaner messaging

Trade-off:

  • If an RF packet is missed, the remote device may not receive the state change.

Update On Every Poll

Continuously re-sends the current output state every poll cycle.

Benefits:

  • More resilient RF operation
  • Better for noisy or unreliable links

Trade-off:

  • Higher RF traffic
  • More repeated messaging

Message Output Logic

The node outputs up to 24 outputs simultaneously.

Each output sends:

{
  "payload": true,
  "topic": "output1",
  "output": "output1",
  "outputNumber": 1,
  "controlType": "schedule",
  "name": "Pump 1"
}

Outputs are mapped directly to the selected output number.


LED Status Grid

The Smithtek.cloud widget includes a live LED overview grid.

Colour meanings:

  • Green β†’ ON
  • Red β†’ OFF
  • Orange β†’ AUTO / Auto Schedule
  • Grey β†’ Unused

This allows operators to quickly see the current operating state of all 24 outputs.


Node Display

The node displays a live status summary beneath the node inside Node-RED.

Example:

output1: schedule Auto Schedule = 1
output2: control AUTO = 0

This provides quick diagnostics without requiring debug nodes.


Smithtek.cloud Integration

The node retrieves all configuration from a single Smithtek.cloud variable.

This includes:

  • Schedule configurations
  • Control configurations
  • Output mappings
  • Modes
  • Setpoints

🟑 Ensure your Smithtek.cloud plan includes sufficient data allowance for polling and configuration updates.


Smithtek.cloud Widget Usage

Logon at:

www.smithtek.cloud

The Smithtek ConSched Widget is used to configure:

  • schedules
  • process control
  • output assignments
  • modes
  • setpoints

SmithTek format

Widget Setup

1. Site Name

Enter a friendly site label.

Example:

  • Farm North Dam
  • RO Plant
  • Dust Suppression

2. Connection Settings

Inside the widget:

  • Device Token
  • Variable ID

…are stored inside the hidden Connection Settings panel.


3. Add Output

Click:

βž• Add Output

Each block can independently operate in:

  • Schedule Mode
  • Control Mode

Schedule Mode Configuration

Configure:

  • Output Selection
  • Output Name
  • ON / OFF / Auto Schedule
  • Start Time
  • Runtime
  • Days

Control Mode Configuration

Configure:

  • Output Selection
  • Output Name
  • Variable Name
  • Low Setpoint
  • High Setpoint
  • Pump In / Pump Out
  • AUTO / ON / OFF

Saving

Click:

πŸ’Ύ Save

The entire hybrid configuration will be uploaded to Smithtek.cloud as a single JSON object.

The PassPort node will:

  • poll the configuration
  • cache locally
  • continue operating offline

Functionality Summary

  • Hybrid scheduling + process control
  • 24 independent outputs
  • Flexible output mapping
  • Pump In / Pump Out logic
  • Hysteresis control
  • RF traffic optimisation
  • RTC support
  • Offline cache operation
  • Smithtek.cloud integration
  • Live LED overview
  • Live node status reporting

License

Copyright (c) 2026 www.smithtek.com.au Licensed under GPLv3


Acknowledgements

Special thanks to:

  • Nick O'Leary

…for their invaluable contributions to the Node-RED community.


Contact: [email protected] Website: www.smithtek.com.au

Node Info

Version: 1.1.0
Updated 1 day ago
License: GPL-3.0
Rating: not yet rated

Categories

Actions

Rate:

Downloads

0 in the last week

Nodes

  • smithtek-nodered-consched

Keywords

  • node-red
  • smithtek
  • scheduler
  • automation
  • process-control
  • telemetry
  • scada
  • irrigation
  • pump-control

Maintainers