Skip to content

Advanced Automations

Homecast includes a visual automation editor inspired by tools like n8n and Node-RED. Build flows by connecting nodes on a canvas — triggers start the flow, actions control your devices, and logic nodes let you branch, merge, and transform data.

How it works

  1. Open the editor — from the Automations section, click "New Automation" → "Homecast"
  2. Add nodes from the left palette (or tap the + button on mobile)
  3. Connect nodes by dragging from an output handle to an input handle
  4. Configure nodes by clicking them to open the config panel
  5. Save and your automation starts running

Data flow

Every node produces output data that downstream nodes can reference. For example, an HTTP Request node captures the response body, and a Code node can transform it:

{{ nodes['http1'].data.body.temperature }}
{{ nodes['code1'].data.result }}
{{ trigger.to_value }}

This is what makes Homecast automations powerful — data flows through the pipeline, not just execution order.

Node types

Triggers (start the flow)

NodeDescription
Device ChangedFires when a device or service group changes state
ScheduleFires at a time, interval, or sunrise/sunset
WebhookFires when an HTTP request is received

Actions (do something)

NodeDescription
Set DeviceControl a HomeKit device
Run SceneExecute a HomeKit scene
DelayWait for a fixed duration
NotifySend a push notification
HTTP RequestMake an HTTP request and capture the response
CodeRun custom JavaScript

Logic (control the flow)

NodeDescription
IFBranch based on a condition
WaitPause until a device changes or timeout
MergeCombine data from multiple branches
Sub-workflowRun another automation as a sub-flow

Error handling

Every action node supports per-node error handling:

  • Stop (default) — the automation halts on error
  • Continue — log the error and proceed to the next node
  • Retry — retry with exponential backoff, then continue

Configure this in the "Error Handling" section at the bottom of each action node's config panel.

Execution history

Click the History button in the toolbar to see past execution runs. Each run shows:

  • Status (success, error, stopped)
  • Duration
  • Step-by-step trace with input/output data for each node