树莓派 + Home Assistant + HomeKit 从零开始打造个人智能家居系统(3):初步配置 Home Assistant

树莓派 + Home Assistant + HomeKit

如同很多开源项目,Home Assistant 对新手十分不友好,它更像是 Geek 们的玩物,你需要去阅读大量的英文文档,在编辑器里编辑自己的配置文件、手动添加智能设备、自定义每一个细节,这巨大的工作量使人望而却步。而 Hass.io 就是在这样一个背景下推出,它拥有了全新的可视化安装配置界面,能够轻松的安装与升级(不要在意那些网络细节),更重要的是依托于 Docker 技术,Hass.io 提供了插件(Add-ons)功能,你能够非常方便的安装与管理一些之前需要在命令行环境下部署的功能。如果你随同上一篇文章安装好了自己的 Hass.io,那么今天,我们将一起让它真正工作起来。

一、插件的安装

安装插件

点击左边栏 Hass.io 选项,于右上方进入插件商店。

插件(Add-ons)扩展了 Home Assistant 的功能,官方提供了 Duck DNSGoogle AssistantSSH ServerSamba 等插件,用户还可以通过简单的操作,安装第三方插件,实现更多功能。

插件商店

安装 Samba 插件

SambaSMB/CIFS 网络协议的重新实现, 它作为 NFS 的补充使得在 Linux 和 Windows 系统中进行文件共享、打印机共享更容易实现。

Smaba 服务是必装的一个插件,Hass.io 通过它与局域网内的其他设备进行文件共享,是之后编辑 Hass.io 配置文件的前提。在插件商店找到 Smaba Share,点击进入安装界面,点击 INSTALL 进行安装。

Smaba

安装结束后(耐心等待)进入 Info 及 Options 界面,打开自动更新,点击 Start,SMB服务就启动了。

配置Smaba
{
  "workgroup": "WORKGROUP", /*用户组(可选),默认值 WORKGROUP。*/
  "name": "hassio", /*用户名(可选),默认值 hassio。*/
  "guest": true, /*(可选)是否允许客人用户(无用户名无密码)默认值 true。*/
  "map": {      /*开放文件夹(可选),可选有 config,addons,share,backup,ssl。*/
    "config": true,
    "addons": true,
    "ssl": false,
    "share": true,
    "backup": true
  },
  "username": "", /*登录用户名(可选)。*/
  "password": "", /*登录密码(可选)*/
  "interface": "eth0" /*开放接口(可选),有线网连接使用 eth0,无线网连接使用 wlan0。*/
}

▲配置说明

安装 SSH server 插件

{
  "authorized_keys": [], # 公钥,与下一个选项二选一,两种登陆方式
  "password": "1234567"  # 填入SSH登陆密码
}

▲配置说明

通过 SSH 登录的用户名是 root

二、Home Assistant 配置框架

在 Windows 或 macOS 的网络共享中找到并打开 hassio,(如果在 Windows 网络中不显示,在资源管理器中输入 \\HASSIO 回车后进入)config 文件夹内的 configuration.yaml,是我们配置的主文件,通过编辑此文件来设置 Hass.io、添加组件、个性化配置系统。

你必须重新启动 Home Assistant 才能使更改后的 configuration.yaml 生效。

YAML 是一个可读性高,用来表达资料序列的编程语言。YAML参考了其他多种语言,包括:XML、C语言、Python、Perl以及电子邮件格式RFC2822,是专门用来写配置文件的语言,非常简洁和强大,远比 JSON 格式方便。

需要注意的是 YAML 是一个对缩进以及空格等元素敏感的编程语言,而 configuration.yaml 的语法错误会造成 Hass.io 无法正常运行。

YAML 基本语法规则:

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格。
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可

推荐使用 Sublime 或者 Atom 编辑 configuration.yaml 文件,你可以使用 YAMLLint 检查您的YAML语法是否正确。

下面是典型的 configuration.yaml 文件。

homeassistant:
  # 后面的文字是注释,被系统忽略。
  # 智能家居系统的名字,显示在主界面顶部。
  name: Home
  # 下面填入纬度和经度,计算太阳升起和设定时间所需位置,越精确越好。
  latitude: 30.169813
  longitude: 114.192472
  # 海拔高度用于修正天气参数和日出日落时间参数 (默认单位是:米)。
  elevation: 37
  # 度量衡单位制式(metric)是公制,(imperial)是英制。
  unit_system: metric
  # 时区,从这里选择你的:http://en.wikipedia.org/wiki/List_of_tz_database_time_zones,一般不需要修改。
  time_zone: Asia/Shanghai
  #下面这个区域,用于自定义设备属性,后期文章会有涉及。
  customize: !include customize.yaml
#在网页界面的首页显示简介(那一大段英文),不想看到的话,请在前面加上#号。
introduction:

# 是否使用默认的“首页”
frontend:

http:
  # 给系统网页的登录加上一个密码,先去掉下面这行的#号,然后把PASSWORD改成你想要的密码。
  api_password: raspberry

# 升级提示,当 HomeAssitant 有新版本发布的时候,“日出日落”图标会变成(Update)字样
updater:

# 系统自动发现新的设备
discovery:

# 启动浏览器的语音命令
conversation:

# 在系统数据库中保存“历史数据”
history:

# 在logbook查看所有的“已发生事项”
logbook:

# 设置
config:
# Hass.io
hassio:

# 太阳“跟踪器”,也就是“日出日落时间”
sun:

# 小米智能网关
xiaomi:
  gateways:
      - mac: xxxxxx
        key: xxxxxx
sensor: !include sensors.yaml
group: !include groups.yaml
automation: !include automations.yaml

三、添加第一个设备/服务

在 Home Assistant 中,所有接入设备或者服务,只需要将相关组件写入 configuration.yaml 文件中即可。

组件(Components)是 Home Assistant 的设备/服务接入形式,官方支持了 700 多种设备(虚拟设备)的接入,在 0.50 版本中,支持了小米智能家居的多种设备。通过自定义组件以及第三方组件,能够实现更多设备的接入。

添加 Denon 功放

Home Assistant 对组件进行了分类,同品牌的设备会归于一个平台。根据官方文档,在 configuration.yaml 文件中添加以下内容。

# 天龙功放
media_player: # 设备类型
  - platform: denon # 所属平台
    host: 192.168.1.13 # IP地址

重启 Home Assistant 服务。

重启 Home Assistant 服务的几种方法:

重启 Home Assistant 服务
重启 Home Assistant 服务
重启 Home Assistant 服务

在 Advanced Settings 中,还可以直接重启树莓派。

重启 Home Assistant 服务

是不是很贴心,再加上 SSH 连接下的命令行重启,Home Assistant 为我们展示了服务重启的五种方法,这个知识点大家一定要牢记,必考题。

刷新浏览器,Marantz NR1504 设备就显示在 Home Assistant 首页上了。

关闭状态
开启状态
控制面板

四、下节预告

  • 小米设备的接入
  • Home Bridge 安装与配置
  • HomeKit 配置与使用
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容