Skip to Content

Review XIAO Soil Moisture Sensor

Review XIAO Soil Moisture Sensor

The XIAO Soil Moisture Sensor is a compact and easy-to-use device designed to monitor soil conditions and support smart gardening projects. It is built around the XIAO ESP32-C6 microcontroller and comes preloaded with ESPHome firmware, making it ready for seamless integration with Home Assistant. Once connected, it provides real-time soil moisture data that can be used for monitoring or automating plant care.

The sensor uses a resin-coated capacitive probe that is resistant to corrosion and suitable for long-term use in soil. It operates on a single AA battery, which ensures low power consumption and long battery life. A built-in button allows users to trigger measurements manually, while the device automatically adjusts its reporting intervals depending on soil moisture levels.

Where to Buy

XIAO Soil Moisture Sensor

Makerguides is a participant in affiliate advertising programs designed to provide a means for sites to earn advertising fees by linking to Amazon, AliExpress, Elecrow, and other sites. As an Affiliate we may earn from qualifying purchases.

The XIAO Soil Moisture Sensor

The XIAO Soil Moisture Sensor combines the functionality of a robust capacitive soil probe with the intelligence of an onboard microcontroller, enabling it to operate as a fully integrated smart sensing unit. At its core, the sensor is powered by the XIAO ESP32-C6, a compact but powerful microcontroller that features Wi-Fi 6 and Bluetooth 5.0 connectivity.

XIAO Soil Moisture Sensor
XIAO Soil Moisture Sensor

This integration allows the sensor to communicate directly with platforms such as Home Assistant without the need for additional control boards or external modules. The ESP32-C6 also ensures ultra-low-power operation, an essential characteristic for a device that is designed to run for extended periods on a single AA battery. The picture below shows the internal components of the XIAO Soil Moisture Sensor, with the Wi-Fi Antenna, the XIAO ESP32 board, and the capacitive sensing element:

Components of the XIAO Soil Moisture Sensor
Components of the XIAO Soil Moisture Sensor

Sensing Element

The sensing element of the device is a resin-coated capacitive probe. Capacitive moisture sensing relies on changes in the dielectric constant of the soil as water content varies. Unlike resistive probes, which pass current through the soil and are prone to corrosion and electrolysis, the capacitive design eliminates direct electrical contact with the soil medium. The resin coating provides a protective barrier against moisture ingress and environmental degradation.

Enclosure

The enclosure of the XIAO Soil Moisture Sensor is 3D-printed and splash-resistant but not suitable for outdoor use. There is a gap around button at the top, which would allow rainwater to enter and the opening for the LED is also not sealed. There is also no rubber sealing between the two parts of the enclosure.

Button of the XIAO Soil Moisture Sensor
Button of the XIAO Soil Moisture Sensor

Button

An integrated button on the housing allows users to trigger immediate soil moisture readings on demand. By default, however, the device operates in an adaptive reporting mode. When soil moisture levels are within normal ranges, measurements are taken and reported approximately every eight hours. As the soil begins to dry out, the reporting frequency increases to once per hour, and when the moisture level drops critically low, updates are transmitted every fifteen minutes.

Top of XIAO Soil Moisture Sensor
Button of XIAO Soil Moisture Sensor

This strategy balances power efficiency with timely responsiveness. The measurement intervals, along with the thresholds for “normal,” “almost dry,” and “dry” soil conditions, can be calibrated through a simple multi-press sequence on the button. Calibration involves placing the sensor in dry soil and then wet soil, with onboard LED indicators providing feedback during the process.

LED

The integrated three-color LED signals the moisture level of the soil. A green light indicates that the soil moisture is optimal, meaning no additional watering is required. A yellow light signals that the soil moisture is beginning to decline, suggesting you prepare to water soon. And a red light shows that the soil moisture is critically low, indicating an immediate need for watering.

Color codes for soil moisture levels
Color codes for soil moisture levels (source)

ESPHome

Because the ESP32-C6 runs pre-flashed ESPHome firmware, the sensor can be discovered automatically in Home Assistant. This plug-and-play functionality makes it possible to integrate soil data directly into dashboards, logs, and automations. For example, moisture data can trigger irrigation systems, send notifications, or adjust climate settings in a greenhouse. The use of ESPHome also ensures that the firmware can be updated over the air, enabling future enhancements or bug fixes without physical intervention.

Information on how to configure and integrate the XIAO Soil Moisture Sensor in Home Assistant can be found in Seeed Studio’s Getting Started with XIAO Soil Moisture Sensor Wiki.

Power Supply

The entire unit is designed with low power operation in mind. Running on a single AA battery, the sensor avoids the need for frequent maintenance. Power consumption is minimized by deep sleep modes of the ESP32-C6, short measurement cycles, and the adaptive reporting scheme. In practical terms, this probably allows the device to remain operational for several months but I did not test this and there is no report on running time.

