用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

华峰博客 252

众所周知,目前国内智能家居厂商各自跑马圈地、各自为政,每个厂家都搞一个网关、一个APP,致使终端消费者手机里一大堆智能家居APP,家里一大堆各品牌的网关,这不仅造成了极大的资源浪费,也导致整个智能家居体验非常糟糕。

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

zigbee3.0之前一直宣称要打破各品牌之间的隔阂,然而依然没有成功,到现在各品牌的zigbee网关和zigbee产品仍然不能互联互通。

今天我们给大家介绍的就是旨在打破各品牌zigbee产品的隔阂的超级网关zigbee2mqtt。目前zigbee已经支持了来自315家不同厂商的2301种设备,国内常见的zigbee设备厂商绿米aqara 、小米、涂鸦智能、欧瑞博等基本上都能支持。并且zigbee2mqtt是本地运行的,即使互联网网络故障,仍然不影响它的运转,保证了系统的稳定性。

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

一、安装MQTT服务器程序

1、首先putty登录玩客云系统

操作如下:在您的电脑(电脑需要和玩客云处于同一局域网,你可以理解为同一路由下)上打开putty软件,按下图输入您玩客云的IP地址,选择ssh后点击open打开系统登录界面

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

在系统登录界面输入账号:root后回车,然后再输入密码10245869回车登录系统

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

登录成功后的界面如下

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

2、更新软件库

输入以下命令

aptupdate&& sudo aptupgrade

3、安装mqtt输入以下命令

aptinstall -y mosquitto mosquitto-clients安装MQTT相关软件systemctl enable mosquitto.service 启用系统自动启动服务mosquitto -v 验证是否安装成功

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

二 、下载设置zigbee2mqtt

1、下载安装zigbee2mqtt

curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -apt-getinstall-y nodejs git make g++ gccnode--version Should output v14.X, V16.x, V17.x or V18.Xnpm --version Should output 6.X, 7.X or 8.Xmkdir /opt/zigbee2mqttchown ha:ha /opt/zigbee2mqttsudo -u ha -H -sgit clone --depth 1 https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqttcd /opt/zigbee2mqttnpm ci

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

2、设置zigbee2mqtt

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

1)把zigbee USB dongle插到玩客云USB口,然后查找zigbee USB dongle所在位置

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

ls -l /dev/serial/by-id

会显示如下信息

lrwxrwxrwx.1rootroot13Oct1919:26usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018ED3DDF-if00->../../ttyACM0

记录类似usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018ED3DDF-if00这样的设备信息,等会要用

2)修改配置文件

nano /opt/zigbee2mqtt/data/configuration.yaml

在其中输入如下内容

MQTT settingsmqtt: MQTT base topicforZigbee2MQTT MQTT messages base_topic: zigbee2mqtt MQTT server URL server:mqtt://localhostMQTT server authentication, uncommentifrequired: user: my_user password: my_passwordhomeassistant:trueSerial settingsserial: Location of the adapter (see first step ofthisguide) port: /dev/serial/by-id/XXXX XXXX替换为上一步找到的zigbee USB dongle设备信息 frontend: Optional,default8080port:8080Optional,default0.0.0.0host:0.0.0.0

3)启动zigbee2mqtt

cd/opt/zigbee2mqttnpm start

如果正常启动会显示类似下面的信息

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

4)设置开机自启动

nano/etc/systemd/system/zigbee2mqtt.service

输入以下内容

[Unit]Description=zigbee2mqttAfter=network.target[Service]ExecStart=/usr/bin/npmstartWorkingDirectory=/opt/zigbee2mqttStandardOutput=inheritOr use StandardOutput=null if you dont want Zigbee2MQTT messages filling syslog, for more options see systemd.exec(5)StandardError=inheritRestart=alwaysRestartSec=10sUser=pi[Install]WantedBy=multi-user.target

使能服务自启动

systemctlenablezigbee2mqtt.service使能systemctl restart zigbee2mqtt 重启

此时打开玩客云IP地址:8080就可以打开zigbee2mqtt的管理界面了,在这里您可以管理加入网关的zigbee设备

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

5)添加zigbee设备

在页面点击允许添加新设备(所有),然后把要加入进来的zigbee设备按reset按键进入配网模式,设备就会自动加入进来了。

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

三、HA配置

1、homeassistant配置MQTT插件

从设置找到集成

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

点击添加集成

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

在搜索框内输入mqtt

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

在服务器输入框内输入localhost,端口保持默认的1883即可。

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

配置完成ha的mqtt之后,因为我们已经在zigbee2mqtt中配置了homeassistant的自动发现设备功能,此时home assistant会自动发现并加入zigbee2mqtt中的设备。

用40元的玩客云做一个支持跨品牌智能家居超级zigbee网关

总结

正如前面所说zigbee2mqtt支持的zigbee产品的品牌型号设备众多,可以让我们摆脱一个厂家一个网关的窘境,zigbee2mqtt的本地化运行可以拜托网络不稳定的限制,即使家里路由器瘫痪了,你装在玩客云里的zigbee2mqtt和home assistant依然可以正常运行你设置的自动化联动。

上一篇:

下一篇:

  同类阅读

分享