从混乱到有序:Xiaomi Home Integration设备分类统计完全指南
你是否还在为智能家居设备管理头疼?面对数十种小米智能设备,如何快速掌握它们的类型分布和功能支持?本文将通过**三步报表生成法**,帮你轻松搞定Home Assistant中的小米设备分类统计,让你的智能家庭管理一目了然。## 设备分类体系解析小米智能家居设备通过MIoT(Mi Home Internet of Things)协议实现互联互通,在Home Assistant集成中被划分为18...
从混乱到有序:Xiaomi Home Integration设备分类统计完全指南
你是否还在为智能家居设备管理头疼?面对数十种小米智能设备,如何快速掌握它们的类型分布和功能支持?本文将通过三步报表生成法,帮你轻松搞定Home Assistant中的小米设备分类统计,让你的智能家庭管理一目了然。
设备分类体系解析
小米智能家居设备通过MIoT(Mi Home Internet of Things)协议实现互联互通,在Home Assistant集成中被划分为18个核心品类。每个品类对应独立的控制模块,位于custom_components/xiaomi_home/目录下:
custom_components/xiaomi_home/
├── binary_sensor.py # 二进制传感器(如门窗传感器)
├── climate.py # 空调设备
├── cover.py # 窗帘/卷帘设备
├── fan.py # 风扇设备
├── humidifier.py # 加湿器
├── light.py # 照明设备
├── vacuum.py # 扫地机器人
...(共18个设备类型文件)
这些模块通过miot_device.py中的MIoTDevice类统一管理,实现设备状态监听与控制指令下发。
报表生成实战步骤
1. 设备类型自动识别
系统通过设备型号前缀自动匹配品类,例如lumi.sensor_ht系列被识别为温湿度传感器。核心映射规则定义在lan/profile_models.yaml中,包含1200+种设备型号:
# 示例:profile_models.yaml片段
cgllc.sensor_ht.cgm1: # 温湿度传感器
ts: 1602667557
lumi.curtain.aq2: # 窗帘电机
ts: 1605857829
roborock.vacuum.s5: # 扫地机器人
ts: 1531108800
2. 分类统计代码实现
通过以下Python代码片段可生成设备分类报表(完整实现见tools/update_lan_rule.py):
from collections import defaultdict
import yaml
# 加载设备型号数据库
with open("custom_components/xiaomi_home/miot/lan/profile_models.yaml") as f:
models = yaml.safe_load(f)
# 分类统计
category_count = defaultdict(int)
for model in models:
category = model.split('.')[1] # 提取设备类型(如sensor_ht)
category_count[category] += 1
# 生成报表
print("小米设备分类统计报表")
print("===================")
for category, count in sorted(category_count.items(), key=lambda x: -x[1]):
print(f"{category}: {count}台")
3. 可视化与应用
将统计结果导入Excel或使用Home Assistant的Lovelace面板,通过sensor.py创建统计传感器,实现实时设备数量监控:
图1:本地控制模式下的设备分类统计面板
典型设备分类案例
环境监控类(占比23%)
- 温湿度传感器:如
cgllc.sensor_ht.cgm1,通过binary_sensor.py实现状态检测 - 空气质量监测仪:如
cgllc.airmonitor.s1,支持PM2.5/甲醛检测
家居控制类(占比41%)
- 智能灯:如
philips.light.bulb,通过light.py实现亮度/色温调节 - 窗帘电机:如
lumi.curtain.aq2,支持百分比控制与行程校准
生活服务类(占比36%)
- 扫地机器人:如
roborock.vacuum.s5,支持地图管理与清扫模式切换 - 空调:如
viomi.aircondition.v10,通过climate.py实现温度/模式控制
高级应用:自定义分类规则
通过修改miot/specs/spec_filter.yaml可扩展分类维度:
# 添加自定义分类规则
custom_categories:
- model_prefix: "viomi.fridge"
category: "kitchen_appliance"
icon: "mdi:fridge"
修改后需重启Home Assistant使配置生效,新分类将自动出现在统计报表中。
总结与展望
通过本文介绍的分类统计方法,你已掌握:
- 小米设备18个核心品类的识别逻辑
- 基于型号数据库的自动分类统计实现
- 自定义分类规则的高级应用技巧
随着manifest.json中定义的设备支持列表不断更新(当前支持1200+型号),建议每月执行一次git pull更新ha_xiaomi_home仓库,以获取最新设备支持。
收藏本文,下次设备统计只需三步即可完成!你更关注哪种设备类型的深度统计?欢迎在评论区留言。
更多推荐


所有评论(0)