A Linux daemon that collects data from Xiaomi Mi Flora plant sensors via Bluetooth and publishes it to an MQTT broker for smart home integration.
miflora-mqtt-daemon is a Linux service written in Python that reads data from Xiaomi Mi Flora Bluetooth plant sensors and publishes it to an MQTT broker. It solves the problem of integrating these affordable, battery-powered sensors into open-source home automation systems by providing a reliable, configurable bridge that requires no cloud services or proprietary apps.
DIY smart home enthusiasts, gardeners, and IoT hobbyists who use platforms like Home Assistant or openHAB and want to monitor plant health or environmental conditions with low-cost Xiaomi sensors.
Developers choose this daemon because it's lightweight, open-source, and highly configurable, supporting multiple MQTT standards out of the box. It eliminates the need for proprietary hubs, allows full local control, and integrates seamlessly with popular home automation ecosystems.
Linux service to collect and transfer Xiaomi Mi Flora plant sensor data via MQTT to your smart home system, with cluster support 🌱🌼🥀🏡🌳
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports multiple payload formats like JSON, Homie Convention, and HomeAssistant Discovery, enabling seamless integration with platforms such as openHAB and ThingsBoard, as detailed in the README's features section.
Can run as a systemd service or in Docker containers, providing flexibility for different environments, with clear instructions in the installation and Docker sections.
Operates locally without cloud dependencies, using open MQTT standards, which aligns with the project's philosophy of interoperability and avoids proprietary ecosystems.
Publishes announcement messages for auto-configuration in compatible smart home systems like Home Assistant, reducing manual setup effort, as mentioned in the key features.
Relies on Bluetooth Low Energy with limited range, and requires external tools like gatttool from the bluez package, which can lead to connection issues in environments with interference or when sensors are distant.
Requires manual configuration of config.ini, scanning for sensors with hcitool, and setting up an MQTT broker, which might be daunting for users unfamiliar with Linux, Bluetooth, or MQTT protocols.
Only works with Xiaomi Mi Flora and similar sensors (e.g., VegTrug), not a generic BLE bridge, restricting its use to specific devices despite community hacks for other purposes.