-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Координаторы V4 с чипами cc1352p/cc2652p до сих пор являются надежным и проверенным решением для построения сетей Zigbee. Мне захотелось попробовать в работе чипы EFR32MG21/MG24 и заодно понять, как собирать прошивки для них. Также хотелось разобраться с подключением координаторов по сети Ethernet.

Сетевые координаторы на EFR32 известны давно, например, ZigbeeLink на LAN чипе от Ebyte, устройства Tube Gateways на сетевых модулях ESP32. Я пощипал идеи из этих и других проектов и сделал как вижу :)
Мои сетевые координаторы выполнены из доступных комплектующих и имеют форм-фактор ZigStar. Работа сетевых координаторов через USB или как-то иначе не предусмотрена и не планируется.
Координаторы работают с аппаратным управлением потоком данных UART (hardware flow control сигналами RTS и CTS).
Все резисторы и конденсаторы на платах - размера 0805 (C1 и С2 - 1206, но это наследие еще от V3, можно и 0805 поставить). Транзисторы - NPN, например BC847C в корпусе SOT-23 (маркировка 1G). Не обозначенные компоненты не используются.
Оба координатора могут работать с двумя вариантами LAN плат - Ebyte NT1, (чип тот же, что в проекте ZigbeeLink) и с WT32-ETH01 (ESP32), как в ZigStar. Об особенностях этих плат, об их прошивке и настройке рассказано по ссылкам в этом абзаце.
Соединения плат показаны на фото. Обратите внимание на разъёмы - используются разъёмы с удлиненными ножками:

Для заливки бутлоадера в чипы EFR32 потребуется программатор J-Link версии не ниже 9. Процедура описана в этой статье. Также с помощью J-Link можно залить и основную прошивку.
В чипы с прошитым бутлоадером прошивку можно заливать и без помощи программатора. Информация про обновление прошивки в устройства на EFR32 представлена на этой странице.
Для работы LAN координаторов с zigbee2mqtt требуется прописать в конфигурации следующее:
serial:
adapter: ember
port: 'tcp://192.266.3.210:6638' # <--- заменить IP адрес на нужный, порт 6638 по умолчанию
Для работы USB координаторов конфигурация такая:
serial:
adapter: ember
port: /dev/ttyUSB0 # <--- уточнить, какой порт в системе появился при включении стика
baudrate: 115200 # <--- зависит от прошивки, по умолчанию 115200
rtscts: true
Почему V5LAN? Ну, просто клон стика SkyConnect назвали V5, а я приделал к нему LAN (даже два) :)

Координатор V5 использует прошивку и bootloader от SkyConnect. Проблема бутлоадера SkyConnect в том, что его невозможно вызвать принудительно, кнопкой. Порывшись в репозитории с прошивками от darkxst стало очевидно, что стик slzb07 использует те же пины, что и SkyConnect, но при этом в его бутлоадер можно войти по кнопке.
Вообще, EFR32 прекрасно шьются и без всяких кнопок, просто захотелось иметь возможность аварийного вызова бутлоадера.
Я проверил работу комбинаций бутлоадеров и прошивок от SkyConnect и slzb07 - всё прекрасно работает. А это значит, что в мой координатор я буду шить бутлоадер от slzb07. И прошивку от него же или от SkyConnect. Нет смысла городить свою прошивку - всё уже украдено до нас :)
V5LAN построен на базе модуля Ebyte E104-BT11G-IPX с чипом EFR32MG21A020F1024IM32.
По ножкам чипа раскладка такая:
| Назначение | MG21 pin |
|---|---|
| TX | PA06 |
| RX | PA05 |
| CTS | PB01 |
| RTS | PB00 |
| BOOT | PA00 |
Универсальная схема для обоих вариантов LAN плат:

Если плата собирается с LAN на основе ESP32, то компоненты, обведенные красным - обязательны. Для LAN платы Ebyte NT1 они не нужны.
Расположение компонентов на плате:

