Skip to content

v1.8.0

Choose a tag to compare

@jeppesens jeppesens released this 22 Mar 19:26
e18f18d

v1.8.0

New Features

Cleaning Parameter Controls
Fine-grained cleaning settings exposed as select entities — shown only when supported by your device firmware:

  • Suction Level — Quiet, Standard, Turbo, Max, Boost_IQ
  • Cleaning Mode — Vacuum, Mop, Vacuum and mop, Mopping after sweeping
  • Water Level — Low, Medium, High
  • Cleaning Intensity — Normal, Narrow, Quick
  • Mop Intensity — Quiet, Automatic, Max (Matter-compatible alias for Water Level)

DPS 154 Support
Full protobuf parsing of the CleanParam message from newer device firmware, extracting cleaning mode, fan speed, water level, corner cleaning, carpet strategy, and smart mode — with 100% backward compatibility for older models.

Matter Hub Compatibility
Designed to work with home-assistant-matter-hub for exposing your Eufy vacuum to Apple Home, Google Home, and other Matter ecosystems:

  • Mop Intensity entity uses Matter-standard option names
  • Room segments exposed with guaranteed unique names
  • Dedicated battery sensor entity for Matter bridge discovery

Segment Change Detection
When the vacuum's room map changes (rooms added, removed, or renamed), a Repair issue is raised in Home Assistant under Settings > System > Repairs. This prevents stale room names from breaking automations, especially when using the Matter bridge.

Dedicated Battery Sensor
Standalone battery entity required by newer versions of Home Assistant.

Improvements

  • Dock configuration controls: Wash Frequency Mode, Dry Duration, Auto Empty Mode
  • Work mode tracking (Auto, Room, Zone, Spot, etc.) from DPS 153
  • Trigger source detection (app, button, schedule, robot, remote control)
  • Per-device segment storage using HA Store (migrated from config entry data)
  • Multi-device setup: segment migration safely skipped to avoid cross-device corruption

Bug Fixes

  • Fixed suction level entity showing unavailable until DPS 154 received — now also tracks fan speed from DPS 158
  • Fixed error code parsing crash when protobuf decode fails — falls back gracefully
  • Fixed phantom rooms without names showing as blank — now displayed as "Room {id}"
  • Fixed room name deduplication for rooms with identical names
  • Fixed smart mode parsing when field is missing from protobuf message
  • Fixed optimistic state updates not propagating to coordinator listeners
  • Fixed race condition in segment initialization during entity setup

Code Quality

  • Removed ~6,000 lines of duplicate tests across 4 redundant test files
  • Removed 5 unused legacy enums from const.py
  • Derived list constants from enum dicts to eliminate value duplication

New Contributors

Contributors

  • @pkajaba — cleaning controls and Matter hub integration (#99)
  • @m11tch — code review, architecture guidance
  • @jeppesens — testing, review feedback

Full Changelog: V1.7.3...v1.8.0