树莓派 + HomeKit 搭建智能家居服务中心【Hassio系统】

home_assistant_plus_rpi_600x315.png

  实现树莓派做中控服务器的前提,是安装好一个稳定、可用的操作管理平台,即是本文所要安装的Home Assistant,它是基于Python 3开发的一套开源的家庭自动化管理平台。

安装Home Assistant 的方式有很多,这里采用的是基于Docker的Hassio系统的方式安装,在Docker里添加Home Assistant 和其他应用程序,这里也体现出Docker 的一大优势:可以任意添加所需要的软件支持!

架构图:

TIM截图20180630132240.png
(图片来源:瀚思彼岸论坛)

在安装之前,需要准备的是:

  • 树莓派3B 一个;
  • 高速SD卡一张,8G以上;
  • 十足的耐心;
  • 最好备个梯子(因为有时候慢得真的很想一锤子把它砸了23333);

注:写这篇文章的时候,我的树莓派正在安装**Homebridge**,前期可能有很多步骤上的截图没有留下来,但是...没有关系!装不上报错大不了重来2333,诶?别拿锤子啊,年轻人不要冲动


操作步骤

  找一个稳定靠谱的镜像真的很重要!很重要!本人在这里尝试了N+ 个镜像,都没办法很好的兼容,用过Ubuntu、Debian,最后选择的是Raspbian Stertch Lite,安装Hassio: Docker + Debian的方式,很多博主发过这种安装方法,但是因为时间较为久远,有一些源已更新,或者有的资源包已经失效了,导致频繁报错,最终导致无法安装。以下本文所有的安装命令,均以通过本人亲自测试,保证可用。

废话不多说,开始吧。

第一步:刷写官方镜像

TIM截图20180629153544.jpg

下载【官方纯净版镜像】 
注意:是右边那个!左边的会显示内核不兼容,下载方法随意,只要不会损坏镜像就可以,我是使用torrent 下载的;

下载完了之后,再下载Etcher工具并安装,【官方连接】

之后就可以开始,刷写镜像了。用另外一个工具也可以刷写,就是Win32diskimager,用此工具刷写SD卡如果遇到“SD卡不允许写入”的情况的话,可以用Diskgenius等工具,对SD卡先删除分区,然后再格式化为FAT32格式,再接着进行刷写镜像

刷写完成之后,先拔出SD卡,再插入就会提示有一个BOOT分区,大概几十M,在桌面新建一个名为ssh的txt 文档,然后再将它重命名,把txt后缀删掉。
TIM截图20180629154741.jpg
然后把它拖入BOOT的根目录,推出SD卡,插入树莓派中,接上网线和电源。


Putty 安装部分

  这部分坑很多,可能会出现一些莫名其妙的问题,所以要有耐心。有问题谷歌解决,我也不能保证百分百能安装上2333

Putty 登陆

安装好Putty 软件之后,先打开路由器管理界面,或者使用局域网扫描软件,扫面出树莓派的局域网IP地址,这里可以使用 MyLanViewer(PC),Fing(安卓/IOS)。

输入树莓派地址,我这里是192.168.0.130,端口号22,打开
TIM截图20180629160057.jpg

打开之后,用户名是:pi,密码是:raspberry,回车;
TIM截图20180629160411.jpg

进入之后的界面:
TIM截图20180629160430.jpg


好戏开始了233333

把默认的源换成国内源:

sudo nano /etc/apt/sources.list

阿里源地址:

deb http://mirrors.aliyun.com/raspbian/raspbian/  stretch main non-free contrib

deb-src http://mirrors.aliyun.com/raspbian/raspbian/  stretch main non-free contrib

更换deb源:

sudo nano /etc/apt/sources.list.d/raspi.list

deb http://mirrors.aliyun.com/debian/ stretch main ui

更换源之后,要更新一下;

sudo apt-get update
sudo apt-get upgrade -y

设置apt使用HTTPS加载镜像仓库,因为atp请求是HTTP,而Docker镜像仓库已全面启用HTTPS,所以安装Docker之前务必要执行这一步;

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg2 \
    software-properties-common

