小米智能家居+树莓派搭建Apple Homekit智能系统

购买树莓派

我购买的是树莓派 3B+,主板加上16G内存卡、读卡器、只要300元,还有就是记得准备一根网线。

安装系统

系统版本选择

https://www.raspberrypi.org/downloads/raspbian/
有两个版本选择,一个是桌面版,一个是轻量级无桌面Lite版本,我选择了Lite版本,桌面对我而言没有什么价值,体积大且启动速度慢。

刻录系统到内存卡

我是Mac电脑,选择了Etcher刻录系统,选择下载好的系统(img后缀,如果是zip记得先解压),静候6分钟就刻录完毕。

image.png

开启ssh协议

为了可以远程连接,需要开启ssh协议,在刻录好的内存卡中增加一个名称为ssh的文件,随便复制一个文件改个名称即可,记得是无后缀名文件

image.png
启动

把内存卡插入树莓派,插入网线、键盘,然后开机

寻找IP地址

可以通过路由器来查看树莓派的ip地址,建议绑定一个固定的ip地址,方便日后使用。

登录

可以通过插入鼠标键盘直接操作桌面,也可以通过ssh远程登录,默认的用户名是pi、初始密码raspberry

ssh pi@192.168.31.100

安装软件

更改软件源

由于官方的软件源很慢,而且容易失败,建议换成国内的软件源,下面是阿里巴巴的软件源。

sudo nano /etc/apt/sources.list

输入下面的代码,然后保存退出

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi

sudo apt-get update

安装Node.js
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs

要耐心等候,需要半个小时才能安装完毕。

安装 avahi
sudo apt-get install libavahi-compat-libdnssd-dev
安装 HomeBridge
sudo npm install -g --unsafe-perm homebridge

对应的开源地址 https://github.com/nfarina/homebridge

安装 homebridge-mi-aqara
sudo npm install -g homebridge-mi-aqara

有必要好好研究homebridge-mi-aqara插件的开源项目,看看支持的配件,有条件的自己写代码拓展功能。
https://github.com/YinHangCode/homebridge-mi-aqara

配置参数

获取米家网关参数

如果是米家空调通过这种方式获取

image.png

如果是Aqara空调伴侣升级版,在米家APP是无法获取局域网协议密码,需要通过Aqara公司推出的Aqara APP来获取密码,mac地址可以直接在路由器上查看。
image.png

配置 HomeBridge

获取到参数后,输入命令进入编辑页面

nano ~/.homebridge/config.json

填写下面的内容,需要修改gateways为对于网关的内容,control o保存,control x退出编辑界面。

{
    "bridge":{
        "name":"WikiHomebridge",
        "username":"7C:49:EB:1A:BE:58",
        "port":51826,
        "pin":"233-62-666"
    },
    "platforms":[
        {
            "platform":"MiAqaraPlatform",
            "gateways":{
                "7c49eb82992d":"EKPJQGHTK8KNKPOK"
            }
        }
    ]
}

参数说明:

name:homekit 添加配件看到网关的名字
username:随便填写,但是格式需要是mac地址
port:随意填写,只要不被占用的端口
pin:homekit 添加配件输入的代码
sid:网关的mac地址(去掉冒号变成小写,比如7C:49:EB:1A:BE:47=7c49eb1abe47
password,上面的2174B40C1EF24296位置是密码:上面局域网通信协议的密码(需要区分大小写)

启动 HomeBridge
homebridge -D
设置后台运行 Homebridge

上面的homebridge -D有个问题,一旦我们关闭了ssh,就断开连接了,我们需要让服务在后台运行,所以需要下面的命令来实现,这个会输出日志到 log.txt,方便我们查询。

nohup homebridge -D > log.txt &
设置开启自动启动
sudo nano /etc/rc.local

在打开的文本中找到exit 0,在此之前添加的代码在启动时都会被执行,在exit 0 之前添加一行代码:

su pi -c "exec nohup homebridge -D > /home/pi/log.txt"

ctrl+o保存,ctrl+x退出,在终端输入:sudo shutdown -r now ,重启测试,或者直接拔掉重新插入电源测试。

HomeKit 配置

iOS 的 HomeKit 配置

打开iPhone的家庭APP,点击“添加配件”,输入刚才那8位的代码,或者扫描二维码就可以添加设备。

自动化和远程访问 HomeKit 配件

以上操作都是只能在局域网使用,如果需要远程控制,那么就要建立一个家居中枢,国内用户建议选择iPad作为家居中枢,只要可以安装iOS10或以上系统即可,充值信仰的时刻到了。
https://support.apple.com/zh-cn/HT207057

image.png

推荐阅读更多精彩内容