Съдържание:

Apple HomeKit WS2812B LED контролер: 3 стъпки (със снимки)
Apple HomeKit WS2812B LED контролер: 3 стъпки (със снимки)

Видео: Apple HomeKit WS2812B LED контролер: 3 стъпки (със снимки)

Видео: Apple HomeKit WS2812B LED контролер: 3 стъпки (със снимки)
Видео: 💡 Крутая фоторамка с подсветкой под управлением Apple HomeKit. (Умный дом) [#noizemc] [#diy] 2024, Ноември
Anonim
Image
Image
LED контролер Apple HomeKit WS2812B
LED контролер Apple HomeKit WS2812B
Apple HomeKit WS2812B LED контролер
Apple HomeKit WS2812B LED контролер
LED контролер Apple HomeKit WS2812B
LED контролер Apple HomeKit WS2812B

Има много проекти, базирани на LED ленти WS2812B, но повечето от тях използват homebridge или друго решение - най -вече на базата на MQTT - за комуникация с HomeKit.

Някои проекти използват ефекти и чрез Apple HomeKit, но никой от тях не поддържа самостоятелен HomeKit, без да се нуждае от мост. Използвам светодиоди WS2812B близо 3-4 години с HomeKit и те работят много добре

Тъй като кодът е много сложен и съм използвал много персонализирани библиотеки, направих предварително компилирани файлове с фърмуер. За тези, които се интересуват от създаването на местни проекти HomeKit, изходният код за esp-homekit е достъпен тук.

Основна информация:

  • В момента се поддържат само LED ленти WS2812B, WS2812B ECO и WS2813!
  • Максималният брой светодиоди е ограничен до 500 за спестяване на RAM
  • Изисква се преобразувател на логическо ниво (за преобразуване на данни от 3.3V до 5V)
  • Необходимо е и качествено 5V захранване
  • Повече информация можете да намерите на моя GitHub
  • Adafruit Überguide също може да помогне:-)

Дизайн на печатни платки:

Проектирах проста PCB за задвижване на светодиодите NeoPixel по правилния начин, описан в NeoPixel Überguide на Adafruit, използвайки най-новата интегрална схема за преобразувател на логически нива SN74HCT125N и препоръчителния кондензатор 1000uF:-) В момента използвам тази платка с 5V 10A захранване без никакви (температурни) проблеми:-)

Също така имам версия на USB Type-C и за по-къси LED ленти!

Можете да поръчате печатни платки от тук и тук

Можете да намерите повече информация за печатните платки тук

Характеристика:

  • Промяна на цвета
  • Промяна на яркостта
  • Промяна на цветната температура (не се изисква лента RGBW)
  • Светлинни ефекти WS2812FX (бета !!!)
  • Настройване на броя на светодиодите WS2812B (при първо зареждане от 1 до 500)
  • Характеристика на поведението на захранването (Цвят по подразбиране / Последно използван при стартиране чрез приложението Eve)
  • Преход (бърз / по подразбиране / умерен / спокоен чрез приложението Eve)
  • Заключване за деца (активиране/деактивиране на натискането на бутон чрез приложението Eve)
  • Ръководство за потребителя, което може да се изтегли (чрез приложението Eve)
  • Бутон за захранване / нулиране

Консумативи

За създаването на персонализирана печатна платка ще ви трябва евтин поялник или запояваща станция като тази или тази. Също така пистолет за запояване с горещ въздух също би бил полезен! За да качите кода, вероятно трябва да закупите и USB TTL адаптер.

Необходими части:

  • NodeMCU или Wemos D1 Mini
  • IC логически преобразувател на ниво
  • WS2812B LED лента
  • JST 3 пинов женски конектор
  • Захранване 5V 2-10A v1 или 5V 2-10A захранване v2
  • Кабелни кабели

Части за печатни платки:

  • ESP12F/E
  • ESP-01S (1MB светкавица)
  • SMD 0805 резистори
  • SMD 0805 кондензатори
  • AMS1117-3.3
  • Тактилен бутон
  • 2,54 мм хедър
  • SN74HCT125N
  • SMD 10.5x10.5 1000uF кондензатор
  • DC конектор
  • Винтова клема с 3 щифта
  • Държач за предпазител
  • Предпазител

Стъпка 1: Инсталиране на фърмуера

