home-assistant / architecture

Repo to discuss Home Assistant architecture
317 stars 100 forks source link

Add Home Appliance entity #735

Closed ekutner closed 2 years ago

ekutner commented 2 years ago

Context

More and more home appliances, such as washing machines, dryers, coffee machines, etc, are becoming connected devices. The common ground for these appliances is that they have a variety of programs that can be selected and these programs may have some options that can be configured on them. For example, a washing machine would have a Cottons, Wool, etc. programs and these programs would have different parameters that can be controlled, such as the spin speed or temperature. A coffee machine would have programs for the kind of beverage and parameters such as the amount of milk, water temperature etc. It is possible to control this things with basic entities, but it would be better if there was one entity that grouped this functionality.

Proposal

Add a native Home Appliance entity that would encapsulate that above states and functionality. In fact, some existing entities, such as robotic vacuum cleaners, have the same characteristics and would could derive a specialized subclass of this home appliance entity, however, I don't know the implications of doing something like that so it's not something I'm proposing (but others, with better understanding, may weigh in on this).

Consequences

Adding this entity would make supporting home appliances from different vendors more standardized and therefor make it easier for end users to replace or mix and match appliances.