v2.0.0 — Map breaking changes (legacy camera + pixel zones removed)
⚠️ BREAKING CHANGES — the map changed
If you use a map card or zone automations, read this before upgrading.
🗺️ The legacy 1:1 camera.*_map entity is gone
Only the high-resolution camera.*_map_hd remains. Any dashboard card, picture entity or automation referencing camera.*_map will break — repoint it to camera.*_map_hd.
📐 narwal.clean_zone is world-coordinates only
The map-image pixel contract (and its auto/pixels detection) is removed. Zones are now always robot world coordinates — exactly what xiaomi-vacuum-map-card sends with calibration_source: {camera: true}.
The coordinates service field is still accepted so pre-2.0 automations keep validating, but it is ignored — a call that used to send pixels is now treated as world coordinates and would clean the wrong area. Drop coordinates: pixels from your calls.
✅ Migration
- Point your map card at
camera.*_map_hdwithcalibration_source: {camera: true}— see the README map-card example. The card then produces world coordinates automatically and needs no re-calibration when you changemap_scale. - Remove any
coordinates: pixelsfrom yournarwal.clean_zoneservice calls.
The deprecation was announced in 1.6.0. Not ready to migrate? Pin the integration to v1.6.0 in HACS.
Everything else from 1.6.0 (HD map, performance overhaul, carpet detection) is unchanged. See CHANGELOG.md.