Инсталиране на фърмуера
Инсталиране на фърмуера
Инсталиране на фърмуера
Инсталиране на фърмуера
Инсталиране на фърмуера
Инсталиране на фърмуера

Можете да изтеглите фърмуера от моята страница на GitHub

Windows

За Windows можете да използвате официалния инструмент за изтегляне на фърмуер от Espressif

Настройката на флаш адресите (0x2000), размера на светкавицата (1MB/8mbit, 4MB/32mbit) и режима на флаш (DIO/QIO) е много важна стъпка, но тези настройки могат да се променят в зависимост от модула, който използвате! Също така препоръчвам да изтриете флаш преди да качите.bin файлове!

Настройки:

  • Скорост на предаване 115200
  • Размер на светкавицата 4MB или 32mbit (в зависимост от вашия модул)
  • Режим на светкавица QIO (или DIO, в зависимост от вашия модул)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 ledstrip.bin
  • 40 MHz

MacOS

За MacOS можете да използвате този мигащ инструмент

Настройки:

  • Изтриване на светкавицата - да
  • Скорост на предаване 115200
  • Размер на флаш 4MB или 32mbit (в зависимост от вашия модул)
  • Режим на светкавица QIO (или DIO, в зависимост от вашия модул)
  • Файл: ledstrip.bin
  • 40 MHz

Ръчно Flash

Трябва да инсталираме esptool.py на нашия Mac, за да можем да флашваме нашия ESP модул. За да работите с esptool.py, ще ви трябва или Python 2.7, Python 3.4, или по -нова инсталация на Python във вашата система. Препоръчваме да използвате най -новата версия на Python, затова отидете на уебсайта на Python и го инсталирайте на компютъра си.

С инсталиран Python, отворете терминален прозорец и инсталирайте най -новата стабилна версия на esptool.py с pip:

pip install esptool

Забележка: при някои инсталации на Python тази команда може да не работи и ще получите грешка. Ако случаят е такъв, опитайте да инсталирате esptool.py с:

pip3 install esptool python -m pip install esptool pip2 install esptool

След инсталирането ще имате esptool.py инсталиран в директорията на изпълнимите Python по подразбиране и трябва да можете да го изпълните с командата esptool.py. В прозореца на терминала изпълнете следната команда:

esptool.py

С esptool.py, инсталиран на вашия компютър, можете лесно да мигате вашата ESP8266 платка с фърмуера.

Отначало трябва да изтеглите три файла: rboot.bin и blank_config.bin и последната версия. Rboot.bin съдържа буутлоудъра за ESP8266 и blank_config.bin само в празен конфигурационен файл, а ledstrip.bin съдържа фърмуера. Сега свържете вашето устройство към вашия FTDI адаптер във флаш режим.

Огледални връзки:

rboot.binblank_config.binledstrip.bin

Поставяне на устройството във Flash режим

За да активирате фърмуера на ESP8266, мигащият щифт GPIO0 трябва да бъде изтеглен ниско, докато захранвате устройството. С моята персонализирана печатна платка има бутон, nodeMCU също има бутон за флаш и Wemos го прави автоматично, използвайки USB. Обратно, за нормално зареждане GPIO0 трябва да се дърпа високо или плаващо. Стартирайте в режим FLASH

Отидете в директорията, в която сте поставили изтеглените по -рано rboot.bin blank_config.bin файлове (напр. Изтегляния)

Отворете приложението Terminal. Щракнете върху иконата Finder във вашия док. Щракнете върху Go. Щракнете върху Помощни програми. Щракнете двукратно върху Терминал. Преминете към директорията за изтегляне.

Ще ви е необходим USB TTL адаптер за свързване към ESP8266. Ако използвате Wemos D1 Mini, е необходим само microUSB кабел, Wemos има вграден TTL адаптер.

изтегляне на cd

Забележка: Ако използвате друга библиотека за съхранение на трите.bin файла, отидете в тази библиотека с помощта на командата `cd`:

Използвайте esptool.py, за да мигате устройството си. Първо трябва да изтрием светкавицата:

esptool.py -p / dev / erase_flash

Обикновено вашият ESPPort ще бъде нещо като /dev /cu.usbserial-`xxxxxx`. След това поставете отново устройството във флаш режим и преминете новия фърмуер:

esptool.py -p /dev/cu.wchusbserial1420 --baud 115200 write_flash -fs 32m -fm dio -ff 40m 0x0 rboot.bin 0x1000 blank_config.bin 0x2000 ledstrip.bin

Стъпка 2: Настройка на Wi-Fi и HomeKit

Настройка на Wi-Fi и HomeKit
Настройка на Wi-Fi и HomeKit
Настройка на Wi-Fi и HomeKit
Настройка на Wi-Fi и HomeKit

Настройка на Wi-Fi

Трябва да конфигурирате wifi мрежата, преди да добавите аксесоара към HomeKit. За да конфигурирате настройките за Wi-Fi, устройството генерира своя собствена Wi-Fi в режим AP. Трябва да се свържете с него, за да настроите вашата Wi-Fi мрежа. Просто вземете устройството си с iOS, отидете на Настройки-> Wi-Fi и потърсете SSID, наречен HomeKid, последван от MAC адреса на модула и се свържете с него. От съображения за сигурност AP е защитен с парола! Парола за AP по подразбиране: 12345678

Изчакайте няколко секунди, докато се появи мрежа, която ви показва всички Wi-Fi мрежи, които устройството е намерило. Изберете вашата и въведете парола! След това можете да добавите точния брой светодиоди във вашата LED лента! Въведете число от 1 до 500! След това щракнете върху бутона Присъединяване! Модулът ще се опита да свърже избраната Wi-Fi мрежа, това ще отнеме няколко секунди.

Забележка: Ако дадената парола е грешна, можете да нулирате настройките на Wi-Fi, като задържите бутона Reset за 10 секунди

Настройка на HomeKit

На вашето iOS устройство отворете Home App и следвайте обичайните стъпки, за да добавите нов аксесоар. Настройката на сдвояване отнема около 30 секунди.

Кодът по подразбиране HomeKit е 021-82-017

Можете също да сканирате този QR код на HomeKit:

Забележка: Ако сдвояването е неуспешно, можете да изключите устройството си, да го включите отново и да стартирате отново настройката на HomeKit (настройките за Wi -Fi остават конфигурирани). След успешно сдвояване LED лентата ще мига бяло 3 пъти!

Често срещани проблеми:

  • Понякога добавянето на множество аксесоари с помощта на QR код се проваля, ако HomeKit съобщава „Аксесоар вече е добавен“, просто просто добавете кода за сдвояване ръчно, вместо да сканирате QR кода!
  • В случай, че нещо се обърка, можете да видите лог файловете, използвайки серийния монитор на Arduino, и можете да отворите проблем в GitHub

Стъпка 3: Персонализирани настройки

Персонализирани настройки
Персонализирани настройки
Персонализирани настройки
Персонализирани настройки

За съжаление приложението Home не поддържа персонализирани характеристики/характеристики на трети страни, така че ще ви е необходимо приложението Elgato EVE за промяна на тези настройки и използване на ефектите WS2812B. Също така аксесоарът действа като аксесоар за фалшива Eve Light Strip, когато го добавите чрез приложението Eve?

Преходи и поведение на силата

Оригиналната лента Eve Light поддържа тези две характеристики. С Преходи можете да променяте скоростта на LED лентата, когато използвате ефекти WS2812FX! Задаването му на Бързо ще деактивира избледняването навътре/навън и бързо ще се включи!

С Power Behavior можете да промените цвета по подразбиране, когато LED лентата се включи! По подразбиране той е зададен на Последно използван цвят, така че когато изключите LED лентата, той винаги ще помни последния цвят, който сте използвали! Когато е зададено по подразбиране бяло, всеки път, когато изключите LED лентата, цветът ще се върне към бял!

Нулиране

Кодът има функция за нулиране в случай, че нещо се обърка. Изчакайте около 5 секунди, за да позволите на устройството да се зареди напълно, и след това дълго натиснете бутона за поне 10 секунди!

Всички конфигурирани настройки са премахнати и устройството се рестартира. Това премахва настройките на HomeKit и Wi-Fi и вашето устройство следващия път ще премине в режим на точка за достъп, за да преконфигурира Wi-Fi.

Забележка: Еднократното натискане на същия бутон ще включи или изключи LED лентата

Препоръчано: