本文作者:梁中琪,广州大树信息技术有限公司嵌入式开发工程师,擅长单片机和Python开发。
本文为优快云约稿文章,版权所有,转载请微信联系jiaweidi1214
关注物联网领域,投稿或有报道需求请邮件联系jiawd@youkuaiyun.com
Homebridge简介
Homebridge 是一个轻量级 Node.js 服务器,用 NodeJS 模拟了一个HomeKit Accessory Server,可以在家庭网络上模拟iOS HomeKit API运行。
Homebridge 逆向了 HomeKit 协议,让普通的 Wi-Fi 设备也能接入 HomeKit ,从而通过 Siri 控制。
Homebridge 的作者 KhaosT 是个在美留学的中国人,曾在苹果的 HomeKit 团队实习过。据说当 KhaosT 逆向 HomeKit 之后写了篇博客,但由于涉及到商业机密被苹果法务要求删除文章,好在代码已经早就 fork 开了所以代码才得以流传到现在。试想要是当初代码没有开源,恐怕我们现在还享受不到这一成果呢。
根据 Homebridge 文档,Homebridge可以运行在Linux、Windows和macOS等系统,那么,这里的测试平台就以树莓派为例。
Homebridge-mqtt
Homebridge-mqtt是Homebridge一个动态插件。它以MVC模式设计。Homebridge-mqtt允许你通过mqtt API添加和控制配件,进而通过苹果的HomeKit应用控制这些设备。
安装
Homebridge的安装需要npm,树莓派下安装npm有点麻烦,这里就不详细描述。安装好npm后只需按顺序输入下面语句即可安装homebridge及其相关依赖包。
sudo npm install -g --unsafe-perm homebridge hap-nodejs node-gyp
cd /usr/local/lib/node_modules/homebridge/
sudo npm install --unsafe-perm bignum
cd /usr/local/lib/node_modules/hap-nodejs/node_modules/mdns
sudo node-gyp BUILDTYPE=Release rebuild
接下来可以安装homebridge-mqtt了。
npm install -g homebridge-mqtt
配置
在树莓派上,Homebridge 的配置主要是编辑「/home/pi/.homebridge」下的「config.json」文件。下面是homebridge-mqtt 配置示例。
{
"bridge": {
"name": "Homebridge",
"username": "12:34:56:78:90:AB"<