考虑到家里有个吃灰很久的树莓派2B,最近几年家电自动化发展越来越成熟,所以花了点时间,把树莓派上装好了 Home assistant,把主要过程记录一下。

1、 树莓派2B

主要配置如下:

1
2
3
4
5
6
7
- A 900MHz quad-core ARM Cortex-A7 CPU
- 1GB RAM,实测跑 Docker 够用,速度很快。
- 4 USB ports,启动时用来插鼠标键盘
- HDMI,用来连接显示器
- Micro SD,插 SD 卡
- Mini USB,插电源
- 1 LAN port,插网线

2、安装 Raspbian

Raspbain 下载地址,我用的是 Lite 版本。因为不需要桌面、其他软件。只需要最基础的系统,可以 SSH 上去安装 Docker 和 HA 就好。
https://www.raspberrypi.org/downloads/raspbian/

写卡软件,Mac/Linux/Windows 多平台支持:
https://www.balena.io/etcher/

SD 卡,我用的是当时买树莓派2B时(大约四年前)配的 8G SD。官方推荐要 32G 大小。实测 8G 也没问题,一切正常。Home assistant 本身只是一个指令中枢,需要的储存仅限于一点文本配置文件,所以对储存没啥要求。

用 etcher 把下载好的 OS 压缩文件写入 SD 卡,插入树莓派。给树莓派插上鼠标键盘(USB),插上 HDMI 连接显示器,连上网线,插上 Mini USB 到电源(最好是插座电源,否则会报低电压错误)。

启动之后输入等 login 提示。

  • 输入 pi ,然后输入密码 raspberry 登录。
  • 输入 passwd 更改密码。
  • 输入 rasp-config,在 Interface option 里打开 ssh。

4、启动 Docker - home assistant

在这之前为了节约系统资源,我试过安装原生的 HomeAssistant,结果发现环境问题实在是一笔烂账。所以果断切换到 Docker 方案了事。

安装 Docker:

curl -sSL https://get.docker.com | sh

将 pi 用户添加到 Docker 用户组以便 pi 用户可以直接操作 Docker:

sudo usermod -aG docker pi

新建配置文件目录:

mkdir home-assistant

启动 home-assistant

docker run –init -d –name=”home-assistant” -v /home/pi/home-assistant:/config -v /etc/localtime:/etc/localtime:ro –net=host homeassistant/raspberrypi3-homeassistant

启动完成以后,设置树莓派重启后自动启动 HA container:

sudo crontab

输入:

@reboot docker start home-assistant

5、找到 Home assistant

输入

ifconfig | grep inet

应该可以看到找到分配的 IP 地址,大概类似于 192.168.X…。如果没找到,只有 127 类似开头的,说明树莓派到路由器的通讯有问题,没有自动分配到局域网 IP,也没有连上局域网。

可以试一下是否连上了互联网,随便 ping 一个地址:

ping 163.com

如果本地 IP 正常,那么就可以访问到启动后的 HA 了:

http://your_HA_IP:8123

7、设置 Samba 共享

在配置的时候需要频繁读写配置文件,所以需要配置文件共享来方便读写。

安装 samba

sudo apt-get install samba

调整设置

sudo vim /etc/samba/smb.conf

在最下面添加以下内容

1
2
3
4
5
6
[pi]
path = /home/pi/hdd
valid users = root pi
browseable = yes
public = yes
writable = yes

设置密码

sudo smbpasswd -a pi

6、远程访问

基本配置结束,试试在其他 Terminal 客户端连接树莓派的 SSH。

再试试看能否在网络共享/网络邻居里看到你的 Pi。进入 home-assistant 目录,确认可以看到所有文件,以及编辑和保存。如果不能看到文件,或者读写有问题,需要解决文件权限问题。

为了确认所有准备就绪,重启树莓派(可以试着拔掉电源再插回去),稍等几分钟,看看 Home-assistant 能否自动启动,浏览器可以访问。重新确认 SSH 和共享都可以有效连接。

如果可以顺利登录,就可以拔掉鼠标键盘和显示器,把树莓派插到一个更合适的地方即刻。为了通讯稳定,建议还是插固定网线到路由器。

$ ssh pi@your_HA_IP