Создаем zigbee реле на esp32c6 и подключаем в Home Assistan

Многие, кто пробовал разрабатывать собственные Zigbee-устройства, знакомы с отличной прошивкой PTVO. Это удобное решение, позволяющее быстро запустить простое устройство без глубоких знаний в программировании. Однако у такого подхода есть и свои ограничения — например, зависимость от стороннего ПО, невозможность гибкой настройки логики работы, а также закрытый исходный код. Для меня написание прошивки под микроконтроллеры Texas Instruments, такие как CC2530, оказалось достаточно сложной задачей. Кроме того, эти контроллеры  требуют специфических инструментов для прошивки и отладки. А что если создать своё полноценное Zigbee-устройство с нуля — без ограничений, с открытым кодом и возможностью полной кастомизации? Да ещё и с использованием современных микроконтроллеров? Если вам это интересно, тогда приступим! Мы выберем PlatformIO — современную, кроссплатформенную среду разработки, которая отлично интегрируется с ESP-IDF, предоставляет богатый функционал, упрощает процесс сборки, прошивки и отладки. Совсем недавно компания Espressif представила новые микроконтроллеры — ESP32-C6 и ESP32-H2, которые, помимо привычного Wi-Fi и Bluetooth (в некоторых моделях), поддерживают и Zigbee/Thread. Это делает их отличным выбором для современных IoT-проектов. В моем примере используется компактная плата ESP32-C6 Super Mini. Это удобный вариант для прототипирования, с минимальным набором обвязки, но с полноценной поддержкой Zigbee. В качестве примера реализована простая функция переключения трёх реле. Вместо физических реле в демонстрационном коде изменяется цвет встроенного адресного светодиода WS2812, что позволяет удобно отлаживать логику работы даже без внешнего оборудования. При необходимости вы легко можете адаптировать код под реальные реле, заменив управление светодиодом на стандартную функцию digitalWrite() с выводами, к которым подключены реле.

Продолжить чтение «Создаем zigbee реле на esp32c6 и подключаем в Home Assistan»

Автономное IoT устройство на ESP32-C3-super mini

ESP32-C3 — энергоэффективный микроконтроллер на новой архитектуре RISC-V с поддержкой Wi-Fi и BLE, хорошо подходящий для diy IoT-устройств. Чип обладает низким энергопотреблением в режиме глубокого сна до 44 мкА. В данной статье мы будем подключать не самый распространённый датчик HTU21D температуры и влажности. Рассмотрим реализацию проекта с использованием режима глубокого сна, измерение напряжения аккумулятора LIPO и отправкой данных с датчика на MQTT-сервер Home Assistan.

Подключение датчика

Схема подключения датчика и аккумулятора. Обратите внимание что I2C используется не аппаратный. Это связано с тем что пины GPIO8 и GPIO9 платы ESP32c3 super mini подтянуты к линии питания 3.3в из за этого на датчик в режиме глубокого сна поступает питание батареи это способствует дополнительной разрядки. Поэтому в коде используется переопределение пинов SDA и SCL на GPIO6, GPIO7. Библиотека Adafruit_HTU21DF упрощает чтение данных:

 

Adafruit_HTU21DF HTU = Adafruit_HTU21DF(); // Определяем датчик
HTU21D TwoWire I2CHTU = TwoWire(0);
#define I2C_SDA 6
#define I2C_SCL 7
I2CHTU.begin(I2C_SDA, I2C_SCL, 100000);//Определяем новые пины шины I2C HTU.begin(&I2CHTU);

Продолжить чтение «Автономное IoT устройство на ESP32-C3-super mini»

Nixie Clock (часы на газоразрядных индикаторах)

Года 2 назад, я узнал о замечательных советских газоразрядных индикаторах. До этого,  я конечно видел, что то подобное в старой советской технике, но никогда не задумывался, что такие индикаторы можно применить в быту, довольно таки в многочисленных проектах, в которых нужно выделить эдакую эстетическую изюминку. Свою популярность эти индикаторы вновь приобрели среди радиолюбителей несколько лет назад из за своего антикварного вида и довольно красивого визуального отображения индикации. В интернете уже сейчас можно найти прекрасные реализации часов на советских ИНках, но мне с самого начало хотелось  разобраться с принципами построения таких часов, написать свою прошивку и сделать самодельный корпус из подручных материалов. Не давно я выкроил время и соорудил свои собственные часики на платформе arduino. Самым сложным оказалось достать эти индикаторы. В моем городе я так их и не нашел. Через форум сайта радиокот,  нашел человека, который как раз был не далеко в г. Омске. Купил у него 6 ламп ИН-14 и 12 ламп ИН-12Б, а также 6 высоковольтных дешифратора К155ИД1. Продолжить чтение «Nixie Clock (часы на газоразрядных индикаторах)»

Автоматическая подсветка лестницы (обновление)

IMG_1273Доброго времени суток друзья! Как я и обещал выкладываю немного обновленную схему для arduino. Теперь наша умная подсветка лестницы умеет плавно зажигать ступеньки. Драйвер светодиодов M5451 с самого начала имел поддержку аппаратного ШИМ, просто мои знания в программировании очень не большие и в первой версии я даже и не задумывался это реализовывать. Так же охота выразить большое спасибо Игорю Соколу, который добавил в схему каскад из hex-инвертора 74hc04 и транзисторной сборки Дарлингтона ULN2803. Данный каскад позволяет нам подключать светодиодные ленты мощностью до 500 mA (примерно 1 метр светодиодной ленты) на каждый канал, основанных на smd светодиодах 3528 и 5050 напряжением 12 вольт. Продолжить чтение «Автоматическая подсветка лестницы (обновление)»

Столик из RGB светодиодов на Arduino. Часть 1

P1000457В течении последнего года в процессе серфинга по интернету на тему Arduino, я находил достаточно много интересных проектов светодиодных столиков (RGB LED Coffee table). Самые на мой взгляд удачные и не сложные в повторении решения, основываются на arduino производных платах типа colorduino и rainbowduino. Данные платы заточены под цветные светодиодные матрицы с общим анодом, их можно приобрести на том же ebay. Вот например некоторые интересные проекты: Продолжить чтение «Столик из RGB светодиодов на Arduino. Часть 1»

Автоматическая подсветка лестницы с помощью Arduino

Добрый день! В этом посте хочу поделится с  интернет сообществом о том, как мне довелось сделать автоматическое освещение лестницы в своем двухэтажном коттедже.  Около четырех месяцев назад, возвращаясь с работы в полной темноте, я не удачно подскользнулся и сломал две плюсниевых кости (пальца) на левой ступне. Целый месяц пришлось провалятся в постеле, так как наступать на ногу было невероятно больно. Потом еще пол месяца хромал без гипса (у кого были переломы меня сразу поймут). После этой печальной истории я начал задумываться об автоматизации освещения ступенек лестницы. Немного поиграв с поисковыми запросами, нашел для себя очень простое решение в этом блоге, как раз на основе моего любимого микроконтроллера Arduino. Схема не вызвала каких то трудностей, но отпугивало количество и длина проводов, которые мне предстояло смонтировать. До этого ничего подобного не делал. Покупать готовые решения или нанимать кого-то — накладно. В течении месяца заказал нужные комплектующие и не торопясь смонтировал за несколько дней на свою лестницу. Всем кому интересно, что из этого получилось, добро пожаловать под кат!

Продолжить чтение «Автоматическая подсветка лестницы с помощью Arduino»