找回密码
 立即注册

微信扫码登录

搜索
查看: 14574|回复: 16

[技术探讨] zigbee模块自制zigbee网关的问题

[复制链接]

6

主题

284

回帖

4435

积分

管理员

积分
4435
金钱
4140
HASS币
0
发表于 2019-1-14 18:08:03 | 显示全部楼层
首先,要让用户名homeassitant取得串口通讯的权限
sudo usermod -G dialout -a homeassistant;

sudo apt-get install libudev-dev;


然后,编辑一个配置文档,让CC2531有一个指定的设备名字,方便未来的配置和热插拔

使用nano来写一个配置文件
sudo nano /etc/udev/rules.d/99-usb-serial.rules


把下面的内容,粘帖进去
SUBSYSTEM=="tty", ACTION=="add", ATTRS{idVendor}=="0451", ATTRS{idProduct}=="16a8", SYMLINK+="zigbee"


重启UDEV服务
sudo systemctl restart udev.service


重新插拔一下CC2531

查看一下z开头的设备列表
ls -l /dev/z*


正确的话,将显示
/dev/zigbee -> ttyACM0
或者
/dev/zigbee -> ttyACM1
以上的设置,可以避免你未来有2个以上的usb串口设备时,ttyACM0和ttyACM1,有可能在启动时,顺序颠倒后,无法通讯的问题



回复

使用道具 举报

6

主题

284

回帖

4435

积分

管理员

积分
4435
金钱
4140
HASS币
0
发表于 2019-1-14 18:11:48 | 显示全部楼层
如果你使想用docker版本的Zigbee2mqtt,进行完上面的设置后,使用以下命令

sudo docker run -d --restart=always --name=zigbee2mqtt -it -v /etc/localtime:/etc/localtime:ro -v /home/homeassistant/.homeassistant/zigbee2mqtt:/app/data --device=/dev/zigbee koenkk/zigbee2mqtt:arm64v8


我使用斐讯N1做主机,所以最后面版本是arm64v8,请按自己主机的架构类型修改
zigbee2mqtt的配置文件在/home/homeassistant/.homeassistant/zigbee2mqtt/configuration.yaml

按照下面的内容,稍微修改一下就可以,然后重启容器,应该就可以使用了

homeassistant: true
permit_join: true
mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://192.168.1.204:1883'
  user: pi
  password: raspberry
serial:
  port: /dev/zigbee

另外,提醒注意:使用hyper-v或者是esxi,使用宿主机的usb直通通讯功能,cpu必须支持VT-D功能


回复

使用道具 举报

6

主题

284

回帖

4435

积分

管理员

积分
4435
金钱
4140
HASS币
0
发表于 2019-1-15 18:31:31 | 显示全部楼层
Dreamray 发表于 2019-1-15 10:38
感谢回复,提供了很多方法。还想问下,zigbee2mqtt 从usb读取数据只能通过串口吗,读取的是不是存储到cc25 ...

CC2531在zigbee2mqtt的应用中,只负责通讯,配置信息会自动生成别写在configuration.yaml文件中。这样的好处是,即使是cc2531坏掉了,换一个新的cc2531,插上,重启udev服务和docker,马上就可以正常使用了,不用再去配置。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-9-10 05:55 , Processed in 0.239239 second(s), 7 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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