Skip to content

Add support for DEEBOT T90 PRO OMNI#1561

Merged
edenhaus merged 1 commit into
DeebotUniverse:devfrom
assi681:assist/add-T90-pro-omni
May 6, 2026
Merged

Add support for DEEBOT T90 PRO OMNI#1561
edenhaus merged 1 commit into
DeebotUniverse:devfrom
assi681:assist/add-T90-pro-omni

Conversation

@assi681

@assi681 assi681 commented Apr 27, 2026

Copy link
Copy Markdown
Contributor

Adds support for the DEEBOT T90 PRO OMNI, device class twunby.

This follows the new-device guidance from #612. I started from the closest OMNI-style profiles, then adjusted the capabilities based on real-device smoke testing.

Device info

From Home Assistant logs:

  • deviceName: DEEBOT T90 PRO OMNI
  • class: twunby
  • company: eco-ng
  • model: SHAKESPEARE_AM_BLK
  • UILogicId: shakespeare_ww_h_shakespeareh5
  • materialNo: 110-2522-0200

Verification

Tested against a real T90 PRO OMNI.

Confirmed working:

  • Device is discovered as supported
  • GetBattery
  • GetChargeState
  • GetWorkState
  • GetSweepMode
  • GetStationState
  • Other read-only getters used in the profile, including fan speed, water info, work mode, continuous cleaning, clean logs/count, child lock, mop auto-wash frequency, OTA, TrueDetect, voice assistant, volume, auto-empty, stats, and lifespan

Not supported by this model during smoke testing:

  • getCleanInfo
  • getCleanInfo_V2
  • getCarpertPressure
  • getMultiMapState
  • getAdvancedMode

Because of that, this profile uses GetWorkState for state/station refresh and does not include the unsupported T50-derived capabilities.

Comment thread tests/hardware/test_init.py Outdated
Register the twunby hardware profile with capabilities verified
against a real device. The model uses getWorkState for
state/station refresh and supports sweep mode, while similar
T50-derived clean info and multimap/carpet boost capabilities
are not supported.
@assi681 assi681 force-pushed the assist/add-T90-pro-omni branch from 363e168 to f7f9f23 Compare April 29, 2026 20:01
@assi681 assi681 requested a review from edenhaus April 29, 2026 20:03
@edenhaus edenhaus added the pr: new-feature PR, which adds a new feature label May 6, 2026
@edenhaus edenhaus enabled auto-merge (squash) May 6, 2026 17:22
@codecov

codecov Bot commented May 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.95%. Comparing base (8980d8c) to head (f7f9f23).
⚠️ Report is 4 commits behind head on dev.

Additional details and impacted files
@@            Coverage Diff             @@
##              dev    #1561      +/-   ##
==========================================
+ Coverage   94.92%   94.95%   +0.03%     
==========================================
  Files         156      157       +1     
  Lines        6105     6144      +39     
  Branches      350      350              
==========================================
+ Hits         5795     5834      +39     
  Misses        248      248              
  Partials       62       62              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@codspeed-hq

codspeed-hq Bot commented May 6, 2026

Copy link
Copy Markdown

Merging this PR will not alter performance

✅ 113 untouched benchmarks


Comparing assi681:assist/add-T90-pro-omni (f7f9f23) with dev (8980d8c)

Open in CodSpeed

@edenhaus edenhaus merged commit 3ed8e86 into DeebotUniverse:dev May 6, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: new-feature PR, which adds a new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants