Repository navigation
Releases
Releases · fredsch/Wago2HAddon
Security and robustness fixes
Full Changelog: 1.081...1.090
Add some documentation
Full Changelog: 1.080...1.081
Shutter movement fix
State restore after a restart
- State restore after a restart for shutters (last estimated position) and
DALI/DMX lights (on/off, brightness, RGB color), viaRestoreEntity. No more
shutter stuck at "unknown" or DMX/RGB light coming back off after a restart or an
update of Home Assistant. The restore is accurate here since only Home Assistant
drives these outputs (the PLC's internal program is suspended). - Toggle option "Restore state after restart" in the integration settings
(Configure), enabled by default. Relays and on/off lights are not affected: they
keep re-reading their real state from the PLC at startup.
Fix Entities Types
Fixed
- Air-conditioning registers, pumps, solenoid valves and contactors showed up as
lights. In the Calaos file these outputs havegui_type="light"but a separate
io_styleattribute (heater,pump,boiler,outlet) that the importer
ignored. It now honors it: those outputs are created asswitchentities
(with the outlet device class foroutlet, and a fitting icon for
radiator/pump/boiler), while genuine lights stay aslight.
Migration note
- After the update, the affected entities change domain (
light.*→switch.*):
theirentity_idchanges and the oldlight.*entities become orphaned. Update
your dashboards and automations, and remove thelight.*entities that became
unavailable.
DALI Light Fix
DALI lights switching back to "off" ~1-2 min after being turned on. The DALI
state was polled periodically via WAGO_DALI_GET, but that read returns "off"
(the query is unreliable, and impossible for DMX at address >= 100), which
overwrote the real state. In line with Calaos, DALI state is no longer polled in a
loop: it is read once at startup (and only for genuine DALI addresses 1-64),
then tracked optimistically. Since the PLC's internal program is suspended, a
DALI light can only be changed from Home Assistant, so the optimistic state is
exact.
DALI lights switching Fix
- DALI lights switching back to "off" ~1-2 min after being turned on. The DALI
state was polled periodically viaWAGO_DALI_GET, but that read returns "off"
(the query is unreliable, and impossible for DMX at address >= 100), which
overwrote the real state. In line with Calaos, DALI state is no longer polled in a
loop: it is read once at startup (and only for genuine DALI addresses 1-64),
then tracked optimistically. Since the PLC's internal program is suspended, a
DALI light can only be changed from Home Assistant, so the optimistic state is
exact.
Unstable inputs fix
- Unstable inputs: clicks were lost intermittently (issue #2). The UDP listener
socket (port 4646) was opened withSO_REUSEPORT; on Linux the kernel then
spreads incoming datagrams across every socket bound to that port. After a reload,
an update or a restart, an old socket sometimes stayed bound and "stole" a share
of theWAGO INTpackets, which were silently lost. The socket is now
exclusive: every input packet reaches the single listening instance. - Clean close of the UDP socket on unload (waiting for its actual release) and a
bind retry at startup, so a reload never leaves two sockets competing for the port.
Added
- A bus event
wago2haddon_eventis fired on every decoded action (single /
double / triple click, long press), in addition to theevententity. Anevent
trigger on this event is fully reliable (never de-duplicated) and is a robust
alternative for automations. - Defensive handling of multiple messages per datagram (no message dropped if the
PLC were to batch them). - Clean cancellation of the input decoder timers when an entity is removed (avoids
an event firing after a reload).