ecovacs-robot-control

Control Ecovacs/DEEBOT robot vacuums via the Ecovacs IoT API. Use when the user wants to control a robot vacuum, check battery, start/stop/pause cleaning, return to dock, check clean status, set suction/water level, manage schedules, check consumables, or control auto-empty station. Covers all mainstream Ecovacs protocols including clean_V2, charge, getBattery, getCleanInfo_V2, getStats, getSpeed/setSpeed, getWaterInfo/setWaterInfo, getWorkMode/setWorkMode, getLifeSpan, getAutoEmpty/setAutoEmpty, getCachedMapInfo, getMapSet, getSched_V2/setSched_V2.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "ecovacs-robot-control" with this command: npx skills add 1209823208/skill-create-pip

Ecovacs Robot Control

Auth Flow

Three-step flow: Login → Device List → Send Command

Full API details in references/api.md. Core script in scripts/ecovacs.py.

Session Management

Session (token + userid + resource) is stored in ~/.ecovacs_session.json after login. Always load_session() before calling device APIs. Re-login if token expired (errno 3000).

Critical Rule

toType = device's class field from device list (e.g. o0lqjm).
NOT "device" or "USER" — this is the #1 cause of errno:3003 permission denied.


Using the Script

# First time login
python3 scripts/ecovacs.py login <phone> <md5_or_plain_password>

# List all devices (shows did, status, name)
python3 scripts/ecovacs.py devices

# Check battery (use did or nick)
python3 scripts/ecovacs.py battery <did>

# Check clean status
python3 scripts/ecovacs.py status <did>

# Start full-house auto clean
python3 scripts/ecovacs.py clean <did> start

# Pause / resume / stop
python3 scripts/ecovacs.py clean <did> pause
python3 scripts/ecovacs.py clean <did> resume
python3 scripts/ecovacs.py clean <did> stop

# Return to dock
python3 scripts/ecovacs.py charge <did>

# Send any arbitrary command
python3 scripts/ecovacs.py cmd <did> getLifeSpan '{"type":"brush,sideBrush,heap"}'
python3 scripts/ecovacs.py cmd <did> setSpeed '{"speed":1}'
python3 scripts/ecovacs.py cmd <did> getWorkMode '{}'

Direct API Calls

When using tools directly (not script), follow this pattern:

# 1. Login
session = login(phone, md5(password))

# 2. Get devices
devices = get_devices(session)
device = next(d for d in devices if "T50" in d["deviceName"])

# 3. Send command
result = send_cmd(session, device, "clean_V2", {
    "act": "start",
    "content": {"type": "auto", "count": 1}
})

See references/api.md for full protocol reference:

  • Auth & device discovery — login, resource generation, device list fields
  • All command payloads — clean_V2, charge, battery, stats, speed, water, workmode, lifespan, autoEmpty, maps, schedules
  • State/event codes — error codes, evt codes, clean states

Common Protocols Quick Reference

GoalcmdNamekey body.data fields
开始全屋清扫clean_V2{act:"start", content:{type:"auto",count:1}}
区域清扫clean_V2{act:"start", content:{type:"spotArea",value:"mssid1,mssid2"}}
暂停/继续/停止clean_V2{act:"pause/resume/stop"}
回充charge{act:"go"}
查电量getBattery{}
查清扫状态getCleanInfo_V2{}
查本次面积时长getStats{}
查/设吸力getSpeed/setSpeed{speed:0} (1000静音/0标准/1强劲/2超强)
查/设水量getWaterInfo/setWaterInfo{amount:2} (1低/2中/3高/4超高)
查/设扫拖模式getWorkMode/setWorkMode{mode:0} (0边扫边拖/1仅扫/2仅拖/3先扫后拖)
查耗材getLifeSpan{type:"brush,sideBrush,heap,filter"}
手动集尘setAutoEmpty{act:"start"}
查地图列表getCachedMapInfo{}
查房间区域getMapSet{mid:"<map_id>",type:"ar"}
查预约getSched_V2{type:1}

Error Handling

errnomeaning
3000Token expired → re-login
3003Permission denied → check toType = device class
30000Device response timeout → device offline
0 (body.code)Success

Accounts (China domestic)

  • Login URL: https://api-app.dc-cn.cn.ecouser.net/api/users/user.do
  • org: ECOCN, country: CN
  • Password: MD5 hex of plaintext

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

Chrome Use

Use chrome-use when standard web access (fetch/web search) fails due to Cloudflare challenges, CAPTCHAs, JavaScript-rendered content, or bot detection — or w...

Registry SourceRecently Updated
Automation

Agentchat Skill Publish

The messaging platform for AI agents. Send DMs, join groups, manage contacts, and check presence.

Registry SourceRecently Updated
Automation

Draft0

Official skill for interacting with Draft0, the Medium for Agents.

Registry SourceRecently Updated
Automation

ifly-pdf-image-ocr

ifly-pdf&image-ocr skill supporting both image OCR (AI-powered LLM OCR) and PDF document recognition. Use when user asks to OCR images, extract text from ima...

Registry SourceRecently Updated