v1.3.0
Release v1.3.0
Added
- Added hardware-verified
Scuba_S1_2025clean-path support using the official
app'sAT+AUTO?query andAT+AUTO=0/1set contract. This model no longer
uses speculative REST, shadow, or fallback command variants for clean path. - Added the app-derived
Scuba_S1_2025cleaning-mode profile: Auto, Floor,
Wall, and Scheduled. The S1 now queries withAT+MODE?, writes only the
correspondingAT+MODE=1/2/3/5commands, and no longer exposes Waterline. - Added bounded S1 clean-path write confirmation so stale immediate readback
cannot briefly revert a newly acknowledged selection in Home Assistant. - Added an explicit S1 capability profile that retains the observed MicroMesh
consumable while suppressing unsupported temperature, charge-type, roller,
tread, and propeller entities. - Fixed
Scuba_S1_2025post-cycle charging reconciliation. A fresh REST
charging status now supersedes an hours-old MQTT Cleaning/Wet report and
coherently reports Charging, Not running, Dry, Mode 0, and zero active
cleaning runtime. If explicit status is absent, three increasing battery
samples spanning at least two minutes may provide the same fallback only
when no newer MQTT Machine report exists. Diagnostics identify the trigger
used. Other device models retain the existing MQTT precedence. - Fixed the S1 flipping from Wet to Dry when a fresh REST poll reports Cleaning
together with a stalein_water=0. For this model, active Cleaning is always
Wet. Observed status 10 represents parking underwater and remains Wet when
REST omits a newer water-state report. - Fixed recent MQTT lifecycle state being retained indefinitely over newer REST
status. MQTT now remains authoritative per field for two polling intervals;
after that, fresh REST can update running, status, charging, and mode. Active
cleaning remains visible even when the independent cloud-online flag is
false, and redacted diagnostics report each field's source and age. - Fixed MQTT remaining disconnected after temporary AWS credentials expire or
the AWS IoT connection is interrupted. REST-backed entities stay available,
signing credentials refresh without blocking Home Assistant, and a
rate-limited watchdog rebuilds and re-subscribes prolonged connections.
Device callbacks are retained even when MQTT is unavailable during initial
setup, and diagnostics expose connection-recovery timing without credential
material. - Persisted the last confirmed
Scuba_S1_2025clean-path preference across
integration restarts. S1 path and mode queries now also run on an independent
five-minute timer, so frequent MQTT push updates cannot postpone them by
continually resetting the general coordinator refresh.
Full Changelog: v1.2.4...v1.3.0