Инструменты пользователя

Инструменты сайта


Это старая версия документа!


JetHome Zigbee USB-стик ZB6UX v.1

Описание

Стик JetHome ZB6UX предназначен для работы в качестве координатора или роутера Zigbee и может использоваться для управления другими беспроводными устройствами домашней инфраструктуры, работающими по протоколу Zigbee, в составе контроллера «Умного дома» с установленным и настроенным соответствующим программным обеспечением.

Стик выполнен на базе современного мильтипротокольного беспроводного микроконтроллера для диапазона 2,4ГГц Texas Instruments CC2652P (описание микроконтроллера) и отличается повышенной выходной мощностью передатчика.

Основные технические характеристики:

  • 48МГц процессор Arm® Cortex®-M4F;
  • память флеш 352КБ;
  • ПЗУ 256КБ для библиотечных функций;
  • SRAM 80КБ;
  • выходная мощность передатчика до +20 dBm;
  • напряжение питания 5В от USB;
  • ток потребления в активном режиме не более 100 мА.

Габаритные размеры стика в корпусе без внешней антенны: 73 х 21,5 х 10 мм

В комплект поставки входит внешняя антенна диапазона 2,4ГГц. Стик также может использоваться с другими внешними антеннами на диапазон 2,4ГГц. Для подключения внешеней антенны используется разъем RP-SMA, установленный на плате стика.

На плате стика также размещены: кнопка для переключения режима загрузки микроконтроллера (используется для прошивки микроконтроллера), два светодиода (зеленый и красный), которые могут использоваться для отображения режимов работы стика. Работа светодиодов зависит от установленной в микроконтроллер стика прошивки. На обратной стороне платы предусмотрены контактные площадки для подключения отладчика (JTAG).

Стик предназначен для использования в жилых и офисных помещениях.

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

Внимание! Данное устройство не является профессиональным оборудованием для систем безопасности и управления. И не может использоваться на объектах, потенциально представляющих опасность для жизни и здоровья окружающих.

Аппаратные особенности

Стик аппаратно совместим с оригинальной платой Texas Instruments LAUNCHXL-CC1352P-2.

Переход в режим загрузчика осуществляется при низком логическом уровне на входе DIO_15 микроконтроллера. Управлять состоянием этого входа можно с помощью кнопки «FLASH», установленной на плате стика. Низкий логический уровень на входе DIO_15 устанавливается при нажатой кнопки.

Для управления внешним RF switch спользуются выводы микроконтроллера DIO_28 и DIO_29.

Светодиоды подключены к выводам микроконтроллера DIO_6 (красный светодиод) и DIO_7 (зеленый светодиод). Высокий логический уровень на данных выводах зажигает соответствующий светодиод.

Для связи микроконтроллера с компьютером используется микросхема преобразователя интерфейса USB-UART Silicon Labs CP2102.

Для управления аппаратным сбросом и переключения режима загрузки микроконтроллера используются линии DTR и RTS последовательного порта, реализованного на микросхеме Silicon Labs CP2102.

Поддерживаемые прошивки

На текущий момент для стика рекомендуется использовать две прошивки от разработчиков проекта zigbee2mqtt:

Используйте прошивки с именем файла: CC1352P2_CC2652P_launchpad_*.zip

Последняя версия прошивки для координатора на момент написания статьи: CC1352P2_CC2652P_launchpad_coordinator_20210120.zip

Ограничения текущей прошивки: не реализовано управление светодиодами.

Процедура перепрошивки стика

Обновить прошивку можно по последовательному порту через встроенный в микроконтроллер CC2652P загрузчик (serial bootloader) с помощью утилиты cc2538-bsl.

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

pip3 install pyserial intelhex python-magic

Скачать утилиту можно командой:

git clone https://github.com/JelmerT/cc2538-bsl.git

Для прошивки стик должен быть переведен в режим загрузчика (serial bootloader), для чего необходимо:

  • Отключить стик от порта USB;
  • Нажать кнопку «FLASH» на плате стика;
  • Не отпуская кнопку «FLASH», вставить стик в порт USB компьютера;
  • После чего кнопку «FLASH» можно отпустить.

Пример команды для прошивки стика (из директороии, в которую была установлена утилита для прошивки):

python3 cc2538-bsl -p /dev/ttyUSB0 -e -w CC1352P2_CC2652P_launchpad_coordinator_20210120.hex

где:

/dev/ttyUSB0 - файл устройства последовательного порта, соответствующий подключенному стику. Может отличаться от приведенного в примере в зависимости от операционной системы и количества устройств, подключенных к компьютеру;

CC1352P2_CC2652P_launchpad_coordinator_20210120.hex - имя файла с прошивкой (необходимо указывать полный путь к файлу с прошивкой).

При указании опции -e производится полное стирание всей внутренней flash-памяти микроконтроллера перед его прошивкой.

Автоматическое переключение в режим загрузчика

На стике предусмотрена возможность автоматического аппаратного сброса и переключения его в режим загрузчика для перепрошивки без необходимости отключать стик от порта USB и нажимать на нем кнопку. Для использования этой возможности необходима модифицированная версия утилиты cc2538-bsl. Скачать данную версию утилиты можно здесь.

В данную версию утилиты добавлена опция командной строки –invoke-bootloader=METHOD, которая устанавливает алгоритм, используемый для переключения в режим загрузчика. Доступные значения параметра METHOD:

  • 0 - отключает процедуру активации загрузчика. В настоящий момент оригинальная утилита cc2538-bsl всегда запускает процедуру активации загрузчика с помощью линий DTR и RTS;
  • 1 - используется процедура активации загрузчика в случае независимого подключения управляющих линий DTR и RTS к микроконтроллеру. Данная процедура используется по-умолчанию и аналогична процедуре, используемой оригинальной утилитой;
  • 2 - используется процедура активации загрузчика в случае подключения управляющих линий DTR и RTS по схеме с защитой от непреднамеренного сброса микроконтроллера аналогичной применяемой в модулях NodeMCU.

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

pip3 install pyserial intelhex python-magic

Для входа в режим загрузчика используется способ «2». Пример команды для прошивки USB-стика JetHome в данном случае будет следующей:

python3 cc2538-bsl --invoke-bootloader=2 -p /dev/ttyUSB0 -e -w CC1352P2_CC2652P_launchpad_coordinator_20210120.hex

Использование стика с Zigbee2MQTT

При использовании прошивки координатора с репозитария Koenkk Z-Stack firmware (см. п. «Поддерживаемые прошивки») стик обеспечивает полноценную работу с Zigbee2MQTT. Данная прошивка или основанная на ней прошивка устанавливается по-умолчанию при производстве стика и стик полностью готов к работе с Zigbee2MQTT.

Инструкции по установке и настройке Zigbee2MQTT смотрите на сайте проекта.

В файле конфигурации Zigbee2MQTT должны быть установлены следующие параметры:

serial:
  port: /dev/ttyUSB0
  
advanced:
  rtscts: false

где:

параметр port: /dev/ttyUSB0 - указывает на имя файла устройства с системе, соответствующего подключенному стику. Значение параметра port может отличаться от указанного в данном примере в зависимости от используемой ОС и количества подключенных устройств к USB;

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

zb6ux_v1.1613739307.txt.gz · Последнее изменение: 2021/02/19 15:55 — Aleksandr Kazantsev

Инструменты страницы