HomeAssistant 是什么?
HomeAssistant是构建智慧空间的神器。是一个成熟完整的基于 Python 的智能家居系统,设备支持度高,支持自动化(Automation)、群组化(Group)、UI 客制化(Theme) 等等高度定制化设置。同样实现设备的 Siri 控制。基于HomeAssistant,可以方便地连接各种外部设备(智能设备、摄像头、邮件、短消息、云服务等,成熟的可连接组件有近千种),手动或按照自己的需求自动化地联动这些外部设备,构建随心所欲的智慧空间。HomeAssistant是开源的,它不属于任何商业公司,用户可以无偿使用。
文章介绍
最近一直在玩树莓派,而且一直挺中意智能家居这一块,所以想着用树莓派来作为我们的智能家居总控制系统。在网上看了许多关于树莓派做智能家居的资料,最后觉得还是homeassistant最符合我的想法,然后就风风火火的干起来了。
正文
前期准备
1、树莓派4B
2、供树莓派的电源
3、SD卡(至少16G以上)
4、SD卡读卡器
5、显示器(没有也可,有就最好)
一、树莓派开机
1、树莓派官方镜像烧录
2、开机
3、连接局网WiFi
4、打开ssh、VNC远程服务
5、设置新的root密码
二、修改静态ip
1、树莓派下查看自己局域网的IP网段
1|ifconfig
比如我的无线局域网网段是192.168.1.178
2、编辑/etc/dhcpcd.conf文件
1|sudo nano /etc/dhcpcd.conf
进入文件后下滑到最后,添加如下代码
interface wlan0
static ip_address=192.168.1.5/24 #树莓派静态ip地址,端口号24为默认值
static routers=192.168.1.1 #路由器、网关ip地址
static domain_name_servers=192.168.1.1 #DNS域名服务器地址
修改完成后按ctrl+o,"Enter"保存修改文本
后按ctrl+x,退出文本
3、重启树莓派
1|sudo reboot
重启后再查询IP,此时我的无线局域网网段应该是192.168.1.5
手动设置的静态IP不能跟路由器DHCP所自动分配的IP重复,否则树莓派就有可能无法正常联网
三、树莓派更换国内软件更新源
1、先备份源文件
1|sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
2|sudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bak
2、编辑系统源文件
1|sudo nano /etc/apt/sources.list
3、将初始的源使用#注释掉,添加如下两行清华的镜像源
这里的树莓派系统是Raspbian-buster系统,在写系统源链接时要注意是buster,网上很多教程都是之前stretch版本,容易出错!
1|deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
2|deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
保存,退出
4、完成源的更新软件包索引
1|sudo apt-get update&&sudo apt-get upgrade -y
5、还需要更改系统源
1|sudo nano /etc/apt/sources.list.d/raspi.list
用#注释掉原文件内容,用以下内容取代:用#注释掉原文件内容,用以下内容取代:
1|deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
2|deb-src http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
保存退出
6、打开/etc/pip.conf修改
1|sudo nano /etc/pip.conf
修改内容:
1|[global]
2|index-url=https://pypi.tuna.tsinghua.edu.cn/simple
3|#extra-index-url=https://www.piwheels.org/simple
保存,退出
执行:
1|sudo apt-get update
2|sudo pip3 install pip --upgrade
7、安装python3.8
1|sudo apt-get install build-essential libsqlite3-dev sqlite3 bzip2 libbz2-dev
2|wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
3|sudo tar xzvf Python-3.8.0.tgz
4|cd Python-3.8.0
5|sudo ./configure
6|sudo make
7|sudo make install