如何将任何智能设备连接到homekit(带有raspberry pi)

许多智能设备跳过了苹果HomeKit的支持,只与Alexa、Google和其他平台集成。不过,通过这个Raspberry-Pi黑客程序,您可以将HomeKit支持添加到任何带有开源Homebridge软件的智能设备中。...

许多智能设备跳过了苹果HomeKit的支持,只与Alexa、Google和其他平台集成。不过,通过这个Raspberry-Pi黑客程序,您可以将HomeKit支持添加到任何带有开源Homebridge软件的智能设备中。

任何智能设备的家庭工具包

如果你都在使用HomeKit,一个大问题是支持它的智能设备太少了。例如,阻碍一些便宜的智能灯泡的唯一原因是它们缺少HomeKit支持。亚马逊选择的“智能灯泡”是来自TECKIN的四包,在本文中,它的价格比一个LIFX灯泡便宜40美元左右。

如何将任何智能设备连接到homekit(带有raspberry pi)

当然,它们没有LIFX那么高档;颜色也没有LIFX那么鲜艳,而且它们在浴室里也能发出嗡嗡声,但只要10美元一瓶,它们的价值是无与伦比的。

不过,主要的问题是它们没有HomeKit支持。他们并不完全是傻瓜,他们与谷歌主页、Alexa、IFTTT和**商的应用程序一起工作。他们是好的人谁只有TECKIN智能灯泡。

但是,由于您无法从HomeKit访问它们,因此无法从Home应用程序、control Center中的小部件或Siri控制它们。你也不能把它们和其他品牌的灯泡放在一起,也不能把它们用在自动装置上。如果你已经投资了HomeKit,这很可能是一个交易破坏者。

认识homebridge

幸运的是,有一个黑客,使这些特殊灯泡更有用。homekitapi允许称为网桥的设备(如来自philipshue的网桥)连接在其他协议上运行的子设备。您只需将网桥作为设备添加到HomeKit中,它就会在HomeKit中注册连接到它的每个灯光。每当你请求更新一盏灯时,你的**就会与电桥通话,而电桥也会与电灯通话。

所以,网桥只是将信息从一个API传递到另一个API。因为你可以通过互联网控制TECKIN灯泡,所以完全可以用软件将它们连接到HomeKit,而不需要专有的硬件。

如果你有一个树莓圆周率(5美元圆周率零是好的),你可以设置它作为一个桥梁与一个框架称为Homebridge。这个轻量级的NodeJS应用程序模拟homekitapi,并将请求转发到非HomeKit智能设备。

基本上,你在Pi上运行它,它会将每个“哑”设备添加到家庭应用程序中。当您试图通过家庭应用程序或Siri控制灯泡时,Homebridge会为您与设备进行对话。安装之后,就好像设备一开始就支持HomeKit一样。

这要求设备在任何时候都运行Homebridge,所以这不是你要安装在笔记本电脑上的东西。Raspberry-Pi是理想的,但是如果你有一个旧设备,你可以重新调整它的用途作为一个服务器或桌面,它总是在运行,你可以安装在那里。

Homebridge是一个框架,您可以使用插件对其进行扩展。它有相当大的社区支持,所以很有可能任何给定的智能设备都有Homebridge插件来添加对它的支持。如果你的设备没有插件,但是你的智能设备有一个API,而且你精通技术,你可以自己写一个。

不过,对于大多数人来说,安装只是安装Homebridge和设备的品牌插件,以及一些配置。如果您可以使用命令行,并且有一点时间,那就相当容易了。

安装和配置homebridge

Homebridge是一个NodeJS应用程序,因此您必须安装node和npm才能使用它。如果您的机器运行Linux,您可能可以从包管理器获得它。

在Ubuntu上,您必须键入以下内容才能手动设置节点repo,然后安装nodejs:

curl -sL https://deb.nodesource.com/setup_13.x | sudo -E bash - sudo apt-get install -y nodejs

否则,您可以查阅Node的下载页面,了解如何为特定操作系统安装Node的信息。

如果您在Linux上,还需要安装一些依赖项,如下所示:

sudo apt-get install libavahi-compat-libdnssd-dev

之后,您可以通过npm全局安装Homebridge,如下所示:

sudo npm install -g --unsafe-perm homebridge

您还需要安装所需的品牌插件,因为Homebridge只是一个框架。例如,对于TECKIN灯泡,插件是homebridge tuya web,它也在全球范围内安装。

您可以键入以下内容:

npm i homebridge-tuya-web -g

所有东西安装好后,你就可以使用它了!键入以下命令以运行Homebridge一次并初始化所有内容:

homebridge

它会抱怨缺少配置,这是您必须创建的。默认目录是~/.homebridge/,但是如果要移动它,可以使用-U参数。

键入以下内容在此文件夹中创建新的JSON配置文件:

nano ~/.homebridge/config.json

无论使用何种插件,都需要以下基本配置:

{ "bridge": { "name": "Homebridge", "username": "CC:22:3D:E3:CE:30", "port": 51826, "pin": "031-45-154" }, "description": "Custom HomeBridge Server", "ports": { "start": 52100, "end": 52150, }, "platforms": [ ] }

这将使用默认端口、名称、PIN和端口范围配置Homebridge,以便分配给其他设备。

在空的platforms数组中,放置每个插件的配置。您应该能够在每个插件的GitHub页面上找到这方面的说明和示例。

在下面的示例中,TECKIN Bulls的homebridge tuya web插件希望知道我的用户名和密码,以便连接到Bulls应用程序的API,以及其他一些事项:

"platforms": [ { "platform": "TuyaWebPlatform", "name": "TuyaWebPlatform", "opti***": { "username": "username", "password": "password", "countryCode": "1", "platform": "**art_life", "pollingInterval": 10 } } ]