安装Docker,添加官方GPG key:

curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo apt-key add -

安装Docker-CE仓库,最好能挂个梯子,会快一些;

echo "deb [arch=armhf] https://download.docker.com/linux/debian \
    $(lsb_release -cs) stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list

安装Docker-CE

sudo apt-get update
sudo apt-get install docker-ce
sudo usermod -aG docker $USER

添加加Docker 仓库镜像地址:

sudo nano /etc/docker/daemon.json

进入 nano 编辑器输入:

{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}

键盘 Ctrl + X,输入 Y, 按回车进行保存;

更换 Python 源

cd ~
mkdir .pip
sudo nano ~/.pip/pip.conf

进入 nano 编辑器输入:

[global]
trusted-host=mirrors.aliyun.com
index-url=http://mirrors.aliyun.com/pypi/simple

键盘 Ctrl + X,输入 Y, 按回车进行保存;

到这里差不多已经安装了 2/3 了,然后返回树莓派设置界面

树莓派设置

sudo raspi-config

TIM截图20180630110652.png

使用方向键选择第四项 Localisation Options,然后再选择 Change Timezone =》Asia =》Shanghai,回车,最后按 ESC 退出当前窗口

TIM截图20180630110942.png

保存后截图:

TIM截图20180630111305.png

扩展内部存储至整张SD卡:

sudo raspi-config

选择第七项,Advanced Options =》 Expand Filesystem ,回车

然后重启一下:

sudo reboot

安装 Hassio

更新一下准没错2333

sudo apt-get update
sudo apt-get upgrade -y

安装依赖库:

sudo apt-get install bash socat jq -y

安装Docker UI:

docker pull portainer/portainer:latest

配置Docker UI

docker run -d -p 9000:9000 --name docker-portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

如果这里一切顺利都没有报错的话,这里别把Putty 关了! 接下来打开 Chrome 浏览器,输入 http://树莓派IP:9000 你应该能看到这个界面。

TIM截图20180630114529.png

默认账户名是:admin,密码自己设定,但是要记住!

进去之后选择最左边的那个,把Docker 服务部署到本地树莓派上,即:Docker socket to manage a local Docker engine

(这里没有留下截图...)

然后,回到Putty 安装armhf-homeassistant镜像

docker pull homeassistant/armhf-homeassistant:latest

安装armhf-hassio-supervisor镜像

docker pull homeassistant/armhf-hassio-supervisor:latest

接下来才是正式安装 Hassio ,首先切换到root 身份登陆

sudo su

然后输入:

curl -sL https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install | bash -s -- -m raspberrypi3

安装完成之后,以 pi 身份登入,查看 Hassio 是否安装成功,然后输入:

sudo journalctl -fu hassio-supervisor.service

TIM截图20180630122758.png

如有上图红色方框部分显示,则表示 Hassio 已经安装成功。

安装Homebridge

接下来可以打开 Chrome 浏览器,输入:http://树莓派IP:8123,不出意外的话,应该能看到这个页面:

TIM截图20180630123327.png

如果没能打开,清除一下浏览器缓存,或者等待一会儿就可以。进去之后选择左边栏 Hassio

然后按照下图,把HomeBridge 插件地址填入
https://github.com/zoranke/addon-homebridge

填好之后点击ADD,稍等一会儿,就会出现如3 方框内所示的这些插件:
TIM截图20180630123544.png

然后,在插件列表中,选择Homebridge,点击安装,时间可能会比较长,耐心等待一会儿。

安装完成界面展示:(我这里还安装了SSH服务)

TIM截图20180630124447.png

打开 家庭

最后,用任意一台IOS 设备(升级到了IOS10),打开 家庭 =》 添加设备,就会出现一个Home Assistant 的可用设备啦,是不是很神奇呢?哈哈哈哈....

TIM图片20180630125459.jpg

TIM图片20180630125505.jpg


结束

至此,树莓派安装 Hassio 并添加 Homne Assistant 部署HomeKit教程到此结束。

点赞

发表回复