IoT & smart home

miflora-mqtt-daemon - MQTT Bridge for Xiaomi Mi Flora Plant Sensors

mifloramqttdaemon is a Linux Python service for collecting data from Xiaomi Mi Flora plant sensors and forwarding that data to an MQTT broker for smart home use. The repository describes it as a bridge between...

miflora-mqtt-daemon - MQTT Bridge for Xiaomi Mi Flora Plant Sensors

miflora-mqtt-daemon is a Linux Python service for collecting data from Xiaomi Mi Flora plant sensors and forwarding that data to an MQTT broker for smart home use. The repository describes it as a bridge between inexpensive BLE plant sensors and automation platforms such as Home Assistant and openHAB.

That combination is the reason the project is still interesting: relatively cheap plant sensors become part of a broader home automation system instead of staying locked inside a phone app. Once moisture, light, temperature, conductivity and battery readings are published through MQTT, they can be displayed, automated and combined with the rest of a smart home setup.

Why this small bridge matters

Plant sensors are most useful when their readings become visible at the right moment. A phone app can show the state of a plant when someone remembers to open it, but an MQTT bridge turns the same sensor into a continuous data source.

For Home Assistant users, that difference is practical. Moisture can become a dashboard tile, a notification trigger or part of a routine. Light readings can help explain why a plant is struggling. Battery readings can prevent silent failures. The hardware remains simple, but the context around it becomes much richer.

What the repository describes

The project queries Mi Flora-compatible sensors over Bluetooth Low Energy and publishes the readings to an MQTT broker. The README lists support for readings such as temperature, light, moisture, conductivity and battery level.

It also describes several integration-oriented output formats, including JSON payloads, Homie-style messages, the mqtt-smarthome proposal and Home Assistant MQTT discovery format. That matters because the daemon is not just a one-off polling script; it is designed to sit between sensors and multiple smart home ecosystems.

The daemon can run continuously in the background, including as a systemd service on Linux systems. The repository also includes Docker-related instructions for users who prefer to package the service that way.

Why Home Assistant users should care

Home Assistant already works well with MQTT-based devices, so miflora-mqtt-daemon fits naturally into installations where Mosquitto or another broker is already present. The value is not only that the sensors can be read, but that the data arrives in a format Home Assistant can understand.

The Home Assistant discovery support is especially useful because it can reduce the amount of manual entity configuration required. For a household with several plants, that can make the difference between a small weekend experiment and a setup that is easy enough to keep running.

This is also where the cheapness of Mi Flora-style sensors becomes important. A single premium plant monitor may be nice, but a collection of affordable sensors can cover more rooms, pots and conditions. MQTT then ties those individual readings into one consistent interface.

Best-fit scenarios

miflora-mqtt-daemon is a good fit for people who already operate some kind of smart home hub and are comfortable running a small Linux service. A Raspberry Pi near the plants is a natural host, especially because the sensors use Bluetooth Low Energy and range can be limited.

It is also a good match for people who want plant care to become observable rather than purely manual. Instead of guessing whether the soil is dry, the system can report moisture. Instead of wondering whether a window location is bright enough, the system can track light. Instead of checking every sensor by hand, Home Assistant can show the state in one place.

For tinkerers, the MQTT approach keeps the setup flexible. The same readings can feed dashboards, automations, historical charts or other software that subscribes to the broker.

Adoption notes before installing

The project expects an MQTT broker for normal smart home integration. That is an extra component, but in many Home Assistant deployments it is already part of the stack or easy to add.

Bluetooth placement is the practical constraint to think about early. The README notes that Mi Flora sensors have rather limited BLE range, so the host running the daemon should be close enough to the sensors. Large homes, thick walls and outdoor plants may require more planning than the software setup itself.

The repository also notes that at least one sensor must be added to the configuration. That makes sense for a daemon-style tool: once configured, it can keep running in the background, but the sensor names and addresses need to be defined first.

Caveats and limits

This is a community project, not an official Xiaomi product. The README explicitly includes a disclaimer that the project is not affiliated with, authorized, maintained, sponsored or endorsed by Xiaomi.

The setup is also more technical than installing a phone app. Users need to be comfortable with Linux packages, Bluetooth tooling, a configuration file and MQTT. That trade-off is typical for self-run smart home integrations: more control and flexibility, but more responsibility for keeping the small pieces working.

Another practical caveat is freshness of the repository. The project remains useful as source material and as a proven pattern, but anyone adopting it today should review issues, dependencies and compatibility with their current operating system, Python environment and Home Assistant MQTT setup before relying on it for a long-term installation.

Editorial verdict

miflora-mqtt-daemon is compelling because it turns an inexpensive, narrow-purpose sensor into a useful smart home signal. The technical idea is simple: read BLE plant data, publish it to MQTT and let Home Assistant or another automation platform do the rest.

That simplicity is the strength. It avoids trying to become a full plant-care platform and instead focuses on the bridge that many smart home users actually need. For people already running Home Assistant, MQTT and a small Linux host, it can make Mi Flora sensors feel much more capable than their price suggests.

The main decision is whether the added infrastructure is worth it. For one plant, the phone app may be enough. For multiple plants, dashboards, alerts and automation experiments, the MQTT route is far more interesting.

Learn more at: https://github.com/thomdietrich/miflora-mqtt-daemon

Share

X LinkedIn