【小米MIoT设备接入HomeAssistant通用插件教程】

【小米MIoT设备接入HomeAssistant通用插件教程】

  • 1. Xiaomi Miot Auto介绍
  • 2. 常见问题
  • 3. 安装/更新
    • 3.1 方法1: [HACS](https://github.com/hacs-china/integration)
    • 3.2 方法2: 通过`Samba`或`SFTP`手动安装
    • 3.3 方法3: 通过`SSH`或`Terminal & SSH`加载项执行一键安装命令
    • 3.4 方法4: `shell_command`服务
    • 3.5 视频教程
  • 4. 配置
    • 4.1 账号集成 (Add devices using Mi Account):
    • 4.2 本地集成 (Add device using host/token):
    • 4.3 配置云端模式:
    • 4.4 配置翻译词典:
    • 4.5 [自定义实体](https://github.com/al-one/hass-xiaomi-miot/issues/100#issuecomment-864678774)
    • 4.6 过滤实体属性
    • 4.7 YAML配置重载
    • 4.8 [支持的设备](https://github.com/al-one/hass-xiaomi-miot/issues/12)
    • 4.9 不支持的设备
  • 5. 服务
        • `xiaomi_miot.set_property`
        • `xiaomi_miot.set_miot_property`
        • `xiaomi_miot.get_properties`
        • `xiaomi_miot.call_action`
        • `xiaomi_miot.send_command`
        • `xiaomi_miot.get_token`
        • `xiaomi_miot.intelligent_speaker`
        • `xiaomi_miot.xiaoai_wakeup`
        • `xiaomi_miot.request_xiaomi_api`
    • 调试
      • 获取实体状态属性
      • 获取调试日志
    • 获取 miio token

在这里插入图片描述

  • 欢迎大家阅读2345VOR的博客【小米MIoT设备接入HomeAssistant通用插件教程】🥳🥳🥳
  • 2345VOR鹏鹏主页: 已获得CSDN《嵌入式领域优质创作者》称号🎉🎉、阿里云《arduino专家博主》👻👻👻,座右铭:脚踏实地,仰望星空🛹🛹🛹
  • 《HomeAssistant》:介绍homeassistant中基本开发, 重点设计esphome和nodered开发,包含小爱同学打印机等诸多设备添加。🎉🎉🎉

1. Xiaomi Miot Auto介绍

小米IoT设备协议规范:MIoT Specification,简称:MIoT-Spec,是小米IoT平台根据硬件产品的联网方式、产品功能的特点、用户使用场景的特征和用户对硬件产品使用体验的要求,设计的描述硬件产品功能定义的标准规范。了解更多

而hass-xiaomi-miot插件利用了MIoT-Spec的规范,可将绝大部分小米设备轻松接入HomeAssistant,支持WiFi、蓝牙、ZigBee设备。且该插件支持HA后台界面集成,无需配置yaml即可轻松将小米设备接入HA。

在这里插入图片描述

2. 常见问题

  • 👍 新手入门手把手教程1 (感谢@来鸭大佬)
  • 👍 新手入门手把手教程2 (感谢@萝卜大佬)
  • 登录失败/没有实体等常见问题解决办法
  • 支持哪些设备?是否支持XX型号?
  • 账号集成还是token集成?
  • 为什么XX型号的设备需要开启云端模式?如何开启?
  • 怎样为一个实体添加自定义属性?
  • 为什么设备状态会有延迟?如何减小延迟?
  • 如何翻译实体的选项文本?
  • 如何让小爱同学播放文本(TTS)和执行语音命令?
  • 如何在HA查看摄像头实体回放(看家助手)视频?
  • 为什么设备状态会有延迟?如何减小延迟?
  • 如何删除本插件生成的HA设备?
  • [新手必读]更多其他常见问题…

3. 安装/更新

3.1 方法1: HACS

  • 首次安装

    HACS > 集成 > ➕ 浏览并下载存储库 > Xiaomi Miot Auto > 下载此存储库

  • 升级插件

    HACS > 集成 > Xiaomi Miot Auto > 更新 / 重新下载

在这里插入图片描述

3.2 方法2: 通过SambaSFTP手动安装

下载并复制custom_components/xiaomi_miot文件夹到HA根目录下的custom_components文件夹

3.3 方法3: 通过SSHTerminal & SSH加载项执行一键安装命令

wget -q -O - https://raw.githubusercontent.com/al-one/hass-xiaomi-miot/master/install.sh | ARCHIVE_TAG=latest bash -# 如果遇到下载缓慢或下载失败可以执行下面的命令
wget -q -O - https://ghproxy.com/raw.githubusercontent.com/al-one/hass-xiaomi-miot/master/install.sh | HUB_DOMAIN=ghproxy.com/github.com ARCHIVE_TAG=latest bash -# 或者
wget -q -O - https://raw.fastgit.org/al-one/hass-xiaomi-miot/master/install.sh | HUB_DOMAIN=hub.fastgit.xyz ARCHIVE_TAG=latest bash -

3.4 方法4: shell_command服务

  1. 复制下面的代码到HA配置文件configuration.yaml
    shell_command:update_xiaomi_miot: |-wget -q -O - https://ghproxy.com/raw.githubusercontent.com/al-one/hass-xiaomi-miot/master/install.sh | HUB_DOMAIN=ghproxy.com/github.com ARCHIVE_TAG=latest bash -
    
  2. 重启HA
  3. 在HA开发者工具中调用此服务service: shell_command.update_xiaomi_miot

3.5 视频教程

  • 📺 HACS安装插件及使用视频教程 (感谢小帅同学Js)
  • 📺 HACS安装插件视频教程 (感谢@老明)
  • 📺 手动安装插件视频教程 (感谢@爱运动的数码君)

4. 配置

⚙️ 配置 > 设备与服务 > 🧩 集成 > ➕ 添加集成 > 🔍 搜索 Xiaomi Miot Auto

4.1 账号集成 (Add devices using Mi Account):

自v0.4.4版本开始,插件新增支持账号集成时选择连接设备的模式:

  • 自动模式:插件定期更新支持本地miot协议的设备,并自动将用户筛选的设备中符合条件的型号使用本地连接(推荐)
  • 本地模式:集成配置所筛选的设备都将使用本地连接,如勾选了不支持本地miot协议的设备将不可用
  • 云端模式:集成配置所筛选的设备都将使用云端连接,建议旧版miio、蓝牙、ZigBee设备使用

4.2 本地集成 (Add device using host/token):

通过host/token接入设备,适用于在局域网环境下支持miot协议的设备

4.3 配置云端模式:

通过token集成的设备开启云端模式

# configuration.yaml
xiaomi_miot:username: xiaomi_usernamepassword: xiaomi_password# server_country: cn # 小米云服务器位置: cn(默认), de, i2, ru, sg, tw, us# http_timeout: 15   # 请求小米接口的超时时间(秒)

⚙️ 配置 > 设备与服务 > 🧩 集成 > Xiaomi Miot Auto > 选项 > ☑️ 开启云端模式

4.4 配置翻译词典:

可以通过配置文件将大部分miot属性的选项描述(如:模式、风速等)翻译成你想要的语言,当然也欢迎你贡献你的词典给其他人👏🏻。

# configuration.yaml
xiaomi_miot:language: zh # 使用内置词典,目前仅支持`zh`# https://github.com/al-one/hass-xiaomi-miot/blob/master/custom_components/xiaomi_miot/core/translation_languages.pytranslations:# 全局词典,对所有实体生效idle: '空闲'busy: '工作中'# 指定风扇模式的词典fan.mode:straight wind: '直吹模式'natural wind: '自然风'# 指定洗衣机烘干模式的词典washer.drying_level:moist: '微湿'extra: '特干'

4.5 自定义实体

# configuration.yaml
homeassistant:customize: !include customize.yaml# 通过设备型号自定义
xiaomi_miot:# https://github.com/al-one/hass-xiaomi-miot/blob/master/custom_components/xiaomi_miot/core/device_customizes.pydevice_customizes:chuangmi.plug.212a01:miot_local: truechunk_properties: 7# 通过父实体自定义
# customize.yaml
domain.your_entity_id:miot_local: true        # 使用本地模式 (通过账号接入的设备)miot_cloud: true        # 为该实体开启云端模式 (read, write, action)miot_cloud_write: true  # 仅写属性使用云端模式miot_cloud_action: true # 仅action使用云端模式check_lan: true         # 云端模式下检查设备在局域网是否可用miio_properties: power,battery # 获取miio属性到实体的属性中miio_cloud_props: prop.power,event.dev_online# 自定义子实体
domain.parent_entity_id:sensor_properties: temperature,humidity,illumination # Miot属性binary_sensor_properties: is_volume_muted,any_boolen_propertyswitch_properties: on,powernumber_properties: volumeselect_properties: modefan_properties: mode,fan_levelcover_properties: motor_controllight.your_entity_id:color_temp_reverse: false # 反转色温(需重载集成配置)yeelight_smooth_on:  2000 # 毫秒 (仅支持本地接入的易来灯)yeelight_smooth_off: 3000 # 毫秒 (仅支持本地接入的易来灯)climate.your_entity_id:bind_sensor: sensor.temperature_entity,sensor.humidity_entity # 绑定传感器实体camera.your_entity_id:video_attribute: 1   # https://github.com/al-one/hass-xiaomi-miot/issues/11#issuecomment-773054167keep_streaming: true # 持续更新流地址cover.your_entity_id:closed_position: 5     # 当实体位置值小于等于此值时为关闭状态deviated_position: 2   # 位置偏差值 2% -> 0%, 98% -> 100%motor_reverse: true    # 反转电机状态(需重载集成配置)position_reverse: true # 反转电机进程(需重载集成配置)open_texts: 打开,close_texts: 关闭,media_player.mitv_entity_id:bind_xiaoai: media_player.xiaoai_entity_id # 绑定小爱音箱以打开电视turn_off_screen: true   # 关闭电视/投影时发送熄屏指令screenshot_compress: 20 # 指定电视/投影屏幕截图的压缩率 默认为50%,100时质量最高sources_via_apps: 桌面,米家,百度网盘,设置 # 将电视内的APP添加到输入源列表sources_via_keycodes: menu,enter,back # 将电视遥控按键添加到输入源列表mitv_lan_host: 192.168.31.66 # 指定小米电视的局域网IPdomain.your_entity_id_xxxx:interval_seconds: 30 # 每次更新状态间隔秒数(需重载集成配置)chunk_properties: 10 # 单次查询设备属性的最大个数(LAN)reverse_state: true  # 反转开关状态(仅作用于Binary Sensor)

4.6 过滤实体属性

过多的实体属性会导致你的HA数据库变得很庞大,如果某些实体属性对你没有用处,你可以配置exclude_state_attributes来忽略它们

# configuration.yaml
xiaomi_miot:exclude_state_attributes:- miot_type- stream_address- motion_video_latest

4.7 YAML配置重载

本插件支持配置重载(修改YAML配置后无需重启HomeAssistant):

🔨 开发者工具 > YAML 重载 > 配置重载 > 🔍 重载 XIAOMI MIOT AUTO

4.8 支持的设备

  • 🔌 插座 / 开关
  • 💡 智能灯
  • ❄️ 空调 / 空调伴侣 / 红外空调
  • 🌀 风扇 / 凉霸
  • 🛀 浴霸 / 🔥 取暖器 / 温控器
  • 📷 摄像头 / 猫眼/可视门铃 ❓️
  • 📺 电视 / 📽️ 投影仪 / 机顶盒
  • 🗣️ 小爱音箱 ❓️
  • 🎮️ 万能遥控器 ❓️
  • 🔐 智能门锁 / 🚪 智慧门
  • 👕 洗衣机 / 干衣机 / 冰箱
  • 🚰 净水器 / 饮水机
  • ♻️ 空气净化器 / 新风机
  • 🌡 温湿度传感器 / 水侵传感器 / 烟雾传感器
  • 🥘 电饭煲 / 压力锅
  • 🍲 电磁炉 / 烤箱 / 微波炉
  • 🍗 空气炸锅 / 多功能锅
  • 🍵 养生壶 / ☕️ 咖啡机
  • 🍹 破壁机 / 搅拌机 / 果蔬清洗机
  • ♨️ 热水器 / 油烟机 / 洗碗机
  • 🦠 消毒柜
  • 🪟 窗帘电机 / 开窗器 / 晾衣机
  • 🧹 扫地/扫拖机器人 / 擦地机
  • 💦 加湿器 / 除湿器
  • 🍃 空气检测仪 / 🪴 植物监测仪
  • 🛏 电动床 / 电热毯/水暖床垫 / 😴 睡眠监测仪
  • 💆 按摩椅 / 按摩仪
  • 🏃 走步机 / 跑步机 / 升降桌
  • 🚽 马桶(盖) /️ 毛巾架 /️ 🪥 牙刷
  • 🐱 宠物喂食器 / ⛲ 宠物饮水机 / 🐟 鱼缸
  • 🦟 驱蚊器 / 消毒/灭菌灯
  • 🚘 智能后视镜 / 抬头显示HUD
  • ⌚️ 智能/儿童手表 / 手环
  • 🚶 人体传感器 / 🧲 门窗传感器 ❓️
  • 📳 动静贴
  • 🌐 路由器 / 🖨 打印机

4.9 不支持的设备

本插件使用轮询的方式获取设备状态,因此无法实时监听部分设备的事件

  • 无线场景开关类 (如: lumi.sensor_switch.v1 / lumi.remote.b686opcn01)
  • 人体传感器类 (如: lumi.sensor_motion.v1)
  • 门窗传感器类 (如: lumi.sensor_magnet.v1)

5. 服务

xiaomi_miot.set_property

service: xiaomi_miot.set_property
data:entity_id: camera.isa_hlc7_xxxxfield: camera_control.onvalue: true

xiaomi_miot.set_miot_property

service: xiaomi_miot.set_miot_property
data:entity_id: camera.isa_hlc7_xxxxsiid: 2piid: 1value: true

xiaomi_miot.get_properties

service: xiaomi_miot.get_properties
data:entity_id: camera.isa_hlc7_1ab7mapping:- siid: 2piid: 1- siid: 3piid: 2update_entity: true # 更新实体状态属性throw: true # 在HA通知中显示结果

触发事件 xiaomi_miot.got_miot_properties

xiaomi_miot.call_action

service: xiaomi_miot.call_action
data:entity_id: vacuum.dreame_p2259_entity_idsiid: 4 # vacuum-extendaiid: 1 # start-cleanparams:- 18 # piid: 1 - work-mode- '{"selects":[[7,1,0,2,1]]}' # piid: 10 - clean-extend-datathrow: true # 在HA通知中显示结果

触发事件 xiaomi_miot.call_miot_action

xiaomi_miot.send_command

service: xiaomi_miot.send_command
data:entity_id: switch.your_entity_idmethod: set_powerparams:- onthrow: true # 在HA通知中显示结果

触发事件 xiaomi_miot.send_miio_command

xiaomi_miot.get_token

service: xiaomi_miot.get_token
data:name: Light # 米家中的设备名称关键词或IP、型号

xiaomi_miot.intelligent_speaker

service: xiaomi_miot.intelligent_speaker
data:entity_id: media_player.xiaoai_lx04_xxxxtext: Turn on the lightexecute: true # 执行指令silent: true  # 静默执行

xiaomi_miot.xiaoai_wakeup

service: xiaomi_miot.xiaoai_wakeup
data:entity_id: media_player.xiaoai_lx04_xxxx

xiaomi_miot.request_xiaomi_api

service: xiaomi_miot.request_xiaomi_api
data:entity_id: sensor.your_entity_idapi: /v2/plugin/fetch_plugindata:latest_req:api_version: 10070plugins:- model: brand.device.model

触发事件 xiaomi_miot.request_xiaomi_api

查看更多服务

调试

获取实体状态属性

🔨 开发者工具 > ℹ️ 状态 > 🔍 筛选实体

获取调试日志

# 使用HA服务 (无需重启)
service: logger.set_level
data:custom_components.xiaomi_miot: debug# 或者修改 configuration.yaml (需重启)
logger:default: warninglogs:custom_components.xiaomi_miot: debug

⚙️ 配置 > ⚙️ 系统 > ✍️ 日志

获取 miio token

  • 使用HomeAssistant服务

    1. 打开HomeAssistant服务工具 服务
    2. 选择服务xiaomi_miot.get_token,输入设备名称关键词
    3. 在HA通知列表中找到token
  • 使用@vevsvevs修改版的米家

    1. 下载APK СКАЧАТЬ ВЕРСИЮ 6.x.x 并安装
    2. 打开米家APP > 我的 > 实验室功能
    3. 打开Write custom log filesEnable app's debug mode
    4. 重启APP后在vevs/logs/misc/devices.txt文件中找到token

参考文献:
Xiaomi Miot For HomeAssistant
Homeassistant - 使用小爱音箱控制 Hass 设备
9 个月前 (1月 8 2022)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/28701.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《鱿鱼游戏》我怕了,还是整点阳间的游戏吧,Python版“碰糖”来袭—你能过几关?

导语 哈喽!哈喽!我是木木子,之前想着给大家写点儿好玩儿的~ 嘿嘿嘿——现在开始上线更新文章啦!喜欢的小伙伴儿多多支持呀! ​ ​​大火的韩国电视剧《鱿鱼游戏》,从123木头人到画糖,感觉十…

ChatGPT Prompt Engineering for Developers from DeepLearning.AI

链接:https://learn.deeplearning.ai/chatgpt-prompt-eng/lesson/1/introduction In this course, there are some example codes that you can already run in Jupyter Notebook. Below, I will write down the core knowledge points, such as how to build a pr…

ChatGPT和Midjourney王炸组合,开启AI新时代

目录 序言 一:使用ChatGPT进行对话 二:调用newbies robot 三:举例说明 四:付费和使用限制 序言 随着人工智能技术的不断发展,越来越多的人开始使用人工智能工具来创作图画。在这里,我将分享如何结合Ch…

国内免费高匿IP代理软件

免费IP代理软件能快速获取代理ip资源,智能验证,一键设置取消代理。 免费IP代理软件 1.支持免费IP代理 2.普通代理 3.高匿代理 4.Http代理 5.Https代理 6.自动验证无效代理 7.一键设置取消代理 8.导出到文本或Excel 9.绿色免费软件。 511遇见免费IP代理 …

可以用代理ip做什么。

代理商IP,又称网络代理商,是一种特殊的网络服务,它允许一个网络终端(通常是客户端)通过该服务与另一个网络终端(通常是服务器)进行非直接连接。一些网关。路由器和其他网络设备具有网络代理功能…

别再不懂IP代理了!

你是否还在为找不到合适的代理IP而发愁? 你是否在为不知道如何设置代理IP而头疼? 你是否在为不知道选用哪种代理IP能解决问题而纠结? 一篇文章,让你彻底了解代理IP,前嗅大数据带你走进代理IP的世界! 前…

高匿HTTP代理要如何挑选?

近期,我经常收到此类问题,今天就来说清楚: 很多时候,高匿HTTP代理能很好帮助解决用户的计算机安全和个人隐私安全问题,所以现在企业爬虫或者开发者个人需要用到HTTP代理的时候,都会选择高匿名级别的。 不过…

为什么电商使用高匿代理ip更有效果?

如果时间倒退个几十年,我们所知道的电商平台真的是寥寥无几。但是现在由于互联网的发展,越来越多的人看到了电商行业的商机,当然很多这种商机都是从互联网中延展出来的。        所以现在电商的存在越来越多,甚至成了一种行…

你与元宇宙只隔了一个宇宙而已 ——元宇宙入口终端形态预测

《中智观察》第1645篇推送 作者:海比研究院 仓剑 编辑:杨小天 头图来源:资产信息网 如前文(《元宇宙的关键时间点》)所述,元宇宙还没有真正起步,目前还处在大发展的前夜,基础设施存在…

HighNewTech:元宇宙(metaverse)的简介(多角度理解与探讨)、发展历史、现状与未来

High&NewTech:元宇宙(metaverse)的简介(多角度理解与探讨)、发展历史、现状与未来 导读:博主曾在去年,2020年9月份撰写了一篇文章《AGI:走向通用人工智能的【哲学】之现实世界的虚拟与真实——带你回看1998年的经典影片《The …

【元宇宙欧米说】从NFT迈向元宇宙:CYBER-VERSE

区块集市(BlockAgora)是一个以活动和社交为导向的元宇宙虚拟空间,提供一站式活动营销及虚拟场景搭建服务,具备直播展示、游戏社交、数藏的三维呈现等功能。 区块集市将邀请众多不同项目、不同领域专业人士来进行交流分享&#xf…

元宇宙系列--元宇宙介绍

元宇宙系列--元宇宙介绍 1 定义要素下一个风口?元宇宙建设支撑应用领域行业痛点优势 2 发展3 玩家微软RobloxEpicNVIDIAMetaApp代码乾坤米哈游FaceBook腾讯 参考 1 定义 Metaverse 是一个虚拟时空间的集合, 由一系列的增强现实(AR&#xff0…

写给小白:使用GitHub来托管论文吧

使用GitHub来托管论文吧 摘要:写给小白。对于非计算机专业的小伙伴,可能很少接触到GitHub吧,但GitHub真心好用,虽然我们不会用它来进行 托管代码,但是可以用来托管论文或文本啊,使用它可以事半功倍&#x…

利用claude编写标注信息的散点图的python代码,可用于科研论文

首先我们需要一组用于绘制散点图的数据,这里我们让claude帮我们虚构一组数据,为30个地级市的高程数据及高程标准差数据。前者反映地区的平均海拔,后者反映海拔的离散程度,结果如下: 利用claude编写散点图代码&#xff…

阿里云的云端实践有哪些?

飞天操作系统 飞天(Apsara)诞生于2009年2月,是由阿里云自主研发、服务全球的超大规模通用计算操作系统,为全球200多个国家和地区的创新创业企业、政府、机构等提供服务。飞天希望解决人类计算的规模、效率和安全问题。它可以将遍布全球的百万级服务器连成一台超级计算机,…

基因测序、大数据分析——精准治癌正在成为现实

在中国,至少有6亿人口曾经感染过乙肝病毒,1亿人左右成为病毒携带者,其中,约3000万成为慢性肝炎患者。 江苏安泰生物技术有限公司董事长、泰州新康基因数码有限公司首席科学家闫小君解释说,“究竟属于6亿分之一、1亿分之…

基因大数据分析的云计算实践

基因测序有着广泛的行业应用,在预防出生缺陷、检测遗传性疾病与肿瘤用药指导等领域,能提供极大帮助。近年来基因组学研究进展飞速,华大基因也凭借强大的研发实力,成为全球最大的基因组学研究中心,其研究成果在全球都有…

用Python绘制一朵玫瑰花,送给特别的她

前言 哈喽哈喽,跨年倒计时三天九小时 上次发了烟花的文章,看来还是蛮多人需要代码的 今天就来搞一朵唯一的花吧~(送给你喜欢的那个她) 效果 话不多说 咱先直接看看效果,毕竟搞的不好看我也拿不出手 提前先说 我尽…

【情人节用Compose给女神写个爱心动画APP】

情人节用Compose给女神写个爱心动画APP 前言涉及知识点实现思路实现过程绘制爱心创建动画效果Preview预览效果 完整源码彩蛋 前言 前一阵子看电视里的学霸用代码写了个炫酷的爱心,网上有很多js和python的源码,复制粘贴就能拥有,但是Android的…

python表白玫瑰花绘制——情人节表白

python表白玫瑰花绘制——情人节表白 搬运不易,路过的各位大佬请点个赞 python表白玫瑰花绘制——情人节表白 python表白玫瑰花绘制——情人节表白一、玫瑰花绘制—深红色二、玫瑰花绘制—五颜六色三、玫瑰花绘制—粉红色四、玫瑰花绘制—红色五、桃花绘制 一、玫瑰…