更新内容
- 🔐 加固账号登录链路:验证码会话、CAPTCHA 上下文、重新认证及短信/邮箱验证后的 ssecurity (#2948 #2950 #2995 #3016 #3031)
- ☁️ 区分云端设备被过滤与云端返回为空,云端不可用时只记录一次日志 (#2996 #3003)
- 🔋 修复云端电量精度与不完整记录处理 (#3022)
- 🔧 修复云端功率统计瞬时清零 (#2900)
- ☁️ 自动模式下本地读取失败时回退云端 (#3045)
- 🔗 云端请求与 MIoT spec 下载的取消操作可正确传递 (#3039 #2984)
- ⚙️ 云端过滤表单空提交时保存当前选择 (#3017)
- 🔌 接受不带 code 的本地 set_properties 应答 (#2942)
- 🔢 写入前校验 MIoT 数值命令范围 (#3040)
- 🔧 本地设备地址变化后可恢复连接 (#2962)
- 🔧 修复直连 MIoT 请求的连接方式路由 (#3019)
- 🔧 设备物理断电后不再卡在在线状态 (#2987)
- 🆔 新建实体使用正确的 HA 平台作为 entity_id 域 (#3032)
- 🆔 连接信息补充 MAC 地址 (#2933)
- 🧹 适配 HA 2026.9 / 2026.11,移除弃用的设备注册表访问、温度属性、浓度常量与旧版兼容回退 (#2989 #3029 #2907 #2906)
- 🌡️ 绑定传感器读数转换为原生单位,移除弃用的连接类 (#3052)
- ⚡ 新增 ykcn.switch.cbcsmj 支持 (#3026)
- 🔌 为 iot.switch.padw2p 启用本地 MIoT (#3021)
- 🧹 新增 viomi.vacuum.v10 本地支持 (#3004)
- 🚽 智米智能马桶 zhimi.toilet.va1 完整本地 miio 支持 (#3007)
- 🍃 新增米家空气净化器 6(xiaomi.airp.mb5)支持 (#2954)
- 🔧 修复 topwit.bhf_light.rz01 温度与童锁 (#2951)
- 🍗 支持 careli 炸锅恢复烹饪 (#2978)
- 🔧 改善 viomi.juicer.v1 本地适配,修正 viomi.fridge.m1 模式映射 (#2959 #2968)
- 🔗 修复关联设备注册表标识的生命周期匹配 (#3034)
- 🔧 避免米家消息传感器重复注册 (#2992)
- 🔧 修复 UI 账号传感器初始化 KeyError (#2979)
- 🎛️ 各 select 实体使用独立选项列表,避免串台 (#2983)
- 🌀 修复吸尘器风速属性更新 (#2982)
- 🌀 climate 存在离散风速档时跳过无级风速 (#2957)
- 🔉 修复小爱音箱意图目标选择与 TTS 重复播报 (#2980 #2970)
- ♨️ 修复水热器实体状态始终为 unknown (#2965)
- 🔒 加固 issue 表单的 body 注入防护
升级注意
- 新建实体的建议 entity_id 改为按平台生成(如
sensor.xxx),已注册实体不受影响 (#3032) - 部分弃用温度属性已移除,请检查相关模板与自动化 (#3029)
- 超出范围的数值写入会被直接拒绝 (#3040)
- 已移除旧版 HA 兼容回退,实际支持的最低版本相应提高 (#2907)
What's Changed
- 🔐 Harden the account login flow: verification-code sessions, CAPTCHA context, reauth and ssecurity after SMS/email verification (#2948 #2950 #2995 #3016 #3031)
- ☁️ Distinguish filtered cloud inventory from an empty cloud response; log cloud unavailability only once (#2996 #3003)
- 🔋 Fix cloud energy precision and incomplete-record handling (#3022)
- 🔧 Fix transient resets in cloud power statistics (#2900)
- ☁️ Fall back to cloud when auto-mode local reads fail (#3045)
- 🔗 Propagate cancellation for cloud requests and MIoT spec downloads (#3039 #2984)
- ⚙️ Save the cloud filter when the form is submitted empty (#3017)
- 🔌 Accept local set_properties acknowledgements without a code (#2942)
- 🔢 Validate MIoT number commands before writing to devices (#3040)
- 🔧 Recover after a local device address changes (#2962)
- 🔧 Fix connection-mode routing for direct MIoT requests (#3019)
- 🔧 Devices physically turned off no longer stay stuck as online (#2987)
- 🆔 New entities use the correct Home Assistant platform as their entity_id domain (#3032)
- 🆔 Add the missing MAC address to connection data (#2933)
- 🧹 Support HA 2026.9 / 2026.11: drop deprecated device registry access, temperature attributes, concentration constants and legacy compatibility fallbacks (#2989 #3029 #2907 #2906)
- 🌡️ Convert bound sensor readings to native units; remove the deprecated connection class (#3052)
- ⚡ Add support for ykcn.switch.cbcsmj (#3026)
- 🔌 Enable local MIoT for iot.switch.padw2p (#3021)
- 🧹 Add local support for viomi.vacuum.v10 (#3004)
- 🚽 Full local miio support for the Zhimi smart toilet zhimi.toilet.va1 (#3007)
- 🍃 Add support for Mijia Smart Air Purifier 6 (xiaomi.airp.mb5) (#2954)
- 🔧 Fix temperature and child lock for topwit.bhf_light.rz01 (#2951)
- 🍗 Support resume-cooking for the careli fryer (#2978)
- 🔧 Improve local adaptation for viomi.juicer.v1 and fix mode mapping for viomi.fridge.m1 (#2959 #2968)
- 🔗 Fix lifecycle matching for linked device registry identifiers (#3034)
- 🔧 Prevent duplicate MiHome message sensor registration (#2992)
- 🔧 Fix sensor setup KeyError for UI accounts (#2979)
- 🎛️ Give each select entity its own options list (#2983)
- 🌀 Await vacuum fan speed property updates (#2982)
- 🌀 Skip stepless fan level in climate when discrete levels exist (#2957)
- 🔉 Fix Xiaoai intent target selection and repeated TTS announcements (#2980 #2970)
- ♨️ Fix water heater entity state always showing unknown (#2965)
- 🔒 Harden issue forms against body injection
Upgrade Notes
- Suggested entity IDs for new entities now use the platform domain (e.g.
sensor.xxx); existing registry entries are unchanged (#3032) - Some deprecated temperature attributes have been removed; check your templates and automations (#3029)
- Out-of-range number writes are now rejected (#3040)
- Obsolete Home Assistant compatibility fallbacks were removed, raising the effective minimum version (#2907)
Full Changelog: v1.1.5...v1.1.6
❤️ Thanks to Contributors
Thanks to everyone who contributed to this release:
@ptbsare, @dajiaohuang, @oliver-mee, @Wuty-zju, @stoppyz0r, @hmmbob, @ak40u, @Komzpa, @uuyyyuu, @tankyhsu, @sschwieb, @samyycX, @pppan2003, @opgrsankkar, @korasino, @andrefrodrigues92, @SeanChengN, @RanKKI, @KRZ303, @FaintGhost, @Code-suphub