HomeAssistant基础安装和简单配置

目录

之前感觉智能家居无用,直到最近睡觉爬起来开关电扇难以忍受,买两个小米插座…

注意:本文内容已过时,仅做参考!

东西还没到,先将HomeAssistant安装在吃灰的树莓派上,了解一下操作。

以下基于Raspberry Zero W,系统为RASPBIAN STRETCH LITE。

安装

Python库

环境要求为Python 3.5.3 及以上。

创建虚拟环境: virtualenv -p python3 venv (需要先安装virtualenv)

进入虚拟环境: . venv/bin/activate

安装HomeAssistant: python3 -m pip install –upgrade homeassistant

启动: hass

首次启动需要等待安装各种库,安装完成后,打开 http://你的ip:8123/ 应该就能看到界面了。

添加服务

sudo vim /etc/systemd/system/home-assistant@pi.service
[Unit]
Description=HomeAssistant
After=network-online.target

[Service]
Type=simple
User=%i
ExecStart=虚拟环境路径/bin/hass -c "/home/pi/.homeassistant"

[Install]
WantedBy=multi-user.target

重新加载: sudo systemctl –system daemon-reload

启用服务: sudo systemctl enable home-assistant@pi

启动服务: sudo service home-assistant@pi start

配置

大部分设置和设备接入都是在 ~/.homeassistant/configuration.yaml 中操作。

配置密码

取消 ~/.homeassistant/configuration.yamlapi_password: 行的注释,在 ~/.homeassistant/secrets.yaml 中设置密码。

时区

~/.homeassistant/configuration.yamltime_zone 设置为 Asia/Shanghai

设备接入

天气这种也算是设备,其实默认好像带一个日出日落,看到很多高级用法,后面的文章会讲一讲。

  • 雅虎天气
    configuration.yaml 中添加,其中woeid为城市代码,可以在雅虎天气网站获得,如: https://www.yahoo.com/news/weather/china/nanjing/nanjing-21370812137081
  • weather:
      - platform: yweather
         woeid: 2137081
    
  • 小米路由器
    可以用来判断是否在家之类的。
    配置如下:
  • device_tracker:
      - platform: xiaomi
        host: 192.168.xx.1
        password: 密码
    

    其他路由器可能需要开启SSH之类的,参照:https://home-assistant.cc/component/router/

  • 定制地图
    自带的地图是没有细节的,而这个地图更丰富加载也更快。
    https://github.com/cxlwill/ha-inkwavemap
  • 大概就是这样了,目前还啥也干不了。

    其它

    App使用

    下载了App试用,大概和浏览器端差不多,多了通知和定位,通知好像还有点用。
    出门也想操作的话就需要下面提到的外网访问了。

    配置还是很简单的。

    Samba

    和windows的文件共享一样,可以使树莓派上的文件在网络上访问修改。
    参考 这篇

    外网访问

    这样出门也能够在App端或浏览器端进行控制,也可以用api干很多事(还没用到)。

    DDNS:就是根据你的IP变化来更新DNS推荐“dns.he.net”,加入树莓派 Cron 定时请求一个API就可以更新,不需要路由器,可以参考 这篇文章

    端口映射:纯路由器的功能,一般第三方固件都有这功能,靠谱点的路由器也有,把公网IP端口映射到局域网某个设备的某个端口,比如访问http://你的ip:2333/ 就是访问 http://192.168.1.x:2333/ (注意运营商已经屏蔽了80和443端口)。

    Nginx反代(非必须):统一管理,可以配置ssl。解决无法登陆的问题见 上一篇文章

    成功登陆后提示 Login attempt or request with invalid authentication from 127.0.0.1 ,修改配置 vim ~/.homeassistant/configuration.yaml , 在 http 下添加

      trusted_networks
        - ::1
    

    参考

    http://kittenyang.com/homebridge-practice/
    https://home-assistant.cc/
    http://cxlwill.cn/Home-Assistant/HomeAssistant-Device-Access/