Я уже рассказывал про то как добавить ESP8266 в HomeKit: Охранная система в гараж на ESP 8266 с интеграцией в Apple HomeKit, сегодня расскажу про то как добавить LED ленту. И так, начнем.Повторяться как установить брокер на Rasspbery pi я не буду, берем из первой статьи первый раздел.Перейдем сразу к созданию прошивки
Создаем собственную прошивку
Подготовка:Вы можете использовать Atom или Arduino IDE для создания собственной прошивки. В этом руководстве я буду использовать Atom на Windows 10 x64Скачать Atom от atom.io (Direct Download)Запустите настройкуПосле завершения установки Atom должен быть запущен. Теперь вам нужно установить platform.io IDE для Atom:Главное меню: Файл> Настройки> УстановитьТеперь вы можете найти пакет. Найти платформу platform.ioВыберите platformio-ide и нажмите кнопку «Установить»
- Atom попросит вас установить Clang сейчас, сделайте это, нажав "Install Clang"
- Появится новый веб-сайт. Прокрутите вниз до «II. Clang for Intelligent Code Completion» и нажмите кнопку «Загрузить». Если загрузка выполнена, запустите настройку. Пожалуйста, выберите «Добавить LLVM в систему PATH» на этапе установки.
- После того, как вы установили Clang, закройте сайт и вернитесь к Atom. После того, как Atom установил все пакеты, вам необходимо перезапустить Atom.
Создание прошивки:
Сначала вам нужно получить Sourcefiles из Github.Перейдите на страницу кодов.Теперь вы можете изменить ветвь (1). Я предлагаю вам использовать ветвь разработки.Затем нажмите «Clone or Download» (2) и выберите «Загрузить Zip» (3)
Перейдите в папку, в которой вы сохранили ZIP, и разархивируйте его, щелкнув правой кнопкой мыши и выберите «Извлечь все».Вернуться к Atom откройте вкладку PlatformIO Home (должно быть открыто).Нажмите «Открыть проект» и выберите распакованную папку, которую вы только что загрузили. Убедитесь, что файл platformio.ini существует. Это важно для загрузки пользовательского файла platformio.ini.
Слева в панеле перейдите к sonoff / user_config.h и нажмите на нее.Теперь вы можете изменить конфигурацию по умолчанию в этом файле. Я предлагаю вам все прочитать и адаптировать все к вашим потребностям.Если вы закончили, нажмите ctrl s, чтобы сохранить файл.
Наконец, перейдите в меню PlatformIO и нажмите «Build». Atom теперь начинает компилировать прошивку. Чтобы ускорить компиляцию, вы можете раскомментировать свой предпочтительный язык в файле platformio.ini (удалите «;» из одной строки, не забудьте сохранить ctrl s).
После его выполнения вы можете найти прошивку в каталоге.pioenvs в распакованной папке. Внимание:.pioenvs - скрытая папка в Unix-системах.
Информация по созданию прошивки была взята: Beginner Guide Create your own Firmware Build
Прошивка ESP8266
Для прошивки нам понадобиться FlashESP8266 и полученная нами прошивка.bin Подключаем ESP8266 к компьютеру, Подключение осуществляется двумя способами:
- при помощи usb-micro usb кабеля (вопросов не должно возникнуть)- или при помощи ttl конвертера, обратите внимание пины ttl конвертера 3.3v, GRND, RX, TX на пины ESP8266 3.3v, GRND, TX, RX (TX и RX нужно поменять местами).Далее запускаем FlashESP8266.exe из скаченного архива.
Выбираем COM порт нашей ESP8266 или ttl конвертера и созданный файл прошивки.bin и нажимаем на кнопку Flash.Если на экране увидели такое окно с процентами значит все выбрали верно, жмем 100% и надпись Flash Complete.На этом прошивка закончена. Переходим к настройке ESP8266
Настройка ESP8266Заходим по ip на нашу прошитую ESP8266Идем "Конфигурация"->"Конфигурация модуля"->"Тип модуля" выбираем "34 MagicHome"
- Далее идем "Конфигурация"->"Конфигурация прочее"->"Дружественное Имя 1 (Sonoff)" пишем свое имя "D1Led"
Аппаратная часть
ESP8266 (у меня лежала D1)
RGBW лента, подойдет и RGB, но лучше RGBW
Транзисторы TIP120 (У меня были TIP122 отлично работает)
Блок питание и соединительные провода
Собираем все по схеме, на изображении лента RGB:
Установка плагина HomeBridge
Устанавливаем плагин из репозиторияПодключаемся по SSH к малине и пишем в командной строке:
sudo npm install -g homebridge-sonoff-tasmota-mqtt-hsb
далее nano ~/.homebridge/config.jsonи добавляем аксессуары в конфиг:
{
"accessory": "sonoff-tasmota-mqtt-hsb",
"name": "D1Led",
"url": "mqtt://192.168.88.5",
"username": "admin",
"password": "admin",
"topics": {
"getOn": "stat/D1Led/Power",
"setOn": "cmnd/D1Led/Power",
"setHsb": "cmnd/D1Led/HSBColor",
"getHsb": "stat/D1Led/HSBColor"
}
}
Перезагружаем homebridge и радуемся проделанной работой.
Демонстрационное видео
Вроде бы рассказал про все, если что пишите в комментариях.
Отличная работа ) жаль больше одного лайка поставить нельзя, хотя.....))))
будет первый ресурс где можно поставить два лайка
Лайк!
Супер!
народ, ткните ссылкой где берете нормальные D1mini или просто D1 ???
Смотри, что нашлось на AliExpress
http://s.aliexpress.com/2qIjqMvu">http://s.aliexpress.com/2qIjqM... я тут заказывал, сейчас смотрю дороже, по опыту скажу NodeMCU лучше
уже нашел нормального поставщика. кстати планирую разобраться именно с адресной лентой - это считаю более интересной темой.
адресная едет ко мне, тоже хочу поковырять, я думаю нечего сложно
Простите, а можно уще готовое решение приобрести??)) 1шт пожалуйста )))
С радостью, только вот отправить не как не смогу. а вообще стукни в личку в телеграмм помогу собрать
вот готовое решение только прошить https://ru.aliexpress.com/item/Magic-Home-Mini-RGB-RGBW-Wifi-Controller-For-Led-Strip-Panel-light-Timing-Function-16million-colors/32686853650.html?spm=a2g0s.9042311.0.0.116833ed5FPqLp">https://ru.aliexpress.com/item...
Подскажи как прошить? хочу себе сделать
Все остальное как в статье, питание через блок питания, GPIO0 и GND можно скрепкой замкнуть при включении что бы перейти в режим программирования
А можно более кликабельную версию подключения?
есть проще вариант https://www.npmjs.com/package/homebridge-magichome">https://www.npmjs.com/package/...
У меня в atom во вкладке sonoff нет файла user_config.h, а только user_config_override.h. Можете подсказать в чём проблема.
напиши в личку, попробую помочь
В новой версии прошфке на github файл user_config.h называется my_user_config.h.
отличное замечание, может кому-то поможет
Дошли мне D1, подключил всё по схеме, установил все плагины и MQTT broker. Но после изменения config.json, Homebridge не запускается. Вот что в D1 конфиге.
Там некоторые изменения плагина произошли.
You will need to update your configuration to remove the
topics.getOn
andtopics.getHsb
values, and add in atopics.status
value instead - by default this isstat/device-name/RESULT
. See the https://www.npmjs.com/package/homebridge-sonoff-tasmota-mqtt-hsb#Configuration">Configuration section for an updated config example.Вам нужно будет обновить конфигурацию , чтобы удалить
topics.getOn
иtopics.getHsb
значение, и добавьте вtopics.status
значении вместо этого - по умолчанию этоstat/device-name/RESULT
. Смотрите раздел https://www.npmjs.com/package/homebridge-sonoff-tasmota-mqtt-hsb#Configuration">Конфигурация для обновленного примера конфигурации.Как то вот так:
{
"accessory": "sonoff-tasmota-mqtt-hsb",
"name": "D1Led",
"url": "mqtt://0.0.0.0",
"username": "admin",
"password": "admin",
"topics":
{
"setOn": "cmnd/D1Led/Power",
"setHsb": "cmnd/D1Led/HSBColor",
"status": "stat/D1Led/RESULT"
}
}
И ещё у меня лента rgbw и белый цвет не включается.
Если посмотреть исходники прошивки, а именно (файл sonoff_template.h) там видно что для использования RGBW с параметром
https://sprut.ai/static/media/cache/00/14/84/5/275731/13751/2000x2000x_image.png?1550714837" alt="2000x2000x_image.png?1550714837" />HSBColor
нужно выбрать шаблон Arilux LC06 (40) и желательно в настройках (файл my_user_config.h) поменять строку
#define USE_WS2812_CTYPE
NEO_GRB
на #define USE_WS2812_CTYPE NEO_RGBW
Насторойки HomeBridge
"accessories": [
{
"accessory": "sonoff-tasmota-mqtt-hsb",
"name": "MagicHome LED strip controller",
"url": "mqtt://0.0.0.0",
"username": "",
"password": "",
"caption": "Test",
"topics": {
"setOn": "cmnd/sonoff/Power",
"setHsb": "cmnd/sonoff/HSBColor",
"status": "stat/sonoff/RESULT"
}
}
Если посмотреть исходники прошивки, а именно (файл sonoff_template.h) там видно что для использования RGBW с параметром
HSBColor
нужно выбрать шаблон Arilux LC06 (40) и желательно в настройках (файл my_user_config.h) поменять строку
#define USE_WS2812_CTYPE
NEO_GRB
на #define USE_WS2812_CTYPE NEO_RGBW
https://sprut.ai/static/media/cache/00/14/84/5/372753/13753/2000x2000x_image.png?1550715036" alt="2000x2000x_image.png?1550715036" />
Насторойки HomeBridge
"accessories": [
{
"accessory": "sonoff-tasmota-mqtt-hsb",
"name": "MagicHome LED strip controller",
"url": "mqtt://0.0.0.0",
"username": "",
"password": "",
"caption": "Test",
"topics": {
"setOn": "cmnd/sonoff/Power",
"setHsb": "cmnd/sonoff/HSBColor",
"status": "stat/sonoff/RESULT"
}
}
а у меня не регулируется яркость и цвет не меняется, при этом через консоль все нормально. конфиг обновил для 2.0.1
Если посмотреть исходники прошивки, а именно (файл sonoff_template.h) там видно что для использования RGBW с параметром
HSBColor
нужно выбрать шаблон Arilux LC06 (40) и желательно в настройках (файл my_user_config.h) поменять строку
#define USE_WS2812_CTYPE
NEO_GRB
на #define USE_WS2812_CTYPE NEO_RGBW
https://sprut.ai/static/media/cache/00/14/84/5/372753/13753/2000x2000x_image.png?1550715036" alt="2000x2000x_image.png?1550715036" />
Насторойки HomeBridge
"accessories": [
{
"accessory": "sonoff-tasmota-mqtt-hsb",
"name": "MagicHome LED strip controller",
"url": "mqtt://0.0.0.0",
"username": "",
"password": "",
"caption": "Test",
"topics": {
"setOn": "cmnd/sonoff/Power",
"setHsb": "cmnd/sonoff/HSBColor",
"status": "stat/sonoff/RESULT"
}
}
Тоже хочу на Nodemcu собрать,подскажите какие gpio использовать для этой схемы?
Как то мимо глаз статья прошла. А я по просьбе одного из читателей портала разработал https://easyeda.com/Alex_AW/ESP8266_Control_unit">вот эту схему и платку. Как раз подойдет по эту прошивку.