Tech News
← Back to articles

Dev hacks Xiaomi's Smart Humidifier to free it from the cloud, now works with Home Assistant locally — custom firmware allows the product to evade planned obsolescence

read original related products more articles

Swedish-German developer Steffen has just shared the source code for a new firmware they created that allowed them to free a new Xiaomi humidifier from the cloud.

Smart home appliances are everywhere these days, and there's a good chance you've got one in your house right now. They make it easy to control your devices, allowing you to manage them wirelessly and set up routines that save you from life's mundanity. Unfortunately, they all require an internet connection to function; a non-negotiable for people who don't like the idea of products that ship with planned obsolescence, or who want localized automation.

The story begins like any good narrative: a need for the protagonist to achieve a goal or overcome hardship — only here, it's not some insurmountable, mythic odds; rather, a Xiaomi Mi Smart Antibacterial Humidifier. Steffen was looking for a humidifier that used the ESP8266 or ESP32 microcontroller since he could easily write custom firmware for those to work with ESPHome.

ESPHome is another framework that uses configuration files to enable complex yet powerful smart home setups. It takes the aforementioned ESP8266 or ESP32 microcontrollers and converts them into intelligent devices that integrate directly with smart home platforms. So, flashing purpose-written code on an MCU that powers otherwise locked-down appliances can unlock their full potential, making you the sysadmin.

Home Assistant Green, purpose-built hardware that makes using Home Assistant even easier, eliminating much of the setup (Image credit: Home Assistant)

The same people who make ESPHome also make Home Assistant, the other piece of the puzzle. Home Assistant is a self-hosted alternative to platforms like Google Home, while still being compatible with digital assistants. Think of it as the top-most layer in the home automation stack; it allows you to tie everything together locally. Very few humidifiers are natively supported by Home Assistant, so ESPHome is required here.

Now that the dev has shared the magic custom firmware, replicating the job is pretty simple. First, you disassemble the Xiaomi Humidifier to access its internals, where the Wi-Fi module is located. After separating it from the enclosure, you need to solder some wires to the chip’s UART interface. All the details are on Steffan's blog for anyone to follow along. The last step is to flash the new firmware built with ESPHome, which will communicate directly with Home Assistant.

(Image credit: stv0g's weblog)

Congratulations, you've now bypassed the manufacturer's servers and no longer need to rely on the cloud to ensure your appliance works properly. Home Assistant will give you all the control you need and then some to orchestrate the device without ever needing the internet. This ensures the brand can never remotely hinder what you own down the line; you can do whatever you want with what you paid for.

Stay On the Cutting Edge: Get the Tom's Hardware Newsletter Get Tom's Hardware's best news and in-depth reviews, straight to your inbox. Contact me with news and offers from other Future brands Receive email from us on behalf of our trusted partners or sponsors

... continue reading