EnOcean Custom v2.4.0 — native device triggers
EnOcean Custom 2.4.0 — native device triggers for rockers
The automation editor now offers clickable device triggers for every EnOcean rocker: pick the device, then the action, instead of typing the raw button_pressed event and radio ID by hand. Automations created this way reference the device, so they finally show up in the device's "Used in" section.
What you get
- Four native triggers per rocker device: Button pressed, Button released, Channel 1 button pressed, Channel 2 button pressed (labels 1-indexed for humans; channels map to the rocker's
whichvalue). - Matching is exact and subset-based against the existing
button_pressedpayload (id,pushed,which) — the legacy event and all existing automations are untouched. - A5-14-01 door/window contacts are excluded: they decode 4BS telegrams and never emit
button_pressed. - Trigger creation survives malformed registry entries: unknown devices and corrupt identifiers return no triggers instead of raising.
Notes and limits
- Existing event-based automations keep working forever; converting them to device triggers is a separate, optional migration.
- A disabled rocker entity exposes no triggers (a disabled entity emits nothing).
- Multi-touch telegrams (
which == 10) match only the generic "Button pressed" trigger.
Verification
- 193 unit tests (14 new, including end-to-end ESP3 frame → decoder → bus → trigger), real Home Assistant smoke test, Ruff check/format on the CI target list, compile + JSON gates, dependency audit: all green.
- CI
Validate4/4 green (HACS, tests/smoke, Hassfest 2026.7.3, dependency audit).
Full Changelog: v2.3.0...v2.4.0