v1.3.0 — UI teach-in
·
30 commits
to main
since this release
Manage EnOcean devices entirely from the UI
No more configuration.yaml editing for devices: Settings → EnOcean → Configure → Add a device, press the physical button, fill the short form, done. The entity is created immediately and survives restarts.
What is new
- Options flow to add/remove
binary_sensor,switchandlightdevices from the UI; UI devices coexist with existing YAML ones - Teach-in learn window (60 s, configurable 15-300) captures the first unknown EnOcean sender; also available as the
enocean_custom.learnservice firingenocean_custom_device_learned - Manage screen deletes a UI device (options + exact entity registry row); its EnOcean ID becomes teachable again immediately
unique_ids reuse the exact YAML formulas, so a later YAML→UI migration preservesentity_idand automationsswitch_type(default/RPS, RPS channels 0/1) selectable in the form- French translation
Hardening (two adversarial review rounds)
- Device forms use only websocket-serializable selectors
- Learn windows are serialized and owned; captures are timestamped
- Known IDs are re-seeded on every window and now include YAML
sensor/climatesenders - Malformed hand-edited
ui_devicesrows are skipped instead of crashing setup - Dongle is unloaded if platform forwarding fails (no zombie serial reader)
Gates
51 unittests + HA 2026.7.3 smoke, Ruff, compileall, EN/FR translation parity, CI 4/4 green. Deployed on production and validated with a live hardware teach-in (capture, entity creation, press/release decoding).
climate and sensor devices remain YAML-only in this release.