Template Select
The template Select platform allows you to create a Select with templated values
using lambdas.
# Example configuration entry
select:
- platform: template
name: "Template select"
optimistic: true
options:
- one
- two
- three
initial_option: twoConfiguration variables
options (Required, list): The list of options this Select has.
lambda (Optional, lambda): Lambda to be evaluated every update interval to get the current option of the select.
set_action (Optional, Action): The action that should be performed when the remote (like Home Assistant’s frontend) requests to set the Select option. The new option is available to lambdas in the
xvariable.update_interval (Optional, Time): The interval on which to update the select by executing the
lambda. Defaults to60s.optimistic (Optional, boolean): Whether to operate in optimistic mode - when in this mode, any command sent to the Template Select will immediately update the reported state. Cannot be used with
lambda. Defaults tofalse.restore_value (Optional, boolean): Saves and loads the state to RTC/Flash. Cannot be used with
lambda. Defaults tofalse.initial_option (Optional, string): The option to set the option to on setup if not restored with
restore_value. Cannot be used withlambda. Defaults to the first option in theoptionslist.All other options from Select.
ℹ️ Note
If you don’t set a
lambdaandoptimisticisfalse(default), updates to the select component state will need to be taken care of as part of yourset_actionusingid(my_select).publish_state(x);(in a lambda). Do not useselect.setAction here, as this would generate a loop. Also, don’t useid(my_select).state = xas this won’t have the desired effect (e.g. HA won’t update with the change).
select.set Action
You can also set an option for the template select from elsewhere in your YAML file
with the select.set Action.