IR Output — ir_out v1
A single infrared emitter port. Devices with a bank of emitters expose one binding per port.
Consuming drivers send a code, not a waveform: a declarative driver names a code from its own
commands.toml code table and core hands the emitter the pronto/hex payload. The consuming
driver therefore works identically on a controller's 3.5 mm emitter jack, a Global Caché
iTach, or a USB blaster.
Capabilities
Declared in the driver manifest under [[proxy]] capabilities. Anything not declared takes the default below.
| Capability | Type | Default | Meaning |
|---|---|---|---|
carrier_configurable | bool | false | Carrier frequency can be set per code |
has_blast_all | bool | false | Port can emit on all outputs at once |
max_code_bytes | u32 | 2048 | |
supports_repeat | bool | true | Can hold a code repeating until stopped |
Commands
send
Emit a code once, or repeats extra times
| Parameter | Type | Notes |
|---|---|---|
code | string | Pronto hex or Juno IR code, resolved by the sender |
repeats | u8 0–20 (optional) |
set_carrier
Only present when
carrier_configurableis declared true.
| Parameter | Type | Notes |
|---|---|---|
hz | u32 0–500000 |
start_repeat
Only present when
supports_repeatis declared true.
Begin emitting continuously — for volume ramps and channel scans
| Parameter | Type | Notes |
|---|---|---|
code | string |
stop_repeat
Only present when
supports_repeatis declared true.
No parameters.
Notifications
online_changed
| Parameter | Type | Notes |
|---|---|---|
online | bool |
State
Last-known values core keeps for a binding of this proxy.
| Key | Type | Meaning |
|---|---|---|
online | bool |