The `initialized` state (used in conditions/triggers) was written once and never cleared, so it meant "has this card ever been initialized" while everything reading it took it as "is this card usable now". Home Assistant takes a card off the page and puts it back whenever its dashboard tab is left and returned to, so the card initialized again while the state claimed it was initialized throughout: `trigger: initialized` fired once per card rather than once per startup, and automations were dropped in between. The card lifecycle is now an explicit state machine (`SessionManager`), the only writer of `initialized`, which separates a card that is starting up from one initializing part of itself again while it runs. A new `ever` parameter (conditions/triggers) selects the old latched behaviour. `remote_control` uses that parameter to keep its two camera priorities correct under repeated starts. With `camera_priority: entity` the card now re-reads the entity every time it starts, so a camera selected while the card was away is picked up on return. With `camera_priority: card` the card writes the entity on its first start only, unchanged, since repeating that write would overwrite a camera the user had selected. Closes: #2642 BREAKING CHANGE: `condition: initialized` is now `false` whenever the card is not usable, and `trigger: initialized` fires each time the card starts up rather than only the first time. Set `ever: true` on either to keep the previous behaviour.
3.2 KiB
3.2 KiB
remote_control
The remote_control configuration options control how a card instance can be remotely controlled.
remote_control:
# [...]
entities
Sets entities that are used to control different aspects of the card.
remote_control:
entities:
# [...]
| Option | Default | Description |
|---|---|---|
camera |
An input_select entity that the card will use for bidirectional control. When the selected camera on the card changes the entity will be updated to match. Likewise, when the entity state changes, the selected camera on the card will be updated to match. When the card is first started, the input_select entity will be updated to only have valid camera IDs from this card and the selected camera on the card will be updated to the existing entity value. Entities used for camera remote control must start with input_select.. |
|
camera_priority |
card |
Controls whether the card or the entity has priority when the card starts up. If card, the entity state is updated to match the camera shown, once, when the card first starts. If entity, the card selects the camera named by the entity every time the card starts up -- including on a return to its dashboard tab and after Home Assistant restarts -- so a change made to the entity while the card was away is picked up. |
Note
To create an
input_selectentity to use in this manner, in the visual card editor, underRemote Control -> Remote Control Entities, chooseCreate a new Dropdown helper. Give the new entity an entity name (e.g.my_selected_camera) and an optional icon. You must specify at least one option -- you can use any placeholder value (e.g.camera) then chooseAdd(the card will automatically reset the allowable options on start). Finally, clickCreate.
Related Topics
Fully expanded reference
remote_control:
entities:
camera: input_select.my_selected_camera
camera_priority: card