When building an automation you can turn on a light using either a Call service → Light: Turn on action or a Device → Turn on action. The Device action however has severe drawbacks:
- Because of its fitting name, one might think that Device → Turn on is the correct action to turn on a light, but in reality it doesn’t support most of the parameters like light color, brightness, transition and so on. This severely hurts the discoverability of those features.
- Generally in Home Assistant the Entity ID is the rendezvous point by which the state core, the Lovelace UI, recorder, MQTT etc. meet. If you create a card or an automation with an Entity ID that currently doesn’t exist and you then add a device that Entity ID, the card or automation will pick up that entity. Regardless of whether that is a good thing or not, it is how it is and it is implemented consistently except for those Device actions (and triggers) which use some kind of opaque
device_id
anddiscovery_id
. It is undocumented what happens if those two don’t match. It also makes copy&paste more difficult.
In an attempt to make the creation of automations much less confusing I propose to deprecate the Device actions and triggers and to remove them from the dropdown lists.