Support o073ti (X11 Pro Omni): strict MapSet_V2 parsing, freeClean agentInfo area cleaning, and new lifespan types#1463
Open
33Moka33 wants to merge 6 commits intoDeebotUniverse:devfrom
Open
Conversation
added 5 commits
March 3, 2026 17:57
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
o073ti(DEEBOT X11 PRO OMNI)getMapSet_V2room subset parsing to known formats (len == 10orlen == 11)freeCleanarea cleaning command withagentInfopayload support for newer robotso073tiarea cleaning capability to the newfreeClean + agentInfocommandProblem
For DEEBOT X11 PRO OMNI (
class: o073ti):clean_V2withtype=freeCleanandagentInfoChanges
1) Hardware support
o073tihardware profile:deebot_client/hardware/o073ti.py2) MapSet_V2 room subsets
10or11(instead of broad>= 10)3) freeClean area cleaning for newer robots
CleanAreaFreeCleanAgentInfo:deebot_client/commands/json/clean.pyclean_V2withcontent.type = "freeClean"content.value:"<count>,<room_id>""<count>,<room_id>;<count>,<room_id>..."cleanings: intcleanings: list[int]agentInfopayload for compatible devices4) Wire command into command registry and hardware capability
deebot_client/commands/json/__init__.pyo073ticlean area capability toCleanAreaFreeCleanAgentInfo:deebot_client/hardware/o073ti.py5) Lifespan types
LifeSpanenum values:heavyDutyCleaningSolutiondustBucketdustContainerFilterdeebot_client/events/__init__.pyTests
tests/commands/json/map/test_init.pytests/commands/json/test_clean.pyfreeCleanvalue format (single/multi-room)agentInfoinjectionagent_infooverridestests/hardware/test_init.pyo073tiusesCleanAreaFreeCleanAgentInfotests/commands/json/test_life_span.pyReal device validation (X11 Pro Omni)
start,pause,stop,return_to_base)freeClean + agentInfocontent.valueformat