ESP32C6: https://shp.pub/75cmq6?erid=2SDnjdMyBr4
ESP32H2: https://shp.pub/75cmqk?erid=2SDnjdVP8Fn
ESP32 C6 и H2 – это два контроллера от espressif. Один из которых H2 имеет на борту Zigbee и Bluetooth. А Второй C6 который имеет Zigbee, Bluetooth и Wifi. Причем wifi 6.
Эти контроллеры на рынке появились относительно недавно. Наверное в широком доступе и 2х лет нет. Но создавать на них проекты весьма сложно, так как принципиально Zigbee работает по другому, нежели наш привычный wifi и arduino проекты на esp32.
Но все-же проекты понемногу начинают появляться. Об одном из таких и хотелось рассказать в этой статье.
Координатор на ESp32C6/H2.
Хочется рассказать о том, что esp32 c6 и esp32 h2 теперь можно использовать в роли координатора для Zigbee сети. Например для аддона Zigbee2mqtt.
Я уже делал одну статью про превращение в Zigbee координатор контроллера NRF52840. Получился самый дешевый координатор за 200 рублей. О нем можно почитать тут:
Самый дешевый Zigbee координатор для Zigbee2mqtt на основе NRF52840.
Тот координатор работает как zboss и координаторы на H2 и C6 тоже будут работать как zboss после прошивки.
Саму прошивку для ESP32C6/H2 превращающую его в координатор можно найти тут: https://github.com/andryblack/esp-coordinator?tab=readme-ov-file
Прошивка ESP32H2 и ESP32C6:
Для прошивки устройства, нужно скачать по ссылке выше 4 файла. А именно bootloader.bin esp-coordinator.bin partition-table.bin и ota_data_initial.bin
Скачать можно отсюда: https://github.com/andryblack/esp-coordinator/releases
Эти файлы у нас являются файлами прошивки и их нужно при прошивке закидывать в определенные области контроллеров ESp32C6 и ESP32H2.
Для того чтоб закинуть эти файлы в контроллер, нужно это делать с помощью специальной программы под названием Flash Download Tool, которую скачать можно по ссылке тут: https://dl.espressif.com/public/flash_download_tool.zip
После скачивания архива, распаковываем его и запускаем ярлык flash_download_tool.exe
После запуска в открывшемся окне появится выбор контроллера, выбираем или ESP32C6 или ESP32H2 в зависимости какой у Вас контроллер.
Далее в следующем открывшемся окне нам нужно 4 файла bootloader.bin esp-coordinator.bin partition-table.bin и ota_data_initial.bin расположить по своим адресам:
0x0 bootloader.bin
0x20000 esp-coordinator.bin
0x8000 partition-table.bin
0xf000 ota_data_initial.bin
Выглядеть это будет вот так:
После выбора нажимаем кнопку “ERASE” а потом “START“. Естественно перед этим выбрав COM порт на котором сидит контроллер.
После прошивки наш координатор готов и теперь его можно настраивать в Zigbee2mqtt.
Настройки координатора на ESP32C6/H2 в Zigbee2mqtt:
Настраивается все банально просто, в Zigbee2mqtt нужно в конфигурации в блоке Serial указать порт к которому подключен координатор и adapter: zboss указать.
Но в WEB интерфейсе в блоке Serial если вписать adapter: zboss – то не даст сохранить конфигурацию, написав ошибку:
Не удалось сохранить конфигурацию дополнения, does not match regular expression zstack|deconz|zigate|ezsp|ember. Got {‘data_path’: ‘/config/zigbee2mqtt_2’, ‘socat’: {‘enabled’: False, ‘master’: ‘pty,raw,echo=0,link=/tmp/ttyZ2M,mode=777’, ‘slave’: ‘tcp-listen:8485,keepalive,nodelay,reuseaddr,keepidle=1,keepintvl=1,keepcnt=5’, ‘options’: ‘-d -d’, ‘log’: False}, ‘mqtt’: {}, ‘serial’: {‘adapter’: ‘zboss’}}
Но если зайти по пути в папку Zigbee2mqtt и открыть файл Configuration.yaml и там прописать adapter: zboss – то конфигурация сработает и Zigbee2mqtt запустится.
serial:
port: /dev/ttyACM1
adapter: zboss
Ну а порт, можно найти в Настройки-> оборудование-> показать все оборудование и там увидим наш Zigbee стик:
Собственно сохраняем все и запускаем Zigbee2mqtt.
В пункте “О Программе” видно, что используется zboss:
Добавил тестовый датчик открытия двери, все добавилось без проблем:
Поддержка адаптера zboss пока еще экспериментальная и не рекомендована к постоянному использованию. Но вот поиграться и поэкспериментировать. Но если подумать, ezsp тоже экспериментальная до сих пор, а на них наверное еще больше людей сидит.