本帖最后由 SilverWolf 于 2022-10-10 11:12 编辑
目录:
灰色部分还在整理尽请期待 1. 集成与接入 2. HomeKit 3. 动手搭建属于自己的Home Assistant界面 4. 关于homekit-infused 玩法 5. 待定... 前言本文面向人群以入门至进阶为主。文章多以个人实践经验为主观判断。描述多少会欠缺一定专业性。 如果教程有错误,产生误导。欢迎大佬们指正。
在B站、瀚思彼岸站内教程有很多,个人推荐新手参照 官方文档使用独立物理设备安装HomeAssistant OS (Supervised) 再此就不过多赘述了。
装好HomeAssistant后你需要做的就是安装HACS商店
HACS商店是由社区维护的、面向HomeAssistant的扩展商店,在这里你可以使用HACS商店可以安装更多的自定义集成,以便接入更多你想要添加的设备。
关于HACS商店的安装教程在B站、瀚思彼岸有很多,随便搜搜或者看看官方文档,很容易。
之后就可以添加你自己的配件啦。 通常情况下大部分设备你可以在Home Assistant的 以集成的方式将你的设备添加至Home Assistant当中。 例如使用Xiaomimiio以小米设备云的方式把米家智能设备接入Home Assistant……
因为每个人家中的设备都不同,所以集成的需求每个人都不一样。因此,你需要根据自己的需要选择对应的集成以及相应的接入方法。
以下我以本人所持有的设备进行列举 我的设备和接入方式清单 设备 | | | | |
| | 原生集成:Sony bravia TV 原生集成:Android TV | | | HACS集成 : LGE Devices SmartThinQ LGE |
| | HACS集成: Xiaomi Cloud Map Extractor | | | |
| | 原生集成+YAML配置: TCMP(ping)接入sensor |
| | 原文: bilibili.com/video/BV1Wu411r72g |
| | |
| | |
| | | 需要注册Aqara Developer。后面会提到 | | 通过App Store内“Home Assistant“App接入 |
|
另外附上由论坛@muxiachuixue提供的解决国内HACS商店访问不了或访问慢的解决方案。
以LG洗衣机为例
通过HACS你可以寻找是否有适用于你设备的集成。
成功下载后你需要重启Home Assistant
PS:所有的集成下载完毕后都需要进行重启。重启后你会在 中发现你的设备。
如果没有,你也可以点击右下角的“➕”手动通过集成的方式完成接入。
大多数设备都可以通过内置的集成或者HACS自定义集成完成接入,但也有部分情况,需要通过写入YAML来进行接入。 Home Assistant代码调试环境搭建个人推荐在HomeAssistant加载项下安装Studio code server以便调试。
自定义添加实体通过编辑configuration.yaml可以实现绝大多数自定义集成的安装以及深度自定义。
图示为自定义添加的mqtt传感器实体。
configuration.yaml
例:(本人自学的,如有错误望指正程序员和老鸟轻喷 )
sensor: #主层级(例如这里就是指配置传感器sensor)
- platform: template #第二层级,通常在configuration.yaml里为platform(接入方法,具体使用什么需要根据文档(后期看需求看要不要汉化一篇HA官方的传感器文档以供参考))
sensors: #第二层级
Ping_tracker: #第三层级
friendly_name: "Ping_tracker" #第四层级
value_template: "{{ '在家' if is_state('device_tracker.mix2', 'home') else '离线' }}" #第四层级
HomeKit
Q: 什么是原生HomeKit?
A: 可以在Apple家庭App中直接添加的设备是原生HomeKit支持的设备。通常在你所购买的产品中有如下标记的为原生HomeKit设备
Q: HomeKit集成能做什么 A: HomeKit集成可以以在Apple家庭App中添加桥接器设备的方式将已经接入Home Assistant的实体接入进Apple家庭app,随后便可使用Apple家庭App或Siri来控制HomeAssistant中的设备了。
Q: 为什么我在有原生支持HomeKit设备的情况下还要使用Home Assistant进行接入? A: 1.你的手机不是iPhone,但需要使用智能控制你的HomeKit认证设备;但你又不想使用你手机品牌自带的家庭智能中枢App或智能家居厂商的App来控制。 2.通常智能家居厂商所给你提供的app中仅支持你编辑最简单的自动化逻辑(当……发生时,就做……)。而这对于我全屋智能的需求来说是远远不够的。除此之外,设备接入HOMEKIT之后,不支持删除或隐藏现有实体(设备),并且HomeKit截至目前所支持的种类稀少。例如扫地机器人等设备在HomeKit中并没有相对成熟的设备卡。其次,如果未来我不再使用iPhone,全家原生接入HomeKit的设备对我来说是一个 拖累,我不能在脱离Apple生态的情况下控制设备,而先将设备接入HA再通过桥接器接入HomeKit的方法可以完美避免HomeKit生态对于人的约束。 因此,我的方法以HomeAssistant界面为主,HomeKit和Siri作为辅助功能为我的主要用法。
(某品牌自动化页面)
Homekit的两种配置方式Homekit的配置方式大体可分为两种。一种可以通过UI以界面的方式进行homekit配置。 {图} 另一种则以在configuration.yaml文件中写入Homekit所对应的相关配置参数。为主。
为方便英语不好的朋友使用,也可以参阅由我的好友ssapiel001基于官方文档人工翻译的文件。
列举一些简单的例子
设备: 灯类 Light | 吸顶灯X3 light.mainlight_1 light.mainlight_2 light.lightbulb_3 (实体ID) 筒灯X3 light.lightbulb_1 light.lightbulb_2 light.lightbulb_3 台灯X1 light.lightbulb_4 灯带X1 light.lightbulb_5 | | 开关1 switch.miswitch_1 开关2 switch.miswitch_2 | | | | |
可以以如下方式写(仅供学习理解,不要照抄。按自己的设备需求写入)
homekit: #声明作为Homekit的配置文件
- filter: #筛选要从主页工具包中包含/排除的实体。不做修改
include_domains: #包含的域(所要包含的同一类别所有设备)
- alarm_control_panel #包含所有的报警器
- light #包含所有的灯
- media_player #包含所有的播放器
include_entity_globs: #包含除*号外名称相同的设备
- light.lightbulb_* #包含所有实体id带有light.lightbulb_的设备
include_entities: #包含单一设备
- fan.xiaomifan_1 #包含实体id为fan.xiaomifan_1的设备
exclude_entities: #排除项
- light.lightbulb_4 #包含实体id为light.lightbulb_4的设备
exclude_entity_globs: #排除同类项
- climate.kong_tiao_* #排除所有实体id带有climate.kong_tiao_的设备
#以下部分通常用不到,但在你需要自定义配置设备时需要使用
entity_config: #实体配置
alarm_control_panel.home: #实体ID
code: 1234 #实体配置内容,参阅Homekit文档。
#Homekit的一个桥接器最大可容纳150个实体。如果你有更多的设备要接入可使用下面的参数添加更多桥接器
- name: HASS Bridge 2 #名称随便起(英文就行,注意非法字符)
port: 21065 #端口号,不重就行
filter:
include_domains:
- light
动手搭建属于自己的Home Assistant界面
仪表盘Dashboard 主要的前端仪表板系统被称为lovelace,它提供不同的卡片(Card)来显示信息和控制设备。卡可以显示由连接的设备提供的信息或控制资源(灯、空调和其他设备)。界面设计语言基于 Material Design 。 可以使用原始配置编辑器进行整张页面的编辑。原始配置编辑器通过修改底层 YAML 代码进行自定义界面设计。
首先你需要先创建一张空白的仪表盘(Dashboard) 配置——仪表盘——➕添加仪表盘 在这里你可以设置仪表盘的名称图标。 这里的图标使用的为Google的MDI图标 输入对应的图标ID选用喜欢的图标。
通过使用HA官方的卡或通过HACS下载“前端”来获得新的卡片样式。通过组合不同的卡片样式来获得你想要的效果。 每张卡片的使用方式可通过阅读作者文档得知。
附上我自己写的易来浴霸卡片作为参考。 如果你想更多的了解卡片的用途及写法,可以查看你所下载卡的原作者readme文档。
type: custom:simple-thermostat #卡片类型
entity: climate.yeelink_v6_7b00_ptc_bath_heater #实体ID
header: #开头部分
name: 客卫浴霸 #大标题
icon: mdi:radiator #图标
toggle: #触发
entity: light.yeelink_v6_7b00_light #触发的实体ID
name: 客卫灯 #名称
layout: #布局
mode: #模式
icons: true #是否显示图标 true是/false否
headings: true #是否显示开头部分
control: #控制部分
hvac: #温控器配置部分
'off':
name: null
heat:
name: null
icon: mdi:white-balance-sunny
dry:
name: null
icon: mdi:water
fan_only:
name: null
icon: mdi:fan
preset:
Ventilate:
name: 换气
icon: mdi:repeat
Quick Heat:
name: 快热
icon: mdi:weather-sunny
Defog:
name: 除雾
icon: mdi:heat-wave
Quick Defog:
name: 快速除雾
icon: mdi:heat-wave
'off':
name: 关
fan: #风扇控制部分
low:
name: 低
icon: mdi:fan-speed-1
high:
name: 高
icon: mdi:fan-speed-2
我个人并没有使用HA原生的仪表盘作为我的个人界面。相比HA原生,有一个更加强大的界面值得你去了解。
来自github上jimz011大神的界面homekit-infused
我会在下章更新
|