
Building a Smarter Lawn: Home Assistant with Worx Landroid and Ecowitt
A robot lawn mower is one of those upgrades that quietly improves everyday life. It saves time, keeps your lawn tidy, and works on its own schedule. But out of the box, most robot mowers still behave a bit… blindly. They follow fixed schedules without considering the weather or actual lawn conditions.
That’s where Home Assistant comes in.
Integrate a Worx Landroid mower with a local Ecowitt weather station. This combination creates a smarter system. It reacts to real-world conditions. The result is simple: your mower runs when it should and stays parked when it shouldn’t.
This post walks through the components, how they fit together, and a practical automation you can use right away.
The Components
1. Home Assistant
Home Assistant is the brain of the system. It ties everything together and lets you create automations based on real-time data.
If you’re already running it, you’re set. If not, a Raspberry Pi or a small server is more than enough. The key advantage here is local control and flexibility. You’re not locked into cloud-only logic.
2. Worx Landroid (Cloud Integration)
The Worx Landroid mower can be integrated into Home Assistant using its cloud API. Once connected, you typically get access to:
- Current mower status (mowing, charging, idle)
- Battery level (%)
- Error states
- Start and return-to-base commands
This means you can fully control when the mower runs, instead of relying only on its built-in schedule.
Important note: since this uses the cloud API, it depends on internet access. For most users, that’s acceptable, but it’s worth knowing.
3. Ecowitt Weather Station (Local Integration)
Ecowitt weather stations are excellent for local data. Unlike many weather services, they give you real measurements from your own garden.
With the Ecowitt integration in Home Assistant, you can access:
- Temperature (°C)
- Rain rate (mm/h)
- Daily rainfall (mm)
- Humidity (%)
- Wind speed (m/s)
The key benefit here is immediacy. If it starts raining, your system knows instantly. No delay, no guesswork.
Why Combine These?
A robot mower shouldn’t run when:
- It’s raining
- The grass is soaked
- The ground is too soft
- Wind or storms could interfere
Running a mower in bad conditions leads to:
- Uneven cutting
- Mud tracks
- Clogged blades
- Long-term lawn damage
By combining mower control with real-time weather data, you avoid all of that.
Smart Lawn Strategy
Here’s a simple but effective approach:
- Only mow when:
- No rain is detected
- Rain hasn’t occurred recently
- Wind is within reasonable limits
- Pause or return the mower if:
- Rain starts
- Conditions worsen
- Resume mowing automatically when conditions improve
This creates a dynamic schedule instead of a fixed one.
Example Automation
Let’s build a practical automation:
Goal:
Start mowing only if:
- No rain is currently falling
- Rainfall in the last hour is minimal
- Wind speed is below 8 m/s
Assumptions
You have these entities in Home Assistant:
sensor.ecowitt_rain_ratesensor.ecowitt_hourly_rainsensor.ecowitt_wind_speedlawn_mower.mower
(Your entity names may differ slightly.)
YAML Automation Example
alias: Start Landroid When Weather Is Good
description: Start mower only when conditions are suitable
trigger:
- platform: time
at: "10:00:00"condition:
- condition: numeric_state
entity_id: sensor.ecowitt_rain_rate
below: 0.2 # mm/h (essentially dry) - condition: numeric_state
entity_id: sensor.ecowitt_hourly_rain
below: 0.5 # mm in the last hour - condition: numeric_state
entity_id: sensor.ecowitt_wind_speed
below: 8 # m/saction:
- action: lawn_mower.start_mowing
target:
entity_id: lawn_mower.mower
Stop Mowing When It Starts Raining
Now let’s handle the opposite case.
If rain starts while the mower is running, send it back to base.
alias: Stop Landroid When Rain Starts
description: Return mower to base if rain begins
trigger:
- platform: numeric_state
entity_id: sensor.ecowitt_rain_rate
above: 0.2condition:
- condition: lawn_mower.is_mowing
target:
entity_id: lawn_mower.mower
options:
- service: action: lawn_mower.dock
target:
entity_id: lawn_mower.mower
mode: single
Making It Even Smarter
Once you have the basics working, you can refine things further.
1. Soil Drying Delay
Even after rain stops, the lawn might still be wet. Add a delay by checking rainfall over the last few hours:
- Use a statistics sensor
- Or track accumulated rain over time
2. Temperature-Based Mowing
Grass grows differently depending on temperature. You could:
- Increase mowing frequency when temperatures are above 15 °C
- Reduce it below 10 °C
3. Battery Optimization
Instead of starting at a fixed time, trigger mowing when:
- Battery is above 90%
- Weather conditions are good
4. Time Window Control
You probably don’t want the mower running at night.
Add a time condition:
- condition: time
after: "09:00:00"
before: "18:00:00"
Real-World Results
Once this is set up, the difference is noticeable:
- The mower avoids wet grass automatically
- The lawn looks more even
- Less wear on the machine
- No need to manually adjust schedules
It turns a “set and forget” device into a responsive system that actually adapts to your garden.
Final Thoughts
The real value here isn’t just automation. It’s context.
A robot mower with a fixed schedule is convenient. A mower that understands its environment is something else entirely.
By combining Home Assistant, Worx Landroid, and Ecowitt, you get:
- Local, real-time decision making
- Better lawn health
- Less manual intervention
- A system that improves over time
And the best part is that you can keep refining it. Add more sensors, tweak thresholds, and adjust behavior as you learn what works best for your lawn.
Some of the links in this article are "affiliate links", a link with a special tracking code. This means if you click on an affiliate link and purchase the item, we will receive an affiliate commission. The price of the item is the same whether it is an affiliate link or not. Regardless, we only recommend products or services we believe will add value to our readers. By using the affiliate links, you are helping support our Website, and we genuinely appreciate your support.