Xiaomi Bluetooth thermometers can be hacked because, of course, they can

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.

Xiaomi has a number of cheap and good-looking Bluetooth thermometers and hygrometers. One nice thing about these gadgets, is that ESPHome and an ESP32 can be used to feed the data directly in to Home Assistant, without the need of any apps. As it turns out, three of them can also be hacked.


Xiaomi Miaomiaoce

The Bluetooth enabled and hackable Xiaomi Miaomiaoce (MHO-C401)

Xiaomi Mijia Bluetooth Thermometer 2

The Bluetooth enabled and hackable Xiaomi Mijia Bluetooth Thermometer 2 (LYWSD03MMC)

You might also like

Qingping Monitor

The Bluetooth enabled and hackable Qingping Monitor CGG1-MIJIA

When buying one of the Bluetooth thermometers, intending to flash the custom firmware, take note of the model. There is, for example, also an identical looking CGG1H from Qingping, which isn’t capable of being flashed.

How to install custom firmware on Xiaomi Bluetooth thermometers

The installation of the custom firmware for the Xiaomi thermometers and hygrometer couldn’t be easier. You open the Telink Flasher for Mi Thermostat tool, wait for your browser to discover the device, and press connect.

You do not have to pair the device with your computer. Google Chrome, Microsoft Edge or Opera will take care of everything.

Once your Xiaomi thermometer connects, you click on the Do Activation button to start the decryption key process.

You can now install the custom firmware. Alternatively, you can also flash the original firmware, if you wish to do.

What the custom firmware for Xiaomi Bluetooth thermometers can do

Using the custom firmware, you can set an offset for the temperature and humidity sensory. If you have a sensor you know to be correct, you can compare it to the Xiaomi Bluetooth thermometers to figure out the exact offset.


Perhaps a more interesting feature of the custom firmware, is the ability to configure multiple pages. By ticking the according boxes, you can enable interval rotation between different data fields. Available options are the temperature/humidity, battery percentage, and current time.

You can also configure the smiley that is present on these devices. You can have it always display the same, happy looking smiley, or it can be set to react to the current temperature and humidity. The happy zone can be changed to fit your preference. Further configuration options can be found in the GitHub repository.


Xiaomi Bluetooth thermometer hardware modifications

To nobody’s surprise, there are also several hardware modifications that give can make the tiny Xiaomi thermometer even more useful. You can solder a reed switch on to the board, which allows it to act as a window/door sensor. Others have added rechargeable batteries and solar panels to their thermometer.

How to turn an old Android smartphone in to a security camera with IP Webcam

Is ESPresense the successor to ESP32-mqtt-room we’ve been waiting for?

Liam Alexander Colman, the author and maintainer of Home Assistant Guides.

About Liam Alexander Colman

Liam Alexander Colman has been using Home Assistant for various projects for quite some time. What started off 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.

Leave a comment

Share to...