Резистор R10 устанавливается с обратной стороны платы и его расположение там не очень удачно - плата экспериментальная, делалась для проверки всех вариантов, потому так и втиснуто.
Физическая кнопка вызова бутлоадера тоже не разведена по этим же причинам. Но и смысла от нее почти нет - она нужна только в случае заливки "не той" прошивки. И в варианте с LAN платой ESP32 бутлоадер можно активировать через веб-страницу. В варианте с LAN платой NT1 можно просто замкнуть указанные контакты перед подачей питания.
Антенна подключается к модулю через коаксиальный кабель - с одной стороны разъёмы IPX кабеля и модуля стыкуются, с другой стороны кабель припаивается к плате и центральному контакту разъёма RP-SMA.
В собранном виде V5LAN отлично помещается в печатный корпус для ZigStar.
Герберы этой платы.
Обновления прошивок EFR32 (от SkyConnect или от slzb07) берите в этом или этом репозиториях. Если я что-то и выложу, то будет это в этом разделе моего репозитория. Сейчас там просто сохранены бутлоадер и прошивка от slzb07.
Сетевой координатор V6LAN ревизии 1.0 построен на базе модуля RF-Star RF-BM-MG24B1 с чипом EFR32MG24A410F1536IM48. Этот чип имеет усилитель до 10 dBm, 1536 Kb flash и 256 Kb RAM.

Назначение выводов чипа:
| Назначение | MG24 pin |
|---|---|
| TX | PA05 |
| RX | PA06 |
| CTS | PB01 |
| RTS | PB00 |
| BOOT | PB05 |
Универсальная схема для обоих вариантов LAN плат:

Если плата собирается с LAN на основе ESP32, то компоненты, обведенные красным - обязательны. Для LAN платы Ebyte NT1 они не нужны.
Расположение компонентов на плате:

Плата ревизии 1.0 - экспериментальная, делалась для проверки всех вариантов, потому физическая кнопка вызова бутлоадера не разведена. Но и смысла от нее почти нет - она нужна только в случае заливки "не той" прошивки. И в варианте с LAN платой ESP32 бутлоадер можно активировать через веб-страницу. В варианте с LAN платой NT1 можно просто замкнуть указанные контакты перед подачей питания.
Для работы со внешней антенной предполагается перерезание дорожек встроенной антенны и подпаивание RP-SMA разъема непосредственно к ним. Идея точно такая же, как и в ранних стиках V4.
Дорожки, отмеченные красным, нужно удалить и зачистить места для пайки антенного разъема (изображен модуль от V4, но картинка понимание даёт):

Из-за такого расположения антенны корпус от ZigStar не подходит. Пришлось смещать отверстие. Корпус для этой версии платы можно скачать по этой ссылке.
Прошивку и бутлоадер пришлось собирать самому из-за нестандартных подстроечных значений генератора модуля RF-BM-MG24B1.
Герберы этой платы.
Сетевой координатор V6LAN ревизии 2.0 построен на базе модуля RF-Star RF-BM-MG24B2i с чипом EFR32MG24A420F1536IM48. Этот чип имеет усилитель до 19.5 dBm, 1536 Kb flash и 256 Kb RAM.

Назначение выводов чипа:
| Назначение | MG24 pin |
|---|---|
| TX | PA05 |
| RX | PA06 |
| CTS | PB01 |
| RTS | PB00 |
| BOOT | PB05 |
Универсальная схема для обоих вариантов LAN плат:

Если плата собирается с LAN на основе ESP32, то компоненты, обведенные красным - обязательны. Для LAN платы Ebyte NT1 они не нужны.
Расположение компонентов на плате:

Прошивку и бутлоадер пришлось собирать самому из-за нестандартных подстроечных значений генератора модуля RF-BM-MG24B2i.
Герберы этой платы.
USB стик V6 ревизии 1.0 в Zigbee части является копией V6LAN rev.2.0 и также построен на базе модуля RF-Star RF-BM-MG24B2i. Назначение выводов чипа то же самое, что и у сетевого собрата. Отличие только в способе подключения - стик подключается напрямую к компьютеру через USB.

Схема стика V6 rev.1.0:

Расположение компонентов на плате:

Прошивка и бутлоадер для модуля RF-BM-MG24B2i также подходят от V6LAN rev.2.0.
Герберы этой платы.
Если вас заинтересовали эти устройства и их более новые версии - обращайтесь в Telegram.