Holder for AA Battery of XIAO Soil Moisture Sensor
Holder for AA Battery of XIAO Soil Moisture Sensor

Note that the 3D-printed enclosure consists of two halves that snap together. In the long run this might be a mechanical weakness, since frequent opening and closing to replace the battery could damage the enclosure.

Technical Specifications

FeatureSpecification
MicrocontrollerXIAO ESP32-C6
Wireless ConnectivityWi-Fi 6, Bluetooth 5.0
FirmwarePreloaded ESPHome, OTA updatable
Power SupplySingle AA battery
Probe TypeCapacitive soil moisture probe
Probe CoatingResin-coated, corrosion-resistant
HousingSplash-resistant enclosure
Measurement StrategyAdaptive intervals: 8 h (normal), 1 h (drying), 15 min (critically dry)
CalibrationButton-triggered, with LED feedback (multi-press procedure)
Manual MeasurementButton press triggers immediate reading
IntegrationNative Home Assistant discovery via ESPHome
IndicatorsMulti-color LED (green = normal, yellow = almost dry, red = dry)

Comparison with Resistance-Based and Standard Capacitive Soil Moisture Sensors

Traditional soil moisture sensors can generally be divided into two categories: resistance-based sensors and capacitive sensors without integrated microcontrollers. The photo below shows the XIAO Soil Moisture Sensor (with integrated MCU and circuits) in comparison to a resistance-based and a traditional capacitive sensor:

Comparison of Soil Moisture Sensors
Comparison of Soil Moisture Sensors

Considering all required components (LM393, MCU), the traditional resistance-based and capacitive sensors are of similar size as the XIAO Soil Moisture Sensor.

Resistance-based sensors

Resistance-based sensors operate by passing a small current between two exposed metal probes inserted into the soil. As the soil moisture changes, the resistance between the probes also changes. While inexpensive, these sensors suffer from a critical drawback: the exposed electrodes corrode quickly in moist soil, leading to inaccurate readings and a short operational lifespan. See photo below:

Corroded resistance-based sensor
Corroded resistance-based sensor (source)

Additionally, they require a comparator circuit (LM393) and an external microcontroller (MCU) to interpret the analog signal, while these component are already integrated in the XIAO Soil Moisture Sensor.

Capacitive sensors

Capacitive sensors without integrated microcontrollers represent an improvement over resistive designs. These sensors measure the dielectric constant of the soil via a capacitive probe, reducing the corrosion problem since there is no direct current flowing through the soil. However, most low-cost capacitive probes are still unsealed and remain vulnerable to corrosion at solder joints or exposed copper traces. See the following photo for example:

Corroded capacitive sensor (source)

They also require an external microcontroller, to read the analog output, process the signal, and transmit data. The XIAO Soil Moisture Sensor has the microcontroller already integrated.

XIAO Soil Moisture Sensor

The XIAO Soil Moisture Sensor integrates both the sensing probe, measurement circuit and the microcontroller into a single unit. The resin-coated probe provides greater resistance to environmental wear than bare or partially coated alternatives. The built-in ESP32-C6 removes the need for external boards or wiring, allowing direct wireless communication and immediate integration into smart home ecosystems.

Conclusions

The XIAO Soil Moisture Sensor is a capacitive moisture sensor with a built-in XIAO ESP32-C6 microcontroller and comes preloaded with ESPHome firmware for easy integration with Home Assistant.

3D-printed Case

As of September 2025 Seeed Studio’s product page states that the XIAO Soil Moisture Sensor is an early build beta product and comes with a 3D-printed enclosure. Currently, this a weakness since the case is difficult to open and close, which is required to replace the battery. The 3D-printed button cover breaks easily and the case is not watertight, which prohibits outdoor use.

However, the design for the case is freely available on Thingiverse: XIAO Soil Moisture Sensor 3D file, and you also can print your own, improved version. I would add a separate opening for the battery holder, to simplify the battery replacement. Also a separate part for the button that seals the case a bit more, would be an improvement.

Code

The XIAO Soil Moisture Sensor is great, if you are looking for an easy integration with Home Assistant but it would be nice if there would be Arduino example code on how to read the sensor data. For instance, I would like to control the deep-sleep myself and send data via MQTT.

Luckily, the schematics of the sensor is available at XIAO Soil Moisture Sensor SCH, from which you could derive an idea how to implement your own code. By the way, if you need to reflash the original, default firmware, go to https://gadgets.seeed.cc/

Other Sensors

If you want to use one of the traditional capacitive sensors or need more information about capacitive sensors, have a look at our How To Use A Capacitive Soil Moisture Sensor With Arduino. Also the Automatic plant watering system with Arduino IoT Cloud tutorial might be of interest. Finally, for more comprehensive measurements of soil quality, see the Arduino And NPK Sensor Project, where we measure Nitrogen, Phosphorus, and Potassium concentrations.

Feel free to leave any questions in the comment section.

Happy Tinkering 😉