Оглавление:

Светодиодный контроллер Apple HomeKit WS2812B: 3 шага (с изображениями)
Светодиодный контроллер Apple HomeKit WS2812B: 3 шага (с изображениями)

Видео: Светодиодный контроллер Apple HomeKit WS2812B: 3 шага (с изображениями)

Видео: Светодиодный контроллер Apple HomeKit WS2812B: 3 шага (с изображениями)
Видео: ESP 8266 HomeKit (переключатель) 2024, Ноябрь
Anonim
Image
Image
Светодиодный контроллер Apple HomeKit WS2812B
Светодиодный контроллер Apple HomeKit WS2812B
Светодиодный контроллер Apple HomeKit WS2812B
Светодиодный контроллер Apple HomeKit WS2812B
Светодиодный контроллер Apple HomeKit WS2812B
Светодиодный контроллер Apple HomeKit WS2812B

Существует множество проектов, основанных на светодиодных лентах WS2812B, но большинство из них используют домашний мост или любое другое решение - в основном на основе MQTT - для связи с HomeKit.

В некоторых проектах также используются эффекты через Apple HomeKit, но ни один из них не поддерживает автономный HomeKit без необходимости использования моста. Я использую светодиоды WS2812B с HomeKit уже почти 3-4 года, и они работают очень хорошо.

Поскольку код очень сложный, и я использовал множество пользовательских библиотек, я сделал предварительно скомпилированные файлы прошивки. Для тех, кто заинтересован в создании нативных проектов HomeKit, исходный код esp-homekit доступен здесь.

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

  • В настоящее время поддерживаются только светодиодные ленты WS2812B, WS2812B ECO и WS2813!
  • Максимальное количество светодиодов ограничено до 500 для экономии оперативной памяти.
  • Требуется преобразователь логического уровня (для преобразования данных с 3,3 В в 5 В)
  • Также необходим качественный источник питания 5 В
  • Более подробную информацию можно найти на моем GitHub
  • Adafruit Überguide также может помочь:-)

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

Я разработал простую печатную плату для управления светодиодами NeoPixel надлежащим образом, описанным в NeoPixel Überguide от Adafruit, с использованием последней микросхемы преобразователя логического уровня SN74HCT125N и также рекомендованного конденсатора 1000 мкФ:-) В настоящее время я использую эту печатную плату с источником питания 5 В 10 А. без каких-либо (температурных) проблем:-)

Также у меня есть версия USB Type-C для более коротких светодиодных лент!

Вы можете заказать печатные платы здесь и здесь

Вы можете найти больше информации о печатных платах здесь

Функции:

  • Сменить цвет
  • Изменить яркость
  • Изменить цветовую температуру (полоса RGBW не требуется)
  • WS2812FX Light Effects (бета !!!)
  • Настройка количества светодиодов WS2812B (при первой загрузке от 1 до 500)
  • Характеристики питания (цвет по умолчанию / последнее использование при запуске через приложение Eve)
  • Переход (Быстрый / По умолчанию / Умеренный / Спокойный через приложение Eve)
  • Блокировка от детей (включение / выключение нажатия кнопки через приложение Eve)
  • Загружаемое руководство пользователя (через приложение Eve)
  • Кнопка питания / сброса

Запасы

Для создания собственной печатной платы вам понадобится дешевый паяльник или паяльная станция, подобная этой или этой. Также будет полезен термовоздушный паяльник! Для загрузки кода вам, вероятно, также придется купить переходник USB TTL.

Необходимые детали:

  • NodeMCU или Wemos D1 Mini
  • ИС преобразователя логического уровня
  • Светодиодная лента WS2812B
  • JST 3-контактный гнездовой разъем
  • Источник питания 5 В 2-10 А v1 или источник питания 5 В 2-10 А v2
  • Соединительные кабели

Детали печатной платы:

  • ESP12F / E
  • ESP-01S (флэш-память 1 МБ)
  • Резисторы SMD 0805
  • Конденсаторы SMD 0805
  • AMS1117-3.3
  • Тактильная кнопка
  • Заголовок 2,54 мм
  • SN74HCT125N
  • Конденсатор SMD 10,5x10,5 1000 мкФ
  • Разъем постоянного тока
  • 3-контактный винтовой зажим
  • Патрон плавкого предохранителя
  • Предохранитель

Шаг 1. Установка прошивки

Установка прошивки
Установка прошивки
Установка прошивки
Установка прошивки
Установка прошивки
Установка прошивки

Вы можете скачать прошивку со страницы GitHub

Окна

Для Windows вы можете использовать официальный инструмент загрузки прошивки от Espressif

Установка адресов флэш-памяти (0x2000), размера флэш-памяти (1 МБ / 8 Мбит, 4 МБ / 32 Мбит) и режима флэш-памяти (DIO / QIO) - очень важный шаг, но эти настройки могут быть изменены в зависимости от используемого модуля! Также я рекомендую стереть флеш-память перед загрузкой файлов.bin!

Настройки:

  • Скорость передачи 115200 бод
  • Размер флэш-памяти 4 МБ или 32 Мбит (в зависимости от вашего модуля)
  • Flash Mode QIO (или DIO, в зависимости от вашего модуля)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 ledstrip.bin
  • 40 МГц

MacOS

Для MacOS вы можете использовать этот инструмент для прошивки

Настройки:

  • Стереть вспышку - да
  • Скорость передачи 115200
  • Размер флэш-памяти 4 МБ или 32 Мбит (в зависимости от вашего модуля)
  • Flash Mode QIO (или DIO, в зависимости от вашего модуля)
  • Файл: ledstrip.bin
  • 40 МГц

Ручная прошивка

Мы должны установить 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 установить esptool python -m pip установить esptool pip2 установить esptool

После установки у вас будет установлен esptool.py в каталог исполняемых файлов Python по умолчанию, и вы сможете запустить его с помощью команды esptool.py. В окне Терминала выполните следующую команду:

esptool.py

Установив esptool.py на ваш компьютер, вы можете легко прошить плату ESP8266 прошивкой.

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

Зеркальные ссылки:

rboot.binblank_config.binledstrip.bin

Перевод устройства в режим Flash

Чтобы включить мигание прошивки ESP8266, вывод GPIO0 должен быть понижен во время подачи питания на устройство. На моей пользовательской плате есть кнопка, у nodeMCU также есть кнопка flash, а Wemos делает это автоматически с помощью USB. И наоборот, для нормальной загрузки GPIO0 должен быть вытянут высоко или плавающим. Начать в РЕЖИМЕ ВСПЫШКИ

Перейдите в созданный вами каталог, в который вы поместили ранее загруженные файлы rboot.bin blank_config.bin (например, Загрузки)

Откройте приложение "Терминал". Щелкните значок Finder в доке. Щелкните Go. Щелкните Утилиты. Дважды щелкните Терминал. Перейдите в каталог загрузок.

Для подключения к ESP8266 вам понадобится переходник USB TTL. Если вы используете 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

Перед добавлением аксессуара в HomeKit необходимо настроить сеть Wi-Fi. Для настройки параметров Wi-Fi устройство генерирует собственный Wi-Fi в режиме AP. Вы должны подключиться к нему, чтобы настроить свою сеть Wi-Fi. Просто возьмите свое устройство iOS, перейдите в «Настройки» -> «Wi-Fi», найдите SSID с именем HomeKid-, а затем MAC-адрес модуля и подключитесь к нему. По соображениям безопасности точка доступа защищена паролем! Пароль точки доступа по умолчанию: 12345678

Подождите несколько секунд, пока не появится Интернет, в котором будут показаны все сети Wi-Fi, обнаруженные устройством. Выберите свой и введите пароль! После этого вы можете добавить точное количество светодиодов в свою светодиодную ленту! Введите число от 1 до 500! Затем нажмите кнопку «Присоединиться»! Модуль попытается подключиться к выбранной сети Wi-Fi, это займет пару секунд.

Примечание: если заданный пароль неверен, вы можете сбросить настройки Wi-Fi, удерживая кнопку сброса в течение 10 секунд.

Настройка HomeKit

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

Код HomeKit по умолчанию: 021-82-017

Также вы можете сканировать этот QR-код HomeKit:

Примечание. В случае сбоя сопряжения вы можете отключить устройство, повторно включить его и снова запустить настройку HomeKit (настройки Wi-Fi остаются настроенными). После успешного сопряжения светодиодная лента 3 раза мигнет белым цветом!

Общие проблемы:

  • Иногда добавить несколько аксессуаров с помощью QR-кода не удается, если HomeKit сообщает «Аксессуар уже добавлен», просто добавьте код сопряжения вручную вместо сканирования QR-кода!
  • В случае, если что-то пошло не так, вы можете просмотреть файлы журнала с помощью последовательного монитора Arduino и смело открывать проблему на GitHub.

Шаг 3. Пользовательские настройки

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

К сожалению, приложение Home не поддерживает пользовательские / сторонние характеристики, поэтому вам понадобится приложение Elgato EVE для изменения этих настроек и использования эффектов WS2812B. Также аксессуар действует как аксессуар Fake Eve Light Strip, когда вы добавляете его через приложение Eve?

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

Оригинальная лента Eve Light поддерживает эти две характеристики. С помощью Transitions вы можете изменить скорость светодиодной ленты при использовании эффектов WS2812FX! Установка этого параметра на «Быстрый» отключит постепенное появление / исчезновение, и оно быстро включится!

С помощью Power Behavior вы можете изменить цвет по умолчанию при включении светодиодной ленты! По умолчанию установлен последний использованный цвет, поэтому, когда вы выключите светодиодную ленту, она всегда будет помнить последний использованный вами цвет! Если установлено значение «Белый по умолчанию», каждый раз, когда вы выключаете светодиодную ленту, цвет снова становится белым!

Сброс настроек

В коде есть функция сброса на случай, если что-то пойдет не так. Подождите около 5 секунд, чтобы устройство загрузилось полностью, а затем нажмите и удерживайте кнопку не менее 10 секунд!

Все настроенные параметры были удалены, и устройство перезагружается. Это удалит настройки HomeKit и Wi-Fi, и ваше устройство перейдет в режим точки доступа в следующий раз, чтобы перенастроить Wi-Fi.

Примечание: однократное нажатие той же кнопки включает или выключает светодиодную ленту.

Рекомендуемые: