Where are device_class defined?

Is there a list of device_classes in the core, or are they defined somewhere? I can’t find such a definition in the docs, just specific ones.

Thanks for the link. That did get me closer to finding such a list. I would have never thought of “customizing” as the vector.

I was looking for how to change my garage door open/close icons and I came across this:

binary_sensor:
  - platform: gpio
    device_class: garage_door

My first thought was, “wait! what? Device class?”

So, cool. Adding this line into my ESPHome code worked exactly how I wanted. So, I wondered what else I could modify with device_class. A search in Documentation - Home Assistant for “device_class” responded with every possible hit for “device” and “class”, but none for “device_class”. (A problem with the search feature?)

So, a bit more digging and I found such a list. Well, five lists.

Obviously, I had never heard of device_class before… Thanks.

can you share those lists?

That’s a rabbit hole with infinite branches. This is the most succinct and useless description of device_class that I have found in the docs.

Device_class sets the class of the device

Wow!. It continues:
, changing the device state and icon that is displayed on the UI (see below). It does not set the unit_of_measurement.

1 Like