Skip to content

Weather station sensors don't automatically convert units in Home Assistant, due to missing device_class #32337

Description

@electroflame

What happened?

After updating to 2.12.0 (although I believe it started in 2.9.2) weather station (specifically Shelly WS90) temperature sensors no longer convert from Celsius to Fahrenheit automatically in Home Assistant.

What did you expect to happen?

The Celsius readings to automatically convert in Home Assistant, as they were before.

How to reproduce it (minimal and precise)

Set the regional units in Home Assistant to Fahrenheit, and see the sensor readings not convert.

Zigbee2MQTT version

2.12.0

Adapter firmware version

20201026

Adapter

Electrolama zzh!

Setup

Raspberry Pi 4, Docker

Device database.db entry

No response

Debug log

No response

Notes

I believe this is due to pull request #31234, which removed the device_class from most of the temperature sensors.

It seems like Home Assistant requires device_class being set to temperature for the automatic conversion to take place.

It's possible to override this via the devices: block in the configuration.yaml (which I've done) and now everything works as it did before. This isn't super obvious, however, so it's probably better to just revert the change, as I imagine I'm not the only weather station owner that uses Imperial units.

Metadata

Metadata

Assignees

No one assigned

    Labels

    problemSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions