Съдържание:
- Консумативи
- Стъпка 1: Инсталиране на фърмуера
- Стъпка 2: Настройка на Wi-Fi и HomeKit
- Стъпка 3: Персонализирани настройки
Видео: Apple HomeKit WS2812B LED контролер: 3 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Има много проекти, базирани на 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
Трябва да конфигурирате 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 лентата
Препоръчано:
Apple HomeKit Wi-Fi изсушител, базиран на ESP8266?: 6 стъпки (със снимки)
Apple HomeKit Wi-Fi изсушител, базиран на ESP8266?: За съжаление има само един или два влагоуловителя, които поддържат Apple HomeKit, но те имат наистина високи цени (300 $+). Така че реших да направя свой собствен Wi-Fi способен Apple HomeKit изсушител на базата на евтин, който вече имам? Аз
Arduino базиран DIY контролер за игри - Arduino PS2 контролер за игри - Възпроизвеждане на Tekken с DIY Arduino геймпад: 7 стъпки
Arduino базиран DIY контролер за игри | Arduino PS2 контролер за игри | Игра на Tekken с DIY Arduino геймпад: Здравейте момчета, играта на игри винаги е забавна, но играта със собствения си DIY персонализиран контролер на играта е по -забавна. Така че ще направим контролер за игра, използвайки arduino pro micro в тази инструкция
DIY контролер за ръкавици със сензори за електронен текстил: 14 стъпки (със снимки)
Направи си сам контролер за ръкавици със сензори за електронни текстили: Тази инструкция е стъпка по стъпка урок за това как да направите ръкавица за данни със сензори за eTextile. Проектът е сътрудничество между Рейчъл Фрейър и Артьом Максим. Рейчъл е дизайнер на сензори за текстилни и етекстилни ръкавици, а Арти проектира кръга
USB контролер за бас, високите и силата на звука със светодиоди за клавиатурата: 6 стъпки (със снимки)
USB контролер за баси, високи и силни звуци със светодиоди за клавиатурата: Имам Creative SoundBlaster Audigy в основния си настолен компютър и имах нужда от начин за бързо регулиране на настройките на басите и високите честоти (както и силата на звука) при слушане на аудио или видео носител . Адаптирах кода от два източника, дадени в
Разбъркване на NES контролер (Nintendo контролер MP3, V3.0): 5 стъпки (със снимки)
Разбъркване на контролера на NES (Nintendo Controller MP3, V3.0): Напълно изтръгнах ryan97128 от неговия дизайн за Nintendo Controller MP3, версия 2.0 и чувам, че той е получил идеята от всички мъдри Morte_Moya, така че не мога да взема кредит за целия им гений. Просто исках да добавя удобство и презареждане