Taula de continguts:

Controlador LED Apple HomeKit WS2812B: 3 passos (amb imatges)
Controlador LED Apple HomeKit WS2812B: 3 passos (amb imatges)

Vídeo: Controlador LED Apple HomeKit WS2812B: 3 passos (amb imatges)

Vídeo: Controlador LED Apple HomeKit WS2812B: 3 passos (amb imatges)
Vídeo: Как легко управлять адресными светодиодами с помощью ESP32 или ESP8266 | Проект WLED 2024, De novembre
Anonim
Image
Image
Controlador LED Apple HomeKit WS2812B
Controlador LED Apple HomeKit WS2812B
Controlador LED Apple HomeKit WS2812B
Controlador LED Apple HomeKit WS2812B
Controlador LED Apple HomeKit WS2812B
Controlador LED Apple HomeKit WS2812B

Hi ha molts projectes basats en tires LED WS2812B, però la majoria utilitzen homebridge o qualsevol altra solució, basada principalment en MQTT, per comunicar-se amb HomeKit.

Alguns projectes també utilitzen efectes mitjançant Apple HomeKit, però cap d’ells admet HomeKit independent sense necessitat de cap pont. Faig servir LEDs WS2812B fa gairebé 3-4 anys amb HomeKit i funcionen molt bé

Com que el codi és molt complex i he utilitzat moltes biblioteques personalitzades, he creat fitxers de microprogramari precompilats. Per a aquells que estiguin interessats a crear projectes HomeKit natius, el codi font de esp-homekit està disponible aquí.

Informació bàsica:

  • Actualment, només s’admeten tires LED WS2812B, WS2812B ECO i WS2813.
  • El nombre màxim de LEDs està limitat a 500 per estalviar RAM
  • Es necessita un convertidor de nivell lògic (per a conversions de dades de 3,3V a 5V)
  • També és necessària una font d’alimentació de 5V de bona qualitat
  • Podeu trobar més informació al meu GitHub
  • Adafruit Überguide també pot ajudar:-)

Disseny de PCB:

He dissenyat un PCB senzill per conduir els LEDs NeoPixel de la manera correcta descrita a NeoPixel Überguide d’Adafruit mitjançant l’últim convertidor de nivell lògic SN74HCT125N IC i el condensador 1000uF també recomanat:-) Actualment estic fent servir aquest PCB amb una font d’alimentació de 5V 10A sense problemes de temperatura:-)

També tinc una versió USB tipus C per a tires LED més curtes.

Podeu demanar els PCB aquí i aquí

Podeu trobar més informació sobre els PCB aquí

Característiques:

  • Canvia de color
  • Canvia la brillantor
  • Canvieu la temperatura de color (no cal una tira RGBW)
  • Efectes de llum WS2812FX (beta !!!)
  • Configuració del recompte de LEDs WS2812B (al primer arrencada de l'1 al 500)
  • Característica de comportament de l'alimentació (color per defecte / Última utilització a l'inici mitjançant l'aplicació Eve)
  • Transició (ràpida / predeterminada / moderada / tranquil·la mitjançant l'aplicació Eve)
  • Bloqueig infantil (premeu el botó Activa / Desactiva mitjançant l'aplicació Eve)
  • Manual d'usuari descarregable (mitjançant l'aplicació Eve)
  • Botó d'engegada / restabliment

Subministraments

Per crear el PCB personalitzat, necessitareu un soldador barat o una estació de soldadura com aquesta o aquesta. També una pistola de soldar amb aire calent també seria útil. Per penjar el codi, probablement també haureu de comprar un adaptador USB TTL.

Parts necessàries:

  • NodeMCU o Wemos D1 Mini
  • IC convertidor de nivell lògic
  • Tira LED WS2812B
  • Connector femella JST de 3 pins
  • 5V 2-10A font d'alimentació v1 o 5V 2-10A font d'alimentació v2
  • Cables de pont

Peces PCB:

  • ESP12F / E
  • ESP-01S (flash de 1 MB)
  • Resistències SMD 0805
  • Condensadors SMD 0805
  • AMS1117-3.3
  • Botó tàctil
  • Capçalera de 2,54 mm
  • SN74HCT125N
  • Condensador SMD 10,5x10,5 1000uF
  • Connector de CC
  • Terminal de cargol de 3 pins
  • Portafusibles
  • Fusible

Pas 1: Instal·lació del firmware

Instal·lació del firmware
Instal·lació del firmware
Instal·lació del firmware
Instal·lació del firmware
Instal·lació del firmware
Instal·lació del firmware

Podeu descarregar el firmware des de la meva pàgina de GitHub

Windows

Per a Windows podeu utilitzar l'eina oficial de descàrrega de microprogramari d'Espressif

Configurar les adreces de flaix (0x2000), la mida del flaix (1 MB / 8 àmbits, 4 MB / 32 àmbits) i el mode de flaix (DIO / QIO) és un pas molt important, però aquests paràmetres poden canviar segons el mòdul que utilitzeu. També us recomano esborrar el flash abans de carregar els fitxers.bin.

Configuració:

  • Taxa en bauds 115200
  • Mida del flaix 4 MB o 32 àmbits (segons el mòdul)
  • Mode Flash QIO (o DIO, segons el vostre mòdul)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 ledstrip.bin
  • 40 MHz

MacOS

Per a MacOS podeu utilitzar aquesta eina intermitent

Configuració:

  • Esborra el flaix: sí
  • Taxa en bauds 115200
  • Mida del flaix 4 MB o 32 àmbits (segons el mòdul)
  • Mode Flash QIO (o DIO, segons el vostre mòdul)
  • Fitxer: ledstrip.bin
  • 40 MHz

Flash manualment

Hem d’instal·lar esptool.py al nostre Mac per poder fer flaix el nostre mòdul ESP. Per treballar amb esptool.py, necessitareu Python 2.7, Python 3.4 o una instal·lació de Python més recent al vostre sistema. Us recomanem que utilitzeu la versió més recent de Python; per tant, aneu al lloc web de Python i instal·leu-la al vostre ordinador.

Amb Python instal·lat, obriu una finestra de Terminal i instal·leu la versió més recent estable d’esptool.py amb pip:

pip instal·lar esptool

Nota: amb algunes instal·lacions de Python és possible que aquesta ordre no funcioni i rebreu un error. Si és així, intenteu instal·lar esptool.py amb:

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

Després d’instal·lar-lo, tindreu instal·lat esptool.py al directori d’executables per defecte de Python i hauríeu de poder executar-lo amb l’ordre esptool.py. A la finestra del terminal, executeu l'ordre següent:

esptool.py

Amb esptool.py instal·lat a l’ordinador, podeu fer flaixar fàcilment la vostra placa ESP8266 amb el firmware.

Al principi, heu de descarregar tres fitxers bin: rboot.bin i blank_config.bin i la versió més recent. El rboot.bin conté el carregador d’arrencada de l’ESP8266 i el blank_config.bin només en un fitxer de configuració en blanc i ledstrip.bin conté el firmware. Ara connecteu el dispositiu a l'adaptador FTDI en mode flash.

Enllaços de rèplica:

rboot.binblank_config.binledstrip.bin

Posar el dispositiu en mode Flash

Per habilitar el pin GPIO0 que parpelleja del microprogramari ESP8266, cal abaixar-lo mentre s'encén el dispositiu. Amb el meu PCB personalitzat hi ha un botó, nodeMCU també té un botó flash i el Wemos ho fa automàticament mitjançant USB. Per contra, per a un arrencada normal, GPIO0 ha de ser elevat o flotant. Comenceu en MODE FLASH

Aneu al directori que heu creat on heu col·locat els fitxers rboot.bin blank_config.bin descarregats anteriorment (per exemple, Descàrregues)

Obriu l'aplicació Terminal. Feu clic a la icona Finder al moll. Feu clic a Vés. Feu clic a Utilitats. Feu doble clic a Terminal. Canvieu al directori de descàrregues.

Necessitareu un adaptador USB TTL per connectar-vos a l’ESP8266. Si feu servir un Wemos D1 Mini només necessiteu un cable microUSB, el Wemos té incorporat un adaptador TTL.

descàrregues de CD

Nota: Si utilitzeu una altra biblioteca per emmagatzemar els tres fitxers.bin, aneu a aquesta biblioteca mitjançant l'ordre `cd`:

Utilitzeu esptool.py per fer flaixar el vostre dispositiu. Primer hem d’esborrar el flaix:

esptool.py -p / dev / erase_flash

Normalment, el vostre ESPPort serà com / dev / cu.usbserial-`xxxxxx`. A continuació, torneu a configurar el dispositiu en mode flash i feu flaix el nou firmware:

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

Pas 2: configuració de Wi-Fi i HomeKit

Configuració de Wi-Fi i HomeKit
Configuració de Wi-Fi i HomeKit
Configuració de Wi-Fi i HomeKit
Configuració de Wi-Fi i HomeKit

Configuració de Wi-Fi

Heu de configurar la xarxa wifi abans d’afegir l’accessori a HomeKit. Per configurar la configuració de Wi-Fi, el dispositiu genera la seva pròpia Wi-Fi en mode AP. Heu de connectar-hi per configurar la vostra xarxa Wi-Fi. Simplement agafeu el dispositiu iOS, aneu a Configuració -> Wi-Fi i cerqueu un SSID anomenat HomeKid, seguit de l'adreça MAC del mòdul i connecteu-hi. Per motius de seguretat, l’AP està protegit amb contrasenya. Contrasenya AP predeterminada: 12345678

Espereu uns segons fins que aparegui un lloc web que us mostri totes les xarxes Wi-Fi que el dispositiu ha trobat. Seleccioneu la vostra i introduïu la contrasenya. Després, podeu afegir el nombre exacte de LED a la vostra tira LED. Introduïu un número de l'1 al 500. A continuació, feu clic al botó Unir-se. El mòdul intentarà connectar la xarxa Wi-Fi seleccionada; això trigarà un parell de segons.

Nota: Si la contrasenya proporcionada és incorrecta, podeu restablir la configuració de la Wi-Fi mantenint premut el botó Restableix durant 10 segons

Configuració de HomeKit

Al dispositiu iOS, obriu l'aplicació Home i seguiu els passos normals per afegir un accessori nou. La configuració de l’emparellament triga uns 30 segons.

El codi predeterminat HomeKit és el 021-82-017

També podeu escanejar aquest codi QR HomeKit:

Nota: Si el parell falla, podeu desconnectar el dispositiu, tornar-lo a engegar i tornar a iniciar la configuració de HomeKit (la configuració de Wifi es manté configurada). Després de l’aparellament reeixit, la tira LED parpellejarà en blanc 3 vegades.

Problemes habituals:

  • De vegades, afegir diversos accessoris mitjançant codi QR falla, si HomeKit informa que "Accessory ja s'ha afegit", només cal afegir el codi de sincronització manualment en lloc d'escanejar el codi QR.
  • En cas que alguna cosa hagi fallat, podeu veure els fitxers de registre mitjançant el monitor sèrie d'Arduino i deixar lliure d'obrir un problema a GitHub

Pas 3: Configuració personalitzada

Configuració personalitzada
Configuració personalitzada
Configuració personalitzada
Configuració personalitzada

Malauradament, l'aplicació Home no admet característiques personalitzades / de tercers, de manera que necessitareu l'aplicació Elgato EVE per canviar aquesta configuració i utilitzar els efectes WS2812B. A més, l'accessori funciona com un accessori Fake Eve Light Strip quan l'afegiu mitjançant l'aplicació Eve?

Transicions i comportament de poder

La tira original Eve Light admet aquestes dues característiques. Amb Transitions podeu canviar la velocitat de la tira LED quan utilitzeu Efectes WS2812FX. Si el configureu a Ràpid, es desactivarà l’entrada / sortida de l’esvaïment i s’activarà ràpidament.

Amb Power Behavior, podeu canviar el color per defecte quan s’encén la tira LED. Per defecte, s'estableix en Darrer color utilitzat, de manera que quan apagueu la tira LED sempre recordarà l'últim color que heu utilitzat. Quan es defineix com a blanc predeterminat, cada vegada que apagueu la tira LED, el color tornarà a ser blanc.

Restableix

El codi té una funció Restableix en cas que alguna cosa falli. Espereu uns 5 segons perquè el dispositiu s'engegui completament i, a continuació, premeu el botó durant 10 segons com a mínim.

S'han eliminat tots els paràmetres configurats i el dispositiu es reinicia. Això elimina la configuració de HomeKit i de Wi-Fi, i el dispositiu passarà al mode de punt d'accés la propera vegada per tornar a configurar Wi-Fi.

Nota: si premeu el mateix botó, es commutarà o desactivarà la tira LED

Recomanat: