找回密码
 立即注册
查看: 421154|回复: 673

[进阶教程] 利用zigbee模块DIY一个万能zigbee网关

 火... [复制链接]

15

主题

207

回帖

1936

积分

禁止访问

积分
1936
金钱
1694
HASS币
90

教程狂人

发表于 2018-8-2 17:03:43 | 显示全部楼层 |阅读模式
本帖最后由 dodojie 于 2018-8-2 17:19 编辑

【引语】

      说实话,手里有小米网关用着,原本无须自己diy网关,直到,我入了一个绿米的智能门锁S2,从此就踏入了门锁接入hass的漫漫之路。最终通过这种DIY的第三方网关成功的将门锁接入了hass。至于怎么接入绿米门锁S2,将会在后续教程更新里详细说明,不在本期讨论,本次教程重点教大家如何DIY 第三方zigbee网关。本教程是基于github上的zigbee2mqtt项目,我只是个搬运工,我把源链接附上,大家需要的话,可以自己看。

github项目链接
https://github.com/Koenkk/zigbee2mqtt


【硬件准备】



1、zigbee CC2531 Sniffer USB dongle   (必选)

2、zigbee仿真器CC-Debugger   

3、zigbee CC2531  烧录线   

4、32位win7PC一台(已知本硬件驱动不支持win10,不确定64位win7是否可用,自行测试吧)
赘言:我之前研究github上项目的时候,有介绍说如果没有CC-Debugger的话 ,也可以用esp8266通过刷固件做代理来给cc2531烧录固件。但是,我亲测没用成功,感兴趣的可以自己测试一下。

考虑到CC-Debugger这个硬件是专门用来给cc2531烧录固件的,各位同学可能只需要用到一次,所以你们可以从马云爸爸那里只买一个cc2531模块,然后将模块邮递给我,我免费替你们烧录,但是来回邮费自行承担。这样也可以给那些不会烧录固件的同学减少不少压力。


【烧录固件】
(由于附件大小的限制,本教程所有需要用的资源和文件,我都以百度网盘共享链接的形式放在下面)

1、打开名为"swrc045z.zip"的压缩包,安装cc2531的驱动。

2、打开名为"swrc212a.zip"的压缩包,安装CC-Debugger的驱动。

3、打开名为"flash-programmer-1.12.8.zip"的压缩包,安装zigbee模块的烧录程序。

4、将 CC-Debugger ---> 烧录线  --->  cc2531  依次连接好,然后CC-Debugger和cc2531都插进PC的USB接口(请注意,在cc2531的针脚处会有1和10来标注针脚的顺序,请跟烧录线上的对应好,千万别插错了)
如下图所示: (, 下载次数: 6)

5、打开刚才安装好的烧录程序SmartRF,在固件镜像处选中名为"CC2531ZNP-Prod.hex"的固件并烧录。
具体选项如图所示:
(, 下载次数: 4)

6、烧录完成。

本文所用到的所有文件通过如下链接自行下载。
游客,如果您要查看本帖隐藏内容请回复


【安装zigbee2mqtt】

       zigbee2mqtt主要有三种安装方式,第一种是在linux系统环境运行。第二种是通过hassio addon的方式运行。 第三种是在docker环境以容器的方式运行。(其实,第二种和第三种方式差别不大)

       因为,我是用的群晖系统做的智能家居平台中枢,所以,在这里,我只说说通过docker的方式运行。其他方式运行,同学们可以自行查阅项目介绍,根据介绍安装。

1、运行如下命令,自动安装并运行zigbee2mqtt容器(amd64架构)

docker run --name=zigbee2mqtt -it -v /your_path:/app/data --device=/dev/ttyACM0 koenkk/zigbee2mqtt


如果你是用的树莓派的话,请自行换成如下命令:

docker run --name=zigbee2mqtt -it -v /your_path:/app/data --device=/dev/ttyACM0 koenkk/zigbee2mqtt:arm32v6


请将"/your_path"换成你自行选择的目录路径,可以随意路径的目录,但不能有权限问题。

2、找到你刚才给"/your_path”替换的路径,打开"configuration.yaml"文件配置mqtt服务器ip地址和用户名密码。
格式如下:
homeassistant: false
permit_join: true
mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://192.168.4.1'
  user: XXXXXXX
  password: XXXXXXX
serial:
  port: /dev/ttyACM0 


关于"permit_join: true"这项,我需要说明一下,如果你需要给该zigbee网关添加zigbee设备的话,该项就必须得是"true",
表示允许配对zigbee设备。当你配对添加zigbee设备完成之后,该项就可以改成false,表示不再接受zigbee设备配对加入。

关于"port: /dev/ttyACM0"这项,切记不要改,如果不出意外的话,各位同学的cc2531串口应该都是ttyACM0。  


【zigbee设备配对】
配对其实很简单,还是长按小米zigbee设备的各种按键,以启动配对模式。至于其他品牌的zigbee设备,就需要各位自行查找如何启动配对模式了。但是这里需要提醒一点,大家最好能进入docker容器的日志功能,通过实时日志来确认配对成功与否,目前,我亲测的是,经常会一次不能配对成功,需要多次尝试才会成功。

先来一份目前zigbee2mqtt支持的所有zigbee设备列表。打开链接自己看吧

https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-devices


讲到这里,可能有的同学会问了,那那些不支持的zigbee设备也能用吗?答案是,能用。
但是,在列表里没支持的设备,需要大家来做部分修改,以使支持,过程其实挺简单的,本次教程就不说,我会在下一篇教程里,通过将aqara智能门锁S2添加进支持来举例,详细说明怎么添加目前未支持的zigbee设备。


最后,热烈祝贺hass论坛注册人数突破万人大关,山东潍坊发来贺电。值此举国欢腾之际,特发此贴,以示对hass平台的热爱。

评分

参与人数 8金钱 +84 收起 理由
kalabock + 2
wangtwothree + 5 大佬是老乡啊,我青州的
dizherui + 5 CC2530模块可以吗?
hugo + 5 论坛有你更精彩!
sangood + 7 感谢,我使用 Arduino uno 方式 ,应该可以.
Mirukuteii + 20 恭喜论坛首位hass币获得者
+ 20 非常之666~
neroxps + 20 感谢分享,居然小米也有支持的.

查看全部评分

回复

使用道具 举报

5

主题

351

回帖

1415

积分

金牌会员

积分
1415
金钱
1059
HASS币
0
发表于 2018-8-2 17:05:35 | 显示全部楼层
感谢分享!!
回复

使用道具 举报

40

主题

3016

回帖

1万

积分

超级版主

Nero

积分
11150
金钱
8044
HASS币
182
发表于 2018-8-2 17:07:09 | 显示全部楼层
本帖最后由 neroxps 于 2018-8-2 17:08 编辑

66666,感谢分享,居然小米都有支持的。~
楼主列个费用清单参考下呗。
Nero
回复

使用道具 举报

17

主题

318

回帖

2552

积分

金牌会员

积分
2552
金钱
2217
HASS币
0
发表于 2018-8-2 17:12:42 | 显示全部楼层
这个高级了 刚好手上有几个2530 看能否用上
回复

使用道具 举报

15

主题

207

回帖

1936

积分

禁止访问

积分
1936
金钱
1694
HASS币
90

教程狂人

 楼主| 发表于 2018-8-2 17:14:16 | 显示全部楼层
neroxps 发表于 2018-8-2 17:07
66666,感谢分享,居然小米都有支持的。~
楼主列个费用清单参考下呗。

我将我购买硬件的费用,给列一下吧,你做个参考。

zigbee CC2531 Sniffer USB dongle    51.3元

zigbee仿真器CC-Debugger                39.2元

zigbee CC2531  烧录线                       18元

其实后两种硬件不是必须的,但是烧录固件的时候需要用到。做网关,真正需要的硬件就是

zigbee CC2531 Sniffer USB dongle
回复

使用道具 举报

13

主题

541

回帖

4336

积分

论坛元老

Jeff

积分
4336
金钱
3782
HASS币
10

活跃会员

发表于 2018-8-2 17:17:11 | 显示全部楼层
浙江人民发来贺电
Jeff
回复

使用道具 举报

40

主题

1111

回帖

4379

积分

论坛元老

积分
4379
金钱
3228
HASS币
0
发表于 2018-8-2 17:52:32 | 显示全部楼层
回复学习,智能门锁接入ha,能干啥,还需要lz给我们多多普及啊,这才是核心目的,最后向lz刻苦钻研精神学习
回复

使用道具 举报

0

主题

33

回帖

497

积分

中级会员

积分
497
金钱
464
HASS币
0
发表于 2018-8-2 17:55:12 | 显示全部楼层
这个厉害!
楼主加油!
回复

使用道具 举报

2

主题

134

回帖

1028

积分

金牌会员

积分
1028
金钱
892
HASS币
0
发表于 2018-8-2 18:02:56 | 显示全部楼层
太复杂  连8266都玩不好的  还是不凑热闹了
回复

使用道具 举报

40

主题

1111

回帖

4379

积分

论坛元老

积分
4379
金钱
3228
HASS币
0
发表于 2018-8-2 18:05:07 | 显示全部楼层
群晖都有docker界面了,还要啥命令多复杂啊,直接套件下安装,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2025-5-3 09:00 , Processed in 0.383402 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表