Summary
Add a first curated set of Duco configuration entities once the supporting client models expose stable configuration data.
Problem
The integration currently focuses on state and diagnostics. A small set of clearly useful configuration controls would add value, but only if they are backed by stable client models and avoid exposing raw configuration noise.
Scope
Start with a curated first set of configuration entities, such as:
- a bypass mode select
- a filter reset button
- a small set of clearly useful configuration numbers or switches
Requirements
- only add entities backed by stable client models
- avoid mirroring every raw configuration field
- keep the first set focused on clear user-facing value
- add tests for entity creation, value mapping, and writes
Acceptance criteria
- the first curated configuration entities are available for supported devices
- unsupported configuration values are skipped cleanly
- tests cover entity creation and writes
Technical appendix
Likely touchpoints
homeassistant/components/duco/const.py for platform registration
homeassistant/components/duco/entity.py for shared device/entity helpers
- new platform files for the selected entity types, likely
number.py, select.py, and button.py
homeassistant/components/duco/strings.json and homeassistant/components/duco/icons.json
tests/components/duco/conftest.py
- new platform tests plus snapshot coverage under
tests/components/duco/
Data source
- typed config read models from the client layer
- the first entity slice should stay close to stable, user-meaningful config values such as bypass mode, filter reset, and a very small set of clearly useful numeric or boolean settings
- only create entities when the required config values are actually reported by the device
Non-goals
- exposing the full configuration surface in a first pass
- adding entities for raw or poorly understood settings
- mixing unrelated diagnostics or telemetry work into this issue
Minimum tests
- create only the supported config entities for a device that reports the needed values
- skip unsupported or missing values cleanly
- verify write calls map to the intended client method and payload
- verify entity registry defaults for diagnostic or low-value entities when applicable
Dependency note
- this issue should follow stable typed config read support in the client layer
- keep the first implementation slice intentionally small, even if the underlying API can expose more settings
Summary
Add a first curated set of Duco configuration entities once the supporting client models expose stable configuration data.
Problem
The integration currently focuses on state and diagnostics. A small set of clearly useful configuration controls would add value, but only if they are backed by stable client models and avoid exposing raw configuration noise.
Scope
Start with a curated first set of configuration entities, such as:
Requirements
Acceptance criteria
Technical appendix
Likely touchpoints
homeassistant/components/duco/const.pyfor platform registrationhomeassistant/components/duco/entity.pyfor shared device/entity helpersnumber.py,select.py, andbutton.pyhomeassistant/components/duco/strings.jsonandhomeassistant/components/duco/icons.jsontests/components/duco/conftest.pytests/components/duco/Data source
Non-goals
Minimum tests
Dependency note