Interactive (control) widgets

Updated

Some widgets write to a device or trigger an action:

Realistic control widgets

Skeuomorphic controls with the same write behaviour, for a more tactile HMI:

Where a control writes

Every Modbus control writes to the tag it's bound to on the Data tab. The device, address and function code all come from that tag: a coil is written with FC05, a holding register with FC06. You don't have to fill anything else in. Input registers and discrete inputs are read-only, and a control bound to one tells you it can't write instead of doing nothing.

The Override device and Override write address fields are optional. Use them only to write somewhere other than the tag you're displaying. The device is the 24-character ID from the device's page, not the Modbus unit ID. The address is 0-based, not 4xxxx notation: register 40003 is address 2.

A momentary illuminated button always sends its release, even if you let go before the gateway has confirmed the press.

When you operate a control widget you'll see a device/write event, then device/write/ack if the gateway confirms the write. Gateways on firmware 1.5.2 or newer confirm each write, so the control shows whether the device accepted it. With older firmware no confirmation arrives: after 10 seconds the control shows Sent rather than failed, and the tag's next reading shows the value the device actually has. Writes through a gateway are one coil or one register at a time (FC05/FC06); multi-register writes (FC15/FC16) are refused. Controls require a writable device/protocol (e.g. a Modbus coil/register or a gpio-digital-out/gpio-pwm device). Widgets that fire a User Action instead need a saved action and don't require a writable Modbus device.