Ti cc2531 usb cdc driver windows 7

Самый простой способ прошить стик CC2531. Нужен только компьютер с Windows и свободный usb порт

Самый простой способ обновить прошивку стика CC2531. Нужен только компьютер с Windows и свободный usb порт

Первоначально нужно, чтобы СС2531 был прошит любой ZNP прошивкой. Например Z-Stack-firmware для Zigbee2Mqtt. В этих прошивках имеется встроенный загрузчик, который позволяет залить прошивку через UART.

Для этого нам понадобится программа SerialBootTool. Скачиваем и устанавливаем.

Так же скачиваем прошивку отсюда, нам нужен файл с расширением .bin

Вставляем CC2531 в usb порт. В первый раз Windows определяет устройство и скачивает драйвера, нужно подождать секунд 10.

В обычном состоянии CC2531 будет светить зеленым светодиодом.

Запускаем SerialBootTool. При запуске выбираем ZIGBEE

Далее выбираем файл прошивки в поле Image File, выбираем порт cc2531 через кнопку Port Settings, у меня COM5. Остальные параметры не меняем.

И жмем кнопу Load Image.

Загорится красный светодиод.

Дожидаемся окошка об успешном выполнении и стиком можно пользоваться

P.S:

Для cc2531 в Windows 7 нужно скачать драйвер вот отсюда, сам он не подтянется. Спасибо за комментарий пользователя RustamG

5
2
голоса

Рейтинг статьи

Для прошивки CC2531 без дебагера нам понадобиться:

  • Прошитый USB Stick CC2531.
  • Windows компьютер, но думаю подойдет и mac с Parallels.

Важно! Этот метод подойдет только тем, у кого на руках уже прошитый стик (любой Z-Stack прошивкой). В этих прошивках имеется встроенный загрузчик.

Какие бывают прошивки?

Прошивка для координатора.

Прошивка для роутера.

Процесс обновления прошивки

  • Для перепрошивки стика нам понадобиться SerialBootTool, скачиваем его с ti.con (официальный сайт Texas Instruments). Распаковываем и устанавливаем.
  • Берем необходимую прошивку из предыдущего раздела.

Далее подключаем CC2531 в свободный USB порт компьютера, Windows сама установит необходимые драйвера.

Если процесс прошивки не начался, передергиваем стик и повторно нажимаем Load Image. 

По окончанию процесса мы видим сообщение об успешном обновлении USB Stick CC2531.

Вот собственно и все, я думаю это самый простой способ для того, чтобы обновить ПО вашего стика или же изменить его предназначение с координатора в роутер и наоборот. 

; ; Texas Instruments CC2531 Low-power RF to USB Serial Port example setup file ; ; based on Windows USB CDC ACM Setup file ; Copyright (c) 2000 Microsoft Corporation ; Copyright (C) 2009 Texas Instruments Inc [Version] Signature=»$Windows NT$» Class=Ports ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} Provider=%PROVIDER% LayoutFile=layout.inf DriverVer=05/01/2009,1.1.0.0 [Manufacturer] %MFGNAME%=DeviceList, NTx86, NTia64, NTamd64 [DestinationDirs] DefaultDestDir=12 [SourceDisksFiles] [SourceDisksNames] [DeviceList.NTx86] %DESCRIPTION%=DriverInstall, USBVID_0451&PID_16A8 [DeviceList.NTia64] %DESCRIPTION%=DriverInstall, USBVID_0451&PID_16A8 [DeviceList.NTamd64] %DESCRIPTION%=DriverInstall, USBVID_0451&PID_16A8 ;—————————————————————————— ; 32-bit section for Windows 2000/2003/XP/Vista ;—————————————————————————— [DriverInstall.NTx86] include=mdmcpq.inf CopyFiles=DriverCopyFiles AddReg=DriverInstall.NTx86.AddReg [DriverInstall.NTx86] include=mdmcpq.inf CopyFiles=DriverCopyFiles AddReg=DriverInstall.NTx86.AddReg [DriverCopyFiles] usbser.sys,,,0x20 [DriverInstall.NTx86.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,usbser.sys HKR,,EnumPropPages32,,»MsPorts.dll,SerialPortPropPageProvider» [DriverInstall.NTx86.Services] AddService=usbser, 0x00000002, DriverService ;—————————————————————————— ; 64-bit section for Intel Itanium based systems ;—————————————————————————— [DriverInstall.NTia64] include=mdmcpq.inf CopyFiles=DriverCopyFiles AddReg=DriverInstall.NTia64.AddReg [DriverInstall.NTia64] include=mdmcpq.inf CopyFiles=DriverCopyFiles AddReg=DriverInstall.NTia64.AddReg [DriverCopyFiles] usbser.sys,,,0x20 [DriverInstall.NTia64.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,usbser.sys HKR,,EnumPropPages32,,»MsPorts.dll,SerialPortPropPageProvider» [DriverInstall.NTia64.Services] AddService=usbser, 0x00000002, DriverService ;—————————————————————————— ; 64-bit section for AMD64 and Intel EM64T based systems ;—————————————————————————— [DriverInstall.NTamd64] include=mdmcpq.inf CopyFiles=DriverCopyFiles AddReg=DriverInstall.NTamd64.AddReg [DriverInstall.NTamd64] include=mdmcpq.inf CopyFiles=DriverCopyFiles AddReg=DriverInstall.NTamd64.AddReg [DriverCopyFiles] usbser.sys,,,0x20 [DriverInstall.NTamd64.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,usbser.sys HKR,,EnumPropPages32,,»MsPorts.dll,SerialPortPropPageProvider» [DriverInstall.NTamd64.Services] AddService=usbser, 0x00000002, DriverService ;—————————————————————————— ; ;—————————————————————————— [DriverService] DisplayName=%SERVICE% ServiceType=1 StartType=3 ErrorControl=1 ServiceBinary=%12%usbser.sys ;;%12% == «%WINDIR%system32» ;—————————————————————————— ; String Definitions ;—————————————————————————— [Strings] PROVIDER=»Texas Instruments» MFGNAME=»Texas Instruments» DESCRIPTION=»TI CC2531 Low-Power RF to USB CDC Serial Port» SERVICE=»TI CC2531 Low-Power RF to USB CDC Serial Port»

Для подключения ZigBee устройств и датчиков необходим шлюз, который обеспечит взаимодействие между ними. Зачастую каждый производитель выпускает шлюзы поддерживающие только устройства своей экосистемы. Не все шлюзы возможно подключить к альтернативным системам управления и не все, подключенные через шлюз устройства, могут поддерживаться, бывает, что у устройств ограничен функционал. Решить подобные проблемы и объединить наши устройства поможет USB координатор CC2531 стоимостью 5$. Заказать можно на одной известной торговой китайской торговой площадке, устройства предлагаются в двух вариантах, со встроенной и внешней подключаемой антенной, предпочтительнее второй вариант, т.к. при недостаточном уровне сигнала можно заменить антенну на более мощную.

Для подключения устройств необходимы:

  • USB координатор CC2531.
  • Компьютер для подключения координатора и установки необходимого программного обеспечения, для этих целей прекрасно подходит Raspberry Pi.
  • Программное обеспечение ZigBee2MQTT.
  • Программное обеспечение для работы протокола MQTT (так называемый MQTT брокер), например, Mosquitto.

Преимущества данного подключения устройств:

  • Датчики и устройства можно подключить к альтернативным системам, таким как Home Assistant, не имея шлюза производителя.
  • Обширный список устройств разных производителей. Полный список поддерживаемых устройств.
  • Можно использовать гибридную систему, часть устройств подключены к шлюзу производителя, часть напрямую к СС2531.
  • Некоторые устройства имеют функции, которых нет при подключении к шлюзу своей экосистемы.

Схема подключения будет выглядеть следующим образом:

zigbee cc2531 schema

На сайте проекта ZigBee2MQTT подробно расписан порядок действий, ниже будет представлен вольный перевод того, что необходимо выполнить:

  • Прошивка CC2531
  • Установка MQTT брокера Mosquitto
  • Установка ZigBee2MQTT
  • Обновление ZigBee2MQTT
  • Подключение устройств
  • Выявленные проблемы

Прошивка CC2531

Изначально устройство пустое, на ней не прошито никакого управляющего программного обеспечения, поэтому первым делом необходимо залить на устройство прошивку. Прошить устройство можно несколькими способами:

  • При помощи CC Debugger, покупается на той же площадке где и плата, стоит как два устройства CC2531. Можно поискать у знакомых, которые уже купили данное устройство. Минус, то что оно нужно всего на один-два раза, прошить/обновить плату и…. возможно прошить еще одну, которая будет выступать как роутер. Необходим Debug кабель, покупается там же вместе с CC Debugger’ом или отдельно.
  • Прошить с помощью Paspberry Pi. [Инструкция]

Ниже описан первый вариант для Windows. Оригинал был описан на сайте ZigBee2MQTT. UPD.: на 10.11.2020 страница перенесена, но в общем списке ссылка на нее отсутствует.

Скачиваем и устанавливаем программу SmartRF Flash Programmer, необходимо зарегистрироваться на сайте, после чего будет доступна ссылка на скачивание. Будьте внимательны! SmartRF Flash Programmer v2 не подходит!!! [Зеркало]

Скачиваем и устанавливаем драйвер для CC Debugger, подключите CC Debugger к USB порту, в диспетчере устройств убедитесь, что драйвер установился корректно и устройство определилось. При возникновении проблем установите драйвер вручную. Отключите CC Debugger. [Зеркало]

Подключить СС2531 к CC Debugger’у при помощи Debug кабеля. Подключить оба устройства (CC2531 и CC Debugger) к USB портам компьютера. Если индикатор на CC Debugger светит красным, то нажать кнопку Reset на CC Debugger, индикатор должен загореться зеленым цветом.

CC2531 прошивка CC Debugger connect

Скачиваем и распаковываем прошивку для CC2531. Прошивки есть для ZigBee версии 1.2 и 3. Для версии 1.2 есть два вида прошивок Default и Source Routing, автор комментирует так:

  • Если в ZigBee сети до 30 устройств, то рекомендуется версия Default.
  • Если в ZigBee сети более 30 устройств, то рекомендуется версия Source Routing. Данная прошивка поддерживает только 5 прямых подключений к координатору, остальные устройства подключаются через роутеры. Роутером в ZigBee сети обычно выступает любое устройство, подключенное к постоянному питанию, розетки, выключатели, светильники, но выключатели Xiaomi без нулевой линии не являются роутерами. Так же в качестве роутера можно использовать другое устройства CC2531 или CC2530, но прошитые специальной прошивкой.

Запускаем SmartRF Flash Programmer и выбираем:

  • What do you want to program: Program CCxxxx SoC or MSP430
  • Во вкладке Sisten-on-Chip выбираем CC2531
  • Interface: Fast
  • Flash Image File выбираем файл прошивки с расширением *.hex.
  • Location: Primary
  • Actions: Erace, program and verify

Нажимаем Perfom actions, ждем окончания прошивки модуля.

cc2531 flash programmer

Отключаем модуль от компьютера и CC Debugger’а.

Установка MQTT брокера Mosquitto

Дальнейшие инструкции описывают установку программного обеспечения на Ubuntu и другие системы на базе Debian, в том числе Raspberry Pi OS.

Выполняем:

$ sudo apt-get install mosquitto

В файле /etc/mosquitto/mosquitto.conf должно быть следующее:

pid_file /var/run/mosquitto.pid

persistence true
persistence_location /var/lib/mosquitto/

log_dest file /var/log/mosquitto/mosquitto.log

include_dir /etc/mosquitto/conf.d

Создадим файл default.conf для внесения своих настроек:

$ sudo touch /etc/mosquitto/conf.d/default.conf

Для установки пароля в файл /etc/mosquitto/conf.d/default.conf внесем следующее:

allow_anonymous false
password_file /etc/mosquitto/passwd

Создаем нового пользователя usermosquitto с паролем passmosquitto для подключения к Mosquitto:

$ sudo mosquitto_passwd -c /etc/mosquitto/passwd usermosquitto

Вводим пароль для нового пользователя и перезапускаем сервис Mosquitto:

$ sudo systemctl restart mosquitto

Установка ZigBee2MQTT

Подключаем CC2531 координатор к компьютеру, работающему 24/7, самый распространенный вариант это Raspberry Pi где крутится сервис автоматизации, но на самом деле это могут быть разные компьютеры, первый MQTT брокером, второй с сервисом ZigBee2MQTT, третий с сервисом автоматизации :) Но обычно это один компьютер.

Проверяем подключение устройства в системе:

$ ls -l /dev/serial/by-id
total 0
lrwxrwxrwx 1 root root 13 Jul 18 10:56 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0014D47D15-if00 -> ../../ttyACM0

Как видно из ответа, наше устройство обнаружилось как ttyACM0, проверяем:

$ ls -l /dev/ttyACM0
crw-rw---- 1 root dialout 166, 0 Jul 22 22:43 /dev/ttyACM0

Устанавливаем репозиторий Node.js:

$ sudo curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -

Устанавливаем Node.js:

$ sudo apt-get install -y nodejs git make g++ gcc

Проверяем версии Node.js и npm:

$ node --version
v12.18.2

$ npm --version
6.14.5

Версия Node.js должна быть 10.x или 12.x, npm — 6.x

Делаем клон репозитория ZigBee2MQTT:

$ sudo git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt

Устанавливаем права:

$ sudo chown -R user:group /opt/zigbee2mqtt

где user — пользователь, под которым будет работать сервис, group — группа имеющая доступ к папке. Для Raspberry Pi это обычно pi:pi. Пользователь должен входить в группу dialout.

Установка зависимостей:

$ cd /opt/zigbee2mqtt
$ npm ci

При корректной установке в ответ будет выведено сообщение вида:

node-pre-gyp info ok
added 752 packages in 121.57s

Предупреждающие сообщения Warning игнорируем.

Редактируем файл настроек /opt/zigbee2mqtt/data/configuration.yaml:

homeassistant: true
permit_join: false
mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://localhost'
  user: usermosquitto
  password: passmosquitto
serial:
  port: /dev/ttyACM0
advanced:
  network_key: GENERATE

homeassistant: true — если вы собираетесь используете интеграцию с Home Assistant.
permit_join: false — подключение новых устройств. Для подключения новых устройств необходимо выставить в true, рекомендуемое значение false во избежании подключения случайных устройств.
server: 'mqtt://localhost' — адрес сервера MQTT. Если это тоже самое устройство, то оставляем localhost.
user: usermosquitto — пользователь с доступом к MQTT серверу.
password: passmosquitto — Пароль пользователя MQTT сервера.
port: /dev/ttyACM0 — устройсво CC2531 в системе.
network_key: GENERATE — ключ безопасности сети ZigBee. GENERATE — при старте будет сгенерирован новый ключ, можно задать вручную: network_key: [1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5]

Первый запуск:

$ cd /opt/zigbee2mqtt
$ npm start

При правильной настройке будет сообщение вида:

zigbee2mqtt:info: Connecting to MQTT server at mqtt://localhost
zigbee2mqtt:info: Connected to MQTT server

Останавливаем программу Ctrl+C.

Создаем файл для запуска сервиса при старте системы.

$ sudo nano /etc/systemd/system/zigbee2mqtt.service

Заполняем его.

[Unit]
Description=zigbee2mqtt
After=network.target

[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=pi

[Install]
WantedBy=multi-user.target

User=pi — Пользователь, с правами которого запускается сервис. Для Raspberry Pi это обычно пользователь pi.

Добавляем сервис в автозагрузку и запускаем его:

$ sudo systemctl enable zigbee2mqtt.service
$ sudo systemctl start zigbee2mqtt.service

Обновление ZigBee2MQTT

Останавливаем сервис:

$ sudo systemctl stop zigbee2mqtt.service

Делаем резервную копию данных:

$ cd /opt/zigbee2mqtt
$ cp -R data data-backup

Запуск обновления:

$ git checkout HEAD -- npm-shrinkwrap.json
$ git pull
$ npm ci

Восстановление данных и запуск сервиса:

$ cp -R data-backup/* data
$ rm -rf data-backup
$ sudo systemctl start zigbee2mqtt

Подключение устройств

Для подключения устройств в файле /opt/zigbee2mqtt/data/configuration.yaml надо установить permit_join: true и перезагрузить сервис.

Перед подключением необходимо проверить, что подключаемое устройство находится в списке поддерживаемых устройств. Для перевода подключаемого устройства в режим спаривания необходимо обратиться к инструкции производителя.

После подключения всех устройств для повышения безопасности и избежании случайного подключения других устройств в файле /opt/zigbee2mqtt/data/configuration.yaml необходимо установить permit_join: false после чего перезагрузить сервис.

Выявленные проблемы

На Ubuntu было лень создавать отдельного пользователя для работы сервиса и программа запускалась от пользователя homeassistant вместе с самим Home Assistant. После нескольких минут работы у Home Assistant отваливалась связь со шлюзами и светильниками Xiaomi. После создания в системе отдельного пользователя и настройки запуска от его имени проблема ушла.

Zigbee2MQTTZigbee2MQTT

The firmware can be flashed with multiple devices. The easiest but most expensive option is with the CC Debugger from Texas Instruments, which is described on this page. However, you can also use a Raspberry Pi or a MCU like the Arduino Uno or the cheap ESP8266 with four dupont cables and optionally a downloader cable. Information about these methods can be found here: Alternative firmware flashing methods.

NOTE 1: In case you are already running a Zigbee network: reflashing does not require repairing of all devices, see What does and does not require repairing of all devices?

NOTE 2: In this tutorial we will flash the default firmware. For larger network (20+) or when experiencing stability problems the source routing firmwareopen in new window is recommended. This firmware has a limitation of 5 direct children so make sure to have enough routers in your network.

NOTE 3: The CC2531 USB dongle can be flashed also with the CC2530 firmwareopen in new window to be operated via the P0.2/P0.3 serial pins (which are the first one and the second one of the IO expansion port). Be careful when using the CC2531 in association with an ESP8266 (as if it were the CC2530): the onboard USB power supply may not be able to power an additional ESP8266 without overheating/failing.

Required hardware

The following additional hardware is required in order to flash the CC2531:

Name Price Picture
CC debugger +-9$ on AliExpress CC debugger
CC2531 downloader cable +-2$ on AliExpress Downloader cable CC2531

Windows

  1. Install SmartRF Flash programmeropen in new window (NOT V2). This software is free but requires a Texas Instruments account in order to download.
  2. Install the CC debugger driveropen in new window on your PC (Windows only). Before continuing, verify that the CC Debugger driver has been installed correctly. See Figure 1. Verify Correct Driver Installation @ Chapter 5.1open in new window. In case the CC Debugger is not recognized correctly install the driver manuallyopen in new window.
  3. Connect CC debugger --> Downloader cable CC2531 --> CC2531 USB sniffer.
  4. Connect BOTH the CC2531 USB sniffer and the CC debugger to your PC using USB.
  5. If the light on the CC debugger is RED press set reset button on the CC debugger. The light on the CC debugger should now turn GREEN. If not use CC debugger user guideopen in new window to troubleshoot your problem. How to connect
  6. Download the firmware CC2531_DEFAULT_20211115.zipopen in new window
  7. Start SmartRF Flash Programmer, setup as shown below and press Perform actions. Make sure to select the .hex file, not the .bin file! SmartRF Flash Programmer

Linux or MacOS

Credits to @Frans-Willemopen in new window for majority of instructions.

  1. Install prerequisites for CC-Toolopen in new window using a package manager (e.g. Homebrewopen in new window for macOS)
  • Ubuntu (version >= 20.04): install cc-tool with sudo apt install cc-tool & go on with 3.
  • Ubuntu/Debian: libusb-1.0-0-dev, libboost-all-dev, autoconf, libtool
  • Fedora: dh-autoreconf, boost-devel, libusb1-devel, gcc-c++
  • Archlinux: dh-autoreconf, libusb, boost
  • macOS: brew install autoconf automake libusb boost@1.76 pkgconfig libtool
  • Raspbian: dh-autoreconf, libusb-1.0-0-dev, libboost-all-dev
  1. Build cc-tool
git clone https://github.com/dashesy/cc-tool.git
cd cc-tool
CPPFLAGS=-I/usr/local/include 
LDFLAGS=-I/usr/local/include 
 ./bootstrap

CPPFLAGS="-I/usr/local/opt/boost@1.76/include" 
CXXFLAGS="-std=c++0x" 
LDFLAGS="-L/usr/local/opt/boost@1.76/lib" 
LIBUSB_CFLAGS=-I/usr/local/include/libusb-1.0 
 ./configure

make
  1. Connect CC debugger --> Downloader cable CC2531 --> CC2531 USB sniffer.
  2. Connect BOTH the CC2531 USB sniffer and the CC debugger to your PC using USB.
  3. If the light on the CC debugger is RED, press the Reset button on the CC debugger. The light on the CC debugger should now turn GREEN. If not, try to reboot and retry or follow the CC debugger user guideopen in new window to troubleshoot your problem. How to connect
  4. Download the firmware CC2531_DEFAULT_20211115.zipopen in new window.
  5. Flash your firmware:
sudo ./cc-tool -e -w CC2531ZNP-Prod.hex

How-to check the installed firmware version

Zigbee2MQTT will output the installed firmware version to the Zigbee2MQTT log on startup:

Zigbee2MQTT:info  2019-11-09T13:01:14: Coordinator firmware version: '{"type":"zStack30x","meta":{"transportrev":2,"product":2,"majorrel":2,"minorrel":7,"maintrel":2,"revision":20190425}}'

In the above example the version is 20190425.


  1. Главная

  2. Драйверы

  3. Другие устройства

  4. Другие устройства USB

  5. USB CDC Composite

  • USB CDC Composite

    Версия:

    9.0.0000.00000
    (01 янв 2020)

    Файл *.inf:
    android_winusb.inf




    Windows Vista, 7, 8, 8.1, 10

В каталоге нет драйверов для USB CDC Composite под Windows.
Скачайте DriverHub для автоматического подбора драйвера.

Драйверы для USB CDC Composite собраны с официальных сайтов компаний-производителей и других проверенных источников.
Официальные пакеты драйверов помогут исправить ошибки и неполадки в работе USB CDC Composite (другие устройства).
Скачать последние версии драйверов на USB CDC Composite для компьютеров и ноутбуков на Windows.


Версия: 1.3.7.1452 для Windows 7, 8, 10 и 11

Бесплатное ПО

В комплекте идет опциональное ПО

  • Yandex Browser
  • Opera Browser
  • Avast Free Antivirus
  • World of Tanks
  • World of Warships

<<<
Back

Не так давно решил обновить свой USB=Zigbee стик CC2531 на более новый Zigbee координатор Sonoff ZBDongle USB Zigbee 3.0 Dongle Plus. Заодно решил сделать небольшое сравнение и в качестве дополнения небольшая инструкция по установке и настройке Zigbee устройств в MajorDoMo с модулем zigbee2mqtt (автор модуля Directman). Инструкция делалась на Raspberry Pi 3B, установлен голый образ 3_44.

Немного о внешнем виде:

Внешний вид USB стиков представлен на фото:

Sonoff стик выглядит солидно и внушительно на мой взгляд несколько великоват. Довольно длиная антенна может вращаться в разные стороны и складываться на 90 градусов. После подключения в USB разъём в большинстве случаев из оставшихся 3-х портов на малинке, можно использовать только один, находящийся по диагонали от занятого (иногда даже это не получается). Если планируется подключать ещё что то, то выход использовать USB удлинитель. Стик CC2531 выглядит несколько миниатюрнее, нет ни внешней антенны ни возможности её подключения, он у меня без корпуса. У CC2531 присутствует индикатор (при работе постоянно постояно горит зелёным). У Sonoff нет видимых индикаторов.

Первый шаг: включение в MajorDomo и ОС Linux (Raspbian):

Устанавливаем дополнение zigbee2mqtt от Directman.
Переходим в раздел Система – Маркет Дополнений панели управления. Открываем раздел Оборудование и ищем модуль zigbee2mqtt (можно на главной странице Маркета воспользоваться поиском).

Устанавливаем дополнение zigbee2mqtt, после установки переходим в меню Панели Управления — Устройства, выбираем раздел zigbee2mqtt.

Zigbee стик пока не определён ни в систему «Умного Дома», ни в операционной системе. В модуле есть очень подробная информация о установке, устройствах и т.д.
Пока в этой части опишу подключение стика CC2531.
Подключаем стик к USB порту. Индикатор стика кратковременно загорается зелёным и гаснет.
Переходим в раздел Информация и что для стика CC2531, что для Sonoff координатора пользуемся инструкцией по установке.
Продублирую её с небольшими примечаниями:

Проверяем на каком порту у нас появился стик:

pi@raspberry:/ $ ls -l /dev/serial/by-id

вывод:
total 0 lrwxrwxrwx. 1 root root 13 Oct 19 19:26 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0018ED3DDF-if00 -> ../../ttyACM0

Убедились, что стик встал на порту /dev/ttyACM0, этот адрес потом понадобится при настройке файла конфигурации configuration.yaml. Для концентратора Sonoff порт несколько отличается: ttyUSB0
Обновлено 2022-09-26 в связи с изменениями в официальной инструкции
https://www.zigbee2mqtt.io/guide/installation/01_l…

Официальная инструкция от разработчика
Обновляем Операционную Систему (ОС)

sudo apt-get update
sudo apt-get upgrade

Устанавливаем необходимые пакеты:

# Set up Node.js repository and install Node.js + required dependencies, Устанавливаем Node.js и зависимости
# NOTE: Older i386 hardware can work with [unofficial-builds.nodejs.org](https://unofficial-builds.nodejs.org/download/release/v16.15.0/ e.g. #Version 16.15.0 should work.
sudo curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs git make g++ gcc

# Verify that the correct nodejs and npm (automatically installed with nodejs)
# version has been installed
#Проверяем версии node и npm
node --version  # (должна быть) Should output v14.X, V16.x, V17.x or V18.X
npm --version  # (должна быть) Should output 6.X, 7.X or 8.X

# Create a directory for zigbee2mqtt and set your user as owner of it, создаем директорию и меняем права 
sudo mkdir /opt/zigbee2mqtt
sudo chown -R pi: /opt/zigbee2mqtt

# Clone Zigbee2MQTT repository клонируем репозиторий
git clone --depth 1 https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt

# Install dependencies (as user "pi") устанавливаем npm
cd /opt/zigbee2mqtt
npm ci

по завершении установки мы должны получить на экране что-то подобное:
node-pre-gyp info ok
added 383 packages in 111.613s
Вывод после окончания установки (у меня было несколько предупреждений, но на работу z2m они не сказывались):

Настраиваем файл конфигурации:

nano /opt/zigbee2mqtt/data/configuration.yaml

По умолчанию формируется файл со следующей работоспособной для стика СС3521 конфигурацией. Приведу его:

homeassistant: false
permit_join: true
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://localhost
serial:
  port: /dev/ttyACM0
devices:

Запуск zigbee2mqtt как сервис
Создаем файл zigbee2mqtt.service
sudo nano /etc/systemd/system/zigbee2mqtt.service
c содержимым:

[Unit]
Description=zigbee2mqtt
After=network.target
[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=pi
[Install]
WantedBy=multi-user.target

для запуска zigbee2mqtt необходимо выполнить:

sudo systemctl start zigbee2mqtt

Проверка статуса сервиса:

systemctl status zigbee2mqtt.service

автозапуск демона при старте системы:

sudo systemctl enable zigbee2mqtt.service

Можем сразу же прописать в настройках модуля z2m MajorDoMo следующие настройки:

На всякий случай правильно перегружаем малинку (используя скрипт перезагрузки).
После загрузки переходим опять в устройства модуля z2m.
У меня сразу же определились некоторые устройства (скорее всего ранее они были подключены к моему стику, и несмотря на использование свежепереписанного базового образа они определились, хотя и не совсем корректно).

Кстати, обращаем внимание: засветилось зеленым окошечко сопряжение устройств.
Можем зайти во вкладку Сервис посмотреть состояние сервиса системы, непосредственно из MajorDoMo.

Сопряжение устройств, для подключения устройств в свой систему УД, стик должен быть включён на сопряжение (в конфиге параметр permitjoin: true) и включить сопряжение физически непосредственно на устройстве. Легче всего обратиться к документации на устройство или же посмотреть на сайте https://www.zigbee2mqtt.io/ список поддерживаемых устройств и Pairing для конкретного девайса.
После сопряжения (пересопряжения) устройств картинка в Majordomo приблизительно следующая:

Из раздела устройства можем включить/выключить устройства, если они управляются, получить текущее состояние для датчиков и т.д.
Замечу, после привязки устройства в конфигурационном файле в секции devices прописываются дополнительные строки
devices: '0x00158d00069fec28': friendly_name: '0x00158d00069fec28'

Подключение Sonoff ZBDongle USB Zigbee 3.0 Dongle Plus
Подключение координатор Sonoff ZBDongle USB Zigbee 3.0 Dongle Plus происходит аналогично стику СС. За исключением конфигурационного файла.
Пример конфига:

nano /opt/zigbee2mqtt/data/configuration.yaml
homeassistant: false
permit_join: true
frontend:
  port: 8080
  host: 0.0.0.0
#  auth_token: 123456 (поменяйте на свой пароль)
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://localhost
serial:
  port: /dev/ttyUSB0
devices:

В конфиге включён веб-интерфейс координатора (на порту 8080) с шифрованием (работает и без оного).
После изменения файла нужно перезапустить сервис, сделать можно или из вкладки сервис модуля или из командной строки терминала:

Небольшое примечание: с выключенным веб интерфейсом запуск (перезапуск) сервиса происходит у меня довольно быстро. С включенной веб интерфейсом гораздо дольше (доходило до 5 минут)

Небольшое тестирование параметра качества связи (linkquality)

Для построения сети беспроводных устройств УД довольно важен параметр канала связи, в теминологии zigbee linkquality.
Сравним этот показатель у обоих устройств. Малинка расположена на одном и том же месте, сравниваемые устройства так же, никуда не перемещаются.


Первый скрин: CC2531, второй соответственно Sonoff.
В самом модуле majorDoMo у меня этот показатель както не свосем корректно показывает (возможно берёт какие то усредненные значения). Что бы посмотреть более точно, можно открыть лог файл и из него уже смотреть приходящие сообщения. Файл находится:

nano /opt/zigbee2mqtt/data/log/xxxx-xx-xx.xx-xx-xx/log.txt

где наименование папки время создания лога.

Перовое устройство выключатель – расстояние около 6 метров по прямой, однако на пути 3 стенки, также имеется зеркальный шкаф купе.
Используя стик СС2531 качество от 0 до 30 (довольно часто меняется этот показатель), причем при 0 выключатель корректно управляется (всё время, сбоев не обнаружил).
Остальные устройства имеют более-менее стабильные показатели (могут меняться до десятка единиц значений) у Sonoffa гораздо более стабильные показатели:
————СС2531—————Sonoff
1) — от 0 до 30—————- 38 ————- 7м ————- 3 стенки +зеркало
2) ———49 ——————— 65 ————- 4м ————- 2 стенки
3) ——— 89 —————— 103 ————-1м ————- 1 стенка
4) ——- 78 —————— 170 ————1м ——— препятствий нет


Пример показаний в веб интерфейсе, на вкладке карта сети, для концентратора sonoff, причем показания соответсвуют значениям попадающим в лог.

Discuss (3)

(3)

Понравилась статья? Поделить с друзьями:
  • Thx trustudio pro windows 10 скачать торрент
  • Thx trustudio pro windows 10 msi
  • Thx spatial audio код активации бесплатно для windows 10
  • Thunderbolt драйвера для windows 10 64 bit
  • Thunderbird запуск при загрузке windows 10