Cuprins:
- Provizii
- Pasul 1: Instalarea firmware-ului
- Pasul 2: Configurare Wi-Fi și HomeKit
- Pasul 3: Setări personalizate
Video: Controler LED Apple HomeKit WS2812B: 3 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Există o mulțime de proiecte bazate pe benzi LED WS2812B, dar cele mai multe dintre acestea utilizează homebridge sau orice altă soluție - în principal bazată pe MQTT - pentru a comunica cu HomeKit.
Unele proiecte folosesc și efecte prin Apple HomeKit, dar niciunul dintre ele nu acceptă HomeKit independent fără a avea nevoie de niciun pod. Folosesc LED-uri WS2812B de aproape 3-4 ani acum cu HomeKit și funcționează foarte bine
Deoarece codul este foarte complex și am folosit o mulțime de biblioteci personalizate, am făcut fișiere firmware precompilate. Pentru cei care sunt interesați să facă proiecte native HomeKit, codul sursă pentru esp-homekit este disponibil aici.
Informații de bază:
- În prezent sunt acceptate doar benzile LED WS2812B, WS2812B ECO și WS2813!
- Numărul maxim de LED-uri este limitat la 500 pentru economisirea memoriei RAM
- Este necesar un convertor de nivel logic (pentru conversia datelor de 3,3V la 5V)
- Este necesară și o sursă de alimentare de 5V de bună calitate
- Mai multe informații pot fi găsite pe GitHub
- Adafruit Überguide poate ajuta, de asemenea:-)
Design PCB:
Am proiectat un PCB simplu pentru conducerea LED-urilor NeoPixel în modul corect descris în NeoPixel Überguide de la Adafruit utilizând cel mai recent SN74HCT125N Logic Level Converter IC și condensatorul recomandat de 1000uF:-) În prezent folosesc acest PCB cu o sursă de alimentare de 5V 10A fără probleme de temperatură:-)
De asemenea, am și o versiune USB Type-C pentru benzi LED mai scurte!
Puteți comanda PCB-urile de aici și de aici
Puteți găsi mai multe informații despre PCB-uri aici
Caracteristici:
- Schimba culoarea
- Schimbați luminozitatea
- Modificați temperatura culorii (nu este necesară o bandă RGBW)
- Efecte de lumină WS2812FX (beta !!!)
- Configurarea numărului de LED-uri WS2812B (la prima încărcare de la 1 la 500)
- Caracteristica Comportamentului de putere (Culoare implicită / Ultima utilizare la pornire prin aplicația Eve)
- Tranziție (rapid / implicit / moderat / calm prin aplicația Eve)
- Blocare pentru copii (activare / dezactivare apăsare buton prin aplicația Eve)
- Manual de utilizare descărcabil (prin aplicația Eve)
- Buton de pornire / resetare
Provizii
Pentru crearea PCB-ului personalizat, veți avea nevoie de un fier de lipit ieftin sau de o stație de lipit ca acesta sau acesta. De asemenea, un pistol de lipit cu aer cald ar fi de asemenea de ajutor! Pentru a încărca codul, probabil că trebuie să cumpărați și un adaptor USB TTL.
Piese necesare:
- NodeMCU sau Wemos D1 Mini
- IC convertor de nivel logic
- Benzi LED WS2812B
- Conector mamă 3 pini JST
- 5V 2-10A sursă de alimentare v1 sau 5V 2-10A sursă de alimentare v2
- Cabluri jumper
Piese PCB:
- ESP12F / E
- ESP-01S (1MB bliț)
- Rezistoare SMD 0805
- Condensatoare SMD 0805
- AMS1117-3.3
- Buton tactil
- Antet de 2,54 mm
- SN74HCT125N
- Condensator SMD 10,5x10,5 1000uF
- Conector DC
- Terminal cu șurub cu 3 pini
- Suport siguranțe
- Siguranță
Pasul 1: Instalarea firmware-ului
Puteți descărca firmware-ul de pe pagina mea GitHub
Windows
Pentru Windows puteți utiliza instrumentul oficial de descărcare a firmware-ului de către Espressif
Setarea adreselor blițului (0x2000), a dimensiunii blițului (1MB / 8mbit, 4MB / 32mbit) și a modului bliț (DIO / QIO) este un pas foarte important, dar aceste setări se pot modifica în funcție de modulul pe care îl utilizați! De asemenea, vă recomand să ștergeți blițul înainte de a încărca fișierele.bin!
Setări:
- Rată de transmisie 115200
- Dimensiune bliț 4MB sau 32mbit (în funcție de modul dvs.)
- Mod Flash QIO (sau DIO, în funcție de modul dvs.)
- 0x0000 rboot.bin
- 0x1000 blank_config.bin
- 0x2000 ledstrip.bin
- 40MHz
MacOS
Pentru MacOS puteți utiliza acest instrument de intermitent
Setări:
- Ștergeți blițul - da
- Rată de transmisie 115200
- Dimensiune bliț 4MB sau 32mbit (în funcție de modul dvs.)
- Mod Flash QIO (sau DIO, în funcție de modul dvs.)
- Fișier: ledstrip.bin
- 40MHz
Flash manual
Trebuie să instalăm esptool.py pe Mac-ul nostru pentru a putea să intermitem modulul ESP. Pentru a lucra cu esptool.py, veți avea nevoie fie de Python 2.7, Python 3.4, fie de o nouă instalare Python pe sistemul dvs. Vă recomandăm să utilizați cea mai recentă versiune Python, deci accesați site-ul web Python și instalați-l în computer.
Cu Python instalat, deschideți o fereastră Terminal și instalați cea mai recentă versiune stabilă de esptool.py cu pip:
pip instala esptool
Notă: cu unele instalații Python, este posibil ca comanda să nu funcționeze și veți primi o eroare. Dacă acesta este cazul, încercați să instalați esptool.py cu:
pip3 install esptool python -m pip install esptool pip2 install esptool
După instalare, veți avea instalat esptool.py în directorul executabil Python implicit și ar trebui să îl puteți rula cu comanda esptool.py. În fereastra Terminalului, executați următoarea comandă:
esptool.py
Cu esptool.py instalat pe computer, puteți bloca cu ușurință placa ESP8266 cu firmware-ul.
La început trebuie să descărcați trei fișiere bin: rboot.bin și blank_config.bin și cea mai recentă versiune. Rboot.bin conține bootloader-ul pentru ESP8266 și blank_config.bin într-un fișier de configurare gol, iar ledstrip.bin conține firmware-ul. Acum conectați dispozitivul la adaptorul FTDI în modul flash.
Legături în oglindă:
rboot.binblank_config.binledstrip.bin
Punerea dispozitivului în modul bliț
Pentru a activa firmware-ul ESP8266 intermitent, pinul GPIO0 trebuie scăzut în timp ce alimentați dispozitivul. Cu PCB-ul meu personalizat există un buton, nodeMCU are și un buton flash, iar Wemos o face automat folosind USB. În schimb, pentru o încărcare normală, GPIO0 trebuie să fie ridicat sau plutitor. Începeți în MOD FLASH
Mergeți la directorul pe care l-ați creat unde ați pus fișierele descărcate anterior rboot.bin blank_config.bin (de exemplu, Descărcări)
Deschideți aplicația Terminal. Faceți clic pe pictograma Finder din doc. Faceți clic pe Go. Faceți clic pe Utilitare. Faceți dublu clic pe Terminal. Treceți la directorul de descărcări.
Veți avea nevoie de un adaptor USB TTL pentru conectarea la ESP8266. Dacă utilizați un Wemos D1 Mini necesar este doar un cablu microUSB, Wemos are adaptor TTL încorporat.
descărcări de CD-uri
Notă: Dacă utilizați o altă bibliotecă pentru stocarea celor trei fișiere.bin, navigați în acea bibliotecă folosind comanda `cd`:
Utilizați esptool.py pentru a vă bloca dispozitivul. Mai întâi trebuie să ștergem blițul:
esptool.py -p / dev / erase_flash
În mod normal, ESPPortul dvs. va fi ceva de genul / dev / cu.usbserial-`xxxxxx`. Apoi, setați din nou dispozitivul în modul flash și blocați noul 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
Pasul 2: Configurare Wi-Fi și HomeKit
Configurare Wi-Fi
Trebuie să configurați rețeaua wifi înainte de a adăuga accesoriul la HomeKit. Pentru a configura setările Wi-Fi, dispozitivul își generează propriul Wi-Fi în modul AP. Trebuie să vă conectați la acesta pentru a vă configura rețeaua Wi-Fi. Pur și simplu luați dispozitivul iOS, accesați Setări -> Wi-Fi și căutați un SSID numit HomeKid - urmat de adresa MAC a modulului și conectați-vă la acesta. Din motive de securitate, AP este protejat prin parolă! Parolă AP implicită: 12345678
Așteptați câteva secunde până când apare un web care vă arată toate rețelele Wi-Fi găsite de dispozitiv. Selectați-o și introduceți parola! După aceea, puteți adăuga numărul exact de LED-uri în banda LED! Introduceți un număr de la 1 la 500! Apoi faceți clic pe butonul Alăturați-vă! Modulul va încerca să conecteze rețeaua Wi-Fi selectată, aceasta va dura câteva secunde.
Notă: Dacă parola dată este greșită, puteți reseta setările Wi-Fi ținând apăsat butonul Resetare timp de 10 sec
Configurare HomeKit
Pe dispozitivul dvs. iOS, deschideți aplicația Home și urmați pașii normali pentru a adăuga un accesoriu nou. Configurarea împerecherii durează aproximativ 30 de secunde.
Codul implicit HomeKit este 021-82-017
De asemenea, puteți scana acest cod QR HomeKit:
Notă: Dacă împerecherea eșuează, puteți dezactiva dispozitivul, reporniți-l și porni din nou configurarea HomeKit (setările Wifi se păstrează configurate). După asocierea cu succes, banda LED va clipi alb de 3 ori!
Probleme comune:
- Uneori, adăugarea mai multor accesorii folosind codul QR eșuează, dacă HomeKit raportează „Accesoriile deja adăugate”, pur și simplu adăugați manual codul de împerechere în loc să scanați codul QR!
- În cazul în care ceva nu a funcționat corect, puteți vedea fișierele jurnal folosind monitorul serial al Arduino și ați fost liber să deschideți o problemă pe GitHub
Pasul 3: Setări personalizate
Din păcate, aplicația Home nu acceptă caracteristicile personalizate / terțe părți, așa că veți avea nevoie de aplicația Elgato EVE pentru a modifica aceste setări și pentru a utiliza efectele WS2812B. De asemenea, accesoriul acționează ca un accesoriu Fake Eve Light Strip atunci când îl adăugați prin intermediul aplicației Eve?
Tranziții și comportament de putere
Banda originală Eve Light acceptă aceste două caracteristici. Cu Transitions puteți schimba viteza benzii LED atunci când utilizați efecte WS2812FX! Dacă îl setați la Quick, se va dezactiva fading in / out și va porni rapid!
Cu Power Behavior puteți schimba culoarea implicită atunci când banda LED se aprinde! În mod implicit, este setat la Ultima culoare folosită, astfel încât atunci când opriți banda LED, va aminti întotdeauna ultima culoare pe care ați folosit-o! Când este setat la Alb implicit, de fiecare dată când opriți banda LED, culoarea va reveni la Alb!
Resetați
Codul are o funcție Reset în cazul în care ceva nu merge bine. Așteptați aproximativ 5 secunde pentru a permite dispozitivului să pornească complet, apoi apăsați lung butonul timp de cel puțin 10 secunde!
Toate setările configurate au fost eliminate și dispozitivul repornește. Aceasta elimină setările HomeKit și Wi-Fi, iar dispozitivul dvs. va trece la modul Punct de acces data viitoare pentru a reconfigura Wi-Fi.
Notă: o singură apăsare a aceluiași buton va comuta sau dezactiva banda LED
Recomandat:
Controler cu bandă LED: 8 pași (cu imagini)
Controler cu bandă LED: În acest instructabil, vă voi parcurge pașii de utilizare și gestionare a benzilor LED prin construirea unei interfețe de control. M-am distrat mult cu aceste lumini, deoarece sunt sigur că și voi o veți face. Dacă vă place acest lucru instructiv, vă rugăm să fiți siguri
Dezumidificator Wi-Fi Apple HomeKit Bazat pe ESP8266?: 6 pași (cu imagini)
Dezumidificator Wi-Fi Apple HomeKit Bazat pe ESP8266?: Din păcate, există doar unul sau două DeHumidificatoare care acceptă Apple HomeKit, dar acestea au prețuri foarte mari (300 $ +). Deci, am decis să-mi fac propriul dezumidificator Apple HomeKit capabil de Wi-Fi, pe baza unuia ieftin pe care îl am deja? Eu
Controler de joc DIY bazat pe Arduino - Controler de joc Arduino PS2 - Jucând Tekken cu DIY Arduino Gamepad: 7 pași
Controler de joc DIY bazat pe Arduino | Controler de joc Arduino PS2 | Jucând Tekken cu DIY Arduino Gamepad: Bună, băieți, jocul este întotdeauna distractiv, dar jocul cu propriul controler personalizat DIY este mai distractiv
Apple TV - Controler TV: 5 pași
Apple TV - Controler TV: Cu acest proiect, puteți porni automat televizorul cu Apple TV. Așezați carcasa sub receptorul infraroșu al televizorului și ați terminat
YABC - încă un controler Blynk - controler de temperatură și umiditate în cloud IoT, ESP8266: 4 pași
YABC - încă un alt controler Blynk - controler de temperatură și umiditate în cloud IoT, ESP8266: Bună ziua, producători, am început recent să cultiv ciuperci acasă, ciuperci de stridii, dar am deja 3x din aceste controlere acasă pentru controlul temperaturii fermentatorului pentru berea mea de acasă, soție face, de asemenea, acest lucru Kombucha acum și ca termostat pentru căldură