Relay — relay v1
A single dry-contact relay output. Devices with a bank of relays expose one binding of this
proxy per relay. Consumed by drivers that declare a relay control connection — those
drivers never learn what hardware is on the other end.
Capabilities
Declared in the driver manifest under [[proxy]] capabilities. Anything not declared takes the default below.
| Capability | Type | Default | Meaning |
|---|---|---|---|
max_pulse_ms | u32 | 30000 | Longest pulse the hardware accepts |
momentary_only | bool | false | Hardware cannot hold closed; only pulse is valid |
normally_closed | bool | false | Idle state is closed rather than open |
supports_pulse | bool | true | Can close for a timed interval and release |
Commands
close
Energize — make the contact
No parameters.
open
De-energize — break the contact
No parameters.
pulse
Only present when
supports_pulseis declared true.
Close for ms, then open. The canonical way to drive a momentary input like a gate or fireplace.
| Parameter | Type | Notes |
|---|---|---|
ms | u32 1–300000 |
toggle
No parameters.
Notifications
online_changed
| Parameter | Type | Notes |
|---|---|---|
online | bool |
relay_changed
| Parameter | Type | Notes |
|---|---|---|
closed | bool |
State
Last-known values core keeps for a binding of this proxy.
| Key | Type | Meaning |
|---|---|---|
closed | bool | |
online | bool |