一旦配置完毕,Homebridge就可以开始了。再次运行它,你的终端会显示一个巨大的二维码,可能会迫使你缩小。用家庭应用程序扫描此文件,将其和所有连接的设备添加到家庭工具包。

如何将任何智能设备连接到homekit(带有raspberry pi)

Homebridge加载您的插件,并应在屏幕上为找到的每个设备记录一条消息。添加后,您应该在HomeKit中看到它们,并且它们应该功能齐全。

我确实注意到,与我的后进先出灯泡相比,有一点延迟。这可能是因为灯泡是通过API控制的,而不是直接控制的。起初,灯泡也没有显示一些白色和暖白色正确,但经过一点调整,我能够设置适当的场景。

您可以始终在自己的应用程序中配置设备,等待家庭应用程序更新,然后在HomeKit中使用预先设置的配置设置场景。

如果需要重新添加Homebridge,则需要删除config目录中的persist/文件夹,然后从“bridge”选项卡下任何已连接灯泡的设置中删除HomeKit中的bridge。

将homebridge添加为服务

如果您想让Homebridge一直运行,您可能需要将其配置为在崩溃或Raspberry Pi重新启动时重新启动。您可以通过Unix服务来实现这一点。在验证Homebridge是否按预期工作后设置。

首先,添加一个名为homebridge的新服务用户:

sudo useradd -M --system homebridge

设置密码:

sudo passwd homebridge

接下来,您必须将homebridgeconfiguration移到个人主目录之外。/var/lib/homebridge/应该可以:

sudo mv ~/.homebridge /var/lib/homebridge/

确保使用homebridge的用户拥有该目录和所有子文件夹的所有权:

sudo chown -R homebridge /var/lib/homebridge/

完成后,就可以创建服务了。为此,创建一个名为homebridge.service服务在/etc/systemd/system/:

sudo nano /etc/systemd/system/homebridge.service

然后粘贴以下配置:

[Unit] Description=Homebridge service After=syslog.target network-online.target [Service] Type=simple User=homebridge ExecStart=/usr/bin/homebridge -U /var/lib/homebridge Restart=on-failure RestartSec=10 KillMode=process [Install] WantedBy=multi-user.target

重新加载服务守护进程以使用您的更改对其进行更新:

sudo systemctl daemon-reload

现在,您应该能够启用服务(将其设置为在引导时运行):

sudo systemctl enable homebridge

开始吧:

sudo systemctl start homebridge

如果需要调试由服务配置引起的错误,可以通过键入以下内容查看服务的日志:

journalctl -fn 50 -u homebridge

  • 发表于 2021-04-02 19:52
  • 阅读 ( 200 )
  • 分类:互联网

你可能感兴趣的文章

你的树莓皮安全吗?

你的树莓皮安全吗?当然是。但它真的安全吗?上面的数据安全吗?这个计划会被推翻吗? ...

  • 发布于 2021-03-13 03:37
  • 阅读 ( 226 )

树莓皮:非官方教程

This guide is available to download as a free PDF. Download this file now. Feel free to copy and share this with your friends and family. ...

  • 发布于 2021-03-13 15:59
  • 阅读 ( 289 )

在raspberry pi上设置vnc,以便用任何pc或手机远程控制它

使用Raspberry Pi作为标准PC(带有显示器和键盘)是与设备交互的一种方式。但通常情况下,您可能不需要这些物品。您的USB端口可能太忙,无法连接键盘,而显示器对于您的项目来说可能太笨重。虽然小巧、便携的触摸屏显示器...

  • 发布于 2021-03-15 12:57
  • 阅读 ( 252 )

如何直接连接到树莓皮没有互联网

树莓圆周率的多功能性意味着在某个时候,你一定会在户外使用它,超出你的无线网络。那么,如果不**键盘和显示器,如何与之通信呢? ...

  • 发布于 2021-03-16 08:17
  • 阅读 ( 217 )

用emby把你的raspberry pi变成一个媒体服务器

寻找一个智能,易于使用的Raspberry Pi媒体服务器解决方案与客户端应用程序的良好选择?也许你看了Plex或Kodi,但发现它们似乎不对。如果是这样的话,值得一试。 ...

  • 发布于 2021-03-19 08:43
  • 阅读 ( 774 )

26种树莓皮的妙用

This guide is available to download as a free PDF. Download this file now. Feel free to copy and share this with your friends and family. ...

  • 发布于 2021-03-19 18:15
  • 阅读 ( 352 )

如何将xbox one控制器连接到raspberry pi

复古游戏迷渴望将你的Xbox One控制器连接到你的Raspberry Pi?多亏了RetroPie和Recalbox中的自动配置工具,才有可能用Xbox控制器控制游戏。 ...

  • 发布于 2021-03-20 02:03
  • 阅读 ( 336 )

用覆盆子皮打造你自己的亚马逊alexa智能音箱

突然间,每个人都在和他们的技术交流。智能**,电视,甚至灯泡——都能被家庭助理控制。随着物联网接管了你的家,你会发现更多的设备突然能够响应你的声音,这要感谢亚马逊Alexa这样的虚拟助手。 ...

  • 发布于 2021-03-21 08:42
  • 阅读 ( 202 )

如何在raspberry pi上安装操作系统

你的Raspberry Pi没有预装操作系统。 ...

  • 发布于 2021-03-21 13:44
  • 阅读 ( 253 )

如何用raspberry-pi和ifttt构建光感应智能开关

黄昏到黎明开关和定时器开关都是方便的方式来自动控制您的灯光。如果你能将两者结合起来,甚至把它们连接到互联网上,形成一个真正的智能照明系统,那不是很好吗? ...

  • 发布于 2021-03-22 21:01
  • 阅读 ( 267 )