These MiFlora Plant Monitor Sensors have been around for a while now and are well known among home automation enthusiasts. They communicate via BLE (Bluetooth Low Energy) by sending passive advertisements that can be picked up by anyting that listens in the vicinity.
They measure soil moisture, temperature, conductivity and also have an illuminance sensor pushing values in LUX. I recently reviewed an interesting Zigbee-based Soil Moisture sensor white labelled Tuya GXM-01. That one turned out to be a hit and miss, because different users reported different experience with the device. It’s also much much larger than the MiFlora Plant Sensors, which are more suitable for small, in-house plants.
Today I’m testing a newer version of the MiFlora Plant Sensor, also known as the Tuya version or Pink version. The first variant had a model number of HHCCJCY01 while this one is white labeled as HHCCJCY10. I bought it from AliExpress for $20, but it’s also available on Amazon US and Amazon EU.
- Model: HHCCJCY10
- Bluetooth: 5.0
- Battery: 3V CR2032 Button Battery
- Illuminance Max Reading: 10.000LUX
- Illuminance Accuracy: up to 100LUX
- Temperature Accuracy: 0.5°C
- Waterproof: IP5 rated, water spray resistant
- Dimensions: 132x25x13mm (73mm probe length)
The sensor came packaged in a flowery box containing the device itself and a detailed user manual. The case looks like something you expect to find in a girl’s accessories store. Which is a good thing, because it makes a great gift for your wife and will drive that WAF way up if she’s even a little into Home Automation.
The body of the device is identical to the previous model, the only difference being the new Tuya branded pink color. The probe is 73mm long, which is about 55% from the total length of the device. This leaves about 6cm sticking out above the soil, which is acceptable and not intrusive like the GXM-01 [Photo].
The battery [CR2032] is already preinstalled in the device, however before you can use it you need to pull out the protective film blocking the contacts. Removing the battery cover, you see a small orange rubber band spanning around the edges of the battery. This keeps water and moisture out, making the device IP5 waterproof.
I nearly broke the sensor trying to pry it open, the backplate was completely glued shut. The waterproof resistance is essentially ruined now, but I will try to glue it back together afterwards. The probe was part of the PCB inside the case, making the sensor a single unanimous piece.
Zooming in the PCB, you can see the Bluetooth Communication Module N52832 [Datasheet] developed by Nordic Semiconductors, a Norwegian company also supplying the Zigbee module in the Aqara FP1. These modules are also found across SwitchBot’s Product Lineup.
The illuminance sensor is protruding from the top of the PCB, which is covered by a small matte plastic measuring light in LUX. The whole boards reminds me of Aqara‘s recognizable black PCBs, a trademark color in their products.
Home Assistant Integration
The Xiaomi Flora HHCCJCY10 Sensor is easily integrated in Home Assistant via the Xiaomi BLE Integration. For the integration to automatically discover the sensor, you need to also have the Bluetooth integration activated. The Xiaomi BLE listens to Bluetooth broadcasts that the device makes by itself, allowing you to track the latest sensor values without needing to wake it up from deep sleep to poll and conserving its battery power.
It’s important to note, the initial discovery of the device requires a good battery installed in the device. The one that shipped with my particular sensor was fine, yours might not be so make sure you replace it if you are having issues.
Once you’ve successfully integrated the sensor, it advertises it’s readings via BLE once per minute, however the values are aggregated when using the Xiaomi BLE integration and reported in Home Assistant once per hour. It exposes the following entities via this Integration in HA:
If you need more frequent reporting, you can also integrate with the Passive BLE Monitor Integration. The sensor is also supported in this integration and exposes the same entities.
For now, the device is not officially supported in ESPHome with the esp32_ble_tracker component, because it doesn’t use the familiar Xiaomi MiBeacon Protocol but it’s own format. However, if you want to capture it’s BLE packets in a remote location (e.g. Garden) where you don’t have an active Blueooth tracker and would like to deploy an ESP32 board, you can do it in the following way:
- Use the BLE Gateway component to forward BLE Packets
- Passive BLE Monitor Integration in Home Assistant
- OpenMQTTGateway device
Once integrated, the sensor worked as I expected in Home Assistant. Readings were reactive to me pouring water inside the flower pot and reported after a while in HA. Here are some charts graphed with the History Explorer Card:
The Xiaomi MiFlora HHCCJCY10 Soil Sensor is nothing more and nothing less than I expected. It operates perfectly fine, pushing useful data to Home Assistant so you can monitor your favorite flowers and provide them with attention and care when needed.
If you do not have experience with BLE (Bluetooth Low Energy), it’s a very low power communication protocol requiring no active connection which means the device spends it’s life sleeping, only awake in short bursts when advertising it’s measurements.
I had no issues integrating this HHCCJCY10 sensor in Home Assistant, it’s supported in both Xiaomi BLE and Passive BLE Monitor Integration. For now, it’s a bit more involved to use an ESP32 board to track it’s BLE advertisements but still doable.
Old vs New (HHCCJCY01 vs HHCCJCY10)
The newer [HHCCJCY10] Xiaomi Plant Sensor is often called the Tuya version in the wild because of one thing, it’s supported in Tuya’s Smart Life app while it’s predecessor [HHCCJCY01] needs to be used with the HHCC Flower Care or MiHome Apps. It’s recognizable by it’s distinctive pink color, while the first version has a few colors available (green, white, black).
Bluetooth is another difference between the two, with the newer version relying on version Bluetooth 5.0 while the older soil sensor uses Bluetooth 4.2. This may seem like it’s an important difference on paper, however it’s not. 5.0 should have 4 times longer range than 4.2 by specs, which is simply not the case in these sensors. They work identically.
If you already own the earlier version of this plant soil sensor [HHCCJCY01], I see absolutely no reason why you should upgrade to this newer version [HHCCJCY10]. If you don’t own any plant soil sensors and are looking to get a few, whichever version you can get your hands will work fine.
Where to buy?
I remember these Xiaomi MiFlora Sensors were scattered across AliExpress and Amazon a year back, they were everywhere. Now only a few sellers hold them, so here are some links that will help me maintain smarthomescene.com if you make a purchase through them.