The best temperature and humidity sensors for Home Assistant

Disclosure: This post contains affiliate links. If you click through and make a purchase, I’ll earn a commission, at no additional cost to you. Read my full disclosure here.

Being able to measure the temperature and humidity is one of the basics of a smart home. This metric can be useful in a number of ways: You can use the humidity to detect whether someone is the bath or shower, if you live in a dry area you might turn on a humidifier when the humidity reaches a certain percentage, or you can use the temperature to adjust a thermostat. And some people, like me, just like seeing nice graphs on their Home Assistant dashboard.

Choosing the right temperature and humidity sensor for Home Assistant can be a tricky task. After all, there are so many to choose from. Before deciding which one to with you should ask yourself a few questions: Does the sensor have to be battery-powered and what ecosystem are you using? If you already have a bunch of Zigbee lights, the obvious answer would be to go with Zigbee sensors. If you have an ESP32 laying around you could purchase one of the Xiaomi sensors which have an e-ink display.

Below you will find a selection of highly-rated temperature and humidity sensors which are all compatible with Home Assistant. Some sensors will require a hub or an extra device to connect to, so make sure you have everything you need before purchasing.

Aqara Temperature and Humidity Sensor (Zigbee)

These tiny sensors are powered by a single CR2032 coin cell battery and can last up to two years. They work from -20℃ (-4℉) to 50°C (122℉) with an accuracy of ±0.3℃ (±0.5°F), which is pretty good. When bought directly from China these temperature and humidity sensors can be had for a very low price. These sensors are also reasonably good at measuring the humidity of a room with an accuracy of ±3%. Though not advertised in the sensors name, they can also measure atmospheric pressure.

There is some confusion surrounding the Aqara brand. You will often see it described as Xiaomi Aqara. Before Lumi United, which is Aqara’s parent company, created its own line of smart home products under the brand name Aqara they were making devices for Xiaomi’s smart home brand called Mi or Mijia. Many of the Mijia and Aqara sensors look and behave similarly and you will often find Aqara devices described as Xiaomi Aqara.

You will also be able to find a Mijia/Mi temperature & humidity sensor which looks just like a round version of the Aqara equivalent. In comparison, the Mijia/Mi sensor is missing one feature: It doesn’t measure atmospheric pressure. Additionally, I personally prefer the square look of the Aqara sensor.

The Aqara temperature and humidity sensors
The Aqara temperature and humidity sensors
The Mijia/Mi temperature and humidity sensors
The Mijia/Mi temperature and humidity sensors

These sensors use the Zigbee protocol and thus need a compatible hub or a DIY Zigbee receiver. I use the excellent open-source project Zigbee2MQTT for all of my Zigbee sensors and lights. Zigbee2MQTT allows me to use just about every Zigbee device without having to buy multiple hubs.

Aqara Temperature and Humidity Sensor

Sensors: Temperature, humidity, and atmospheric pressure

Technology: Zigbee

Form factor: Square, with rounded corners

Battery: CR2032

Mijia/Mi Temperature and Humidity Sensor

Sensors: Temperature, and humidity

Technology: Zigbee

Form factor: Round

Battery: CR2032

Philips Hue motion sensors

The Philips Hue motion sensors, which also use the Zigbee protocol, have a hidden temperature sensor in them. To be able to access this sensor you will either need a Hue Labs Formula or the sensor has to be connected to a DIY Zigbee application such as Zigbee2MQTT. However, the hidden temperature sensor is all there is. The Philips Hue motion sensors do not measure humidity.

Philips Hue Indoor Motion Sensor

Sensors: Motion, light, and temperature

Philips Hue Outdoor Motion Sensor

Sensors: Motion, light, and temperature

Xiaomi Bluetooth Low Energy sensors

Xiaomi makes a number of Bluetooth Low Energy (BLE) sensors which come in different shapes and sizes. These have the added bonus of having a screen which will display the temperature and humidity. I personally like the look of devices with E Ink displays.

Getting BLE sensors integrated with Home Assistant used to be quite a tricky task. But thankfully ESPHome has solved that issue. Thanks to the Xiaomi BLE component you can connect these temperature and humidity sensors to an ESP32 using only a few lines of YAML.

If you’re looking for a temperature and humidity sensor which has a screen and connects to Home Assistant, the Xiaomi BLE sensors are the way to go. Because the ESP32 is dirt cheap you won’t have to pay too much extra to get these to work nicely with Home Assistant.

LYWSD03MMC

Sensors: Temperature and humidity

Design: Square

Technology: BLE

Display: Segment LCD

The Xiaomi LYWSD03MMC temperature and humidity sensor

LYWSD02

Sensors: Temperature and humidity

Design: Rectangular

Technology: BLE

Display: E Ink

The Xiaomi LYWSD02 temperature and humidity sensor

CGG1

Sensors: Temperature and humidity

Design: Round

Technology: BLE

Display: E Ink

The Xiaomi CGG1 temperature and humidity sensor
Processed By eBay with ImageMagick, z1.1.0. ||B2

Shelly H&T

Shelly H&T

Sensors: Temperature and humidity

Technology: WiFi

The shelly H&T temperature and humidity sensor

If you don’t want or a have a Zigbee hub and keep all your sensors connected via WiFi, the Shelly H&T might be for you. The Shelly H&T is considerably bigger than the Aqara sensors because WiFi is a lot more power-hungry than Zigbee. On battery, the Shelly H&T will last about 16 months but it can also be powered with a USB power supply, making it more flexible than other sensors.

Personally, I don’t like the design of this sensor. It looks big and bulky in comparison to the Aqara sensors I use. Those can be hidden away on a bathroom cabinet or stuck to the wall. The Shelly H&T will take some skill to hide.

DIY humidity and temperature sensors

And finally, you have the option of building your own sensors. Grab yourself an ESP8266 board and a BME260 temperature sensor and you’re good to go. Thanks to ESPHome the code is written and compiled in no time. Building your own sensors can be a fun project and is certainly more rewarding than just opening a box. Keep in mind that ESPHome isn’t very suitable for battery-powered devices. A DIY temperature and humidity sensor powered by it will more than likely have to be powered from the wall. However, because you are using ESPHome you aren’t restricted to just using it in conjunction with one sensor. You could also hook up more sensors, attach some LEDs, or use it for presence detection.

If you do want to go down the DIY route I have an article on why the BME280 is currently the best temperature and humidity for your projects. Don’t cheap out and go for the DHT11, you’ll regret it. You can also get yourself a BME680 if you want to be able to measure air quality too.

BME280

Sensors: Temperatures, humidity, atmospheric pressure

Cost: ~$2

BME680

Sensors: Temperatures, humidity, atmospheric pressure, gas resistance

Cost: ~$6

About Liam Alexander Colman

Liam Alexander Colman has been using Home Assistant for various projects for quite some time. What started of with a Raspberry Pi quickly became three Raspberry Pis and eventually a full-blown server. I now use Unraid as my operating system and Home Assistant happily runs in a Docker container. My personal setup includes many Zigbee devices as well as integrations with existing products such as my Android TV box. Read on to find out more on how I got started with Home Assistant.

2 thoughts on “The best temperature and humidity sensors for Home Assistant”

Leave a comment