Skip to content

WR308E (Vision Cloud): EDGE_CUT and OTS capabilities not detected due to missing border_cut capability check #1284

@rynchop

Description

@rynchop

Describe the issue

Description

On Worx Landroid Vision Cloud models (tested on WR308E, firmware 3.46.0+22),
the EDGE_CUT and ONE_TIME_SCHEDULE capabilities are never detected by the integration,
even though the device fully supports border cut (edge cut) as confirmed by the Worx app.

Root cause

In pyworxcloud/utils/devices.py, capabilities are detected only via result.one_time_schedule:

if result.one_time_schedule:
    self.capabilities.add(DeviceCapability.ONE_TIME_SCHEDULE)
    self.capabilities.add(DeviceCapability.EDGE_CUT)

However, Vision Cloud models use a different protocol and do not expose one_time_schedule
in the schedule data. Instead, the Worx cloud API explicitly returns a capabilities list
containing border_cut for these models.

Evidence

API response for WR308E includes:

"capabilities": [
    "border_cut",
    "maps",
    "rtk",
    "vision",
    ...
]

Impact

  • button.edge_cut entity is never created for Vision Cloud models
  • supported_features stays at 7 (MOWER + BUTTON + SELECT only), missing EDGE_CUT (128) and OTS (64)
  • Edge cut cannot be triggered from Home Assistant

Proposed fix

if result.one_time_schedule or 'border_cut' in (self.mower.get('capabilities') or []):
    self.capabilities.add(DeviceCapability.ONE_TIME_SCHEDULE)
    self.capabilities.add(DeviceCapability.EDGE_CUT)

This one-line fix is backward compatible — existing models using one_time_schedule
are unaffected, and Vision Cloud models gain correct capability detection.

Environment

  • Integration version: 7.0.5
  • HA version: 2026.5.x
  • Device: Worx Landroid Vision Cloud 800 (WR308E)
  • Firmware: 3.46.0+22
  • pyworxcloud version: checked via pyworxcloud.__file__

What version of Home Assistant Core has the issue?

2026.5.4

What was the last working version of Home Assistant Core?

No response

What version of the Landroid Cloud integration do you have installed

Integration version: 7.0.5

What type of installation are you running?

Home Assistant OS

What make of mower does this concern?

Worx Landroid

Which model is the mower used for this integration?

Worx WR308E

Diagnostics file

No response

If you could not provide diagnostics, explain why

No response

Relevant log entries

2026-05-31 15:57:42.692 INFO (MainThread) [custom_components.landroid_cloud] 
Landroid Cloud integration - Version: 7.0.5

2026-05-31 15:57:44.539 DEBUG (MainThread) [pyworxcloud.api] Matching models for mower 'Vision Cloud'
2026-05-31 15:57:44.551 DEBUG (MainThread) [pyworxcloud.utils.devices.decode_data] Data decoding for Vision Cloud started
2026-05-31 15:57:44.563 DEBUG (MainThread) [pyworxcloud.utils.devices.decode_data] Data for Vision Cloud was decoded
2026-05-31 15:57:44.563 DEBUG (MainThread) [pyworxcloud.API_Fetch] API data refreshed for mower 'Vision Cloud'

Additional information

lawn_mower.robot_worx
supported_features: 7
While the expected result after fix would be 7 + 64 + 128 = 199

"capabilities": ["border_cut", "maps", "rtk", "vision", ...]
device.capabilities.check(DeviceCapability.EDGE_CUT) → False (without patch)
device.capabilities.check(DeviceCapability.EDGE_CUT) → True (with patch)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Worx LandroidWorx Landroid device specificbugSomething isn't workingdiagnostics missingIssue is missing diagnostics and no reason was providedpyworxcloudIndicates that this issue is from pyworxcloud

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions