Sommario:
- Forniture
- Passaggio 1: installazione del firmware
- Passaggio 2: configurazione Wi-Fi e HomeKit
- Passaggio 3: impostazioni personalizzate
Video: Controller LED Apple HomeKit WS2812B: 3 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Esistono molti progetti basati sulle strisce LED WS2812B, ma la maggior parte di questi utilizza homebridge o qualsiasi altra soluzione, principalmente basata su MQTT, per comunicare con HomeKit.
Alcuni progetti utilizzano anche effetti tramite Apple HomeKit, ma nessuno di questi supporta HomeKit autonomo senza bisogno di alcun bridge Sto usando i LED WS2812B da quasi 3-4 anni con HomeKit e funzionano molto bene
Poiché il codice è molto complesso e ho utilizzato molte librerie personalizzate, ho creato file firmware precompilati. Per coloro che sono interessati a realizzare progetti HomeKit nativi, il codice sorgente per esp-homekit è disponibile qui.
Informazioni di base:
- Attualmente sono supportate solo le strisce LED WS2812B, WS2812B ECO e WS2813!
- Il numero massimo di LED è limitato a 500 per il risparmio di RAM
- Richiesto convertitore di livello logico (per la conversione dei dati da 3,3 V a 5 V)
- È necessario anche un alimentatore da 5 V di buona qualità
- Maggiori informazioni possono essere trovate sul mio GitHub
- Anche Adafruit Überguide può aiutare:-)
Progettazione PCB:
Ho progettato un semplice PCB per pilotare i LED NeoPixel nel modo corretto descritto nella NeoPixel Überguide di Adafruit utilizzando l'ultimo SN74HCT125N Logic Level Converter IC e anche il condensatore 1000uF consigliato:-) Attualmente sto utilizzando questo PCB con un alimentatore 5V 10A senza problemi (di temperatura):-)
Inoltre ho anche una versione USB Type-C per strisce LED più corte!
Puoi ordinare i PCB da qui e qui
Puoi trovare maggiori informazioni sui PCB qui
Caratteristiche:
- Cambia colore
- Cambia luminosità
- Cambia la temperatura del colore (nessuna striscia RGBW richiesta)
- Effetti di luce WS2812FX (beta!!!)
- Impostazione conteggio LED WS2812B (al primo avvio da 1 a 500)
- Caratteristica comportamento alimentazione (colore predefinito/Ultimo utilizzo all'avvio tramite l'app Eve)
- Transizione (rapida/predefinita/moderata/calma tramite app Eve)
- Blocco bambini (pulsante di attivazione/disattivazione tramite l'app Eve)
- Manuale utente scaricabile (tramite app Eve)
- Pulsante di accensione/ripristino
Forniture
Per creare il PCB personalizzato avrai bisogno di un saldatore economico o di una stazione di saldatura come questa o questa. Anche una pistola per saldatura ad aria calda sarebbe utile! Per caricare il codice probabilmente devi acquistare anche un adattatore USB TTL.
Parti necessarie:
- NodeMCU o Wemos D1 Mini
- Convertitore di livello logico IC
- Striscia LED WS2812B
- Connettore femmina JST a 3 pin
- Alimentazione 5V 2-10A v1 o Alimentazione 5V 2-10A v2
- Cavi jumper
Parti del PWB:
- ESP12F/MI
- ESP-01S (1 MB flash)
- Resistori SMD 0805
- Condensatori SMD 0805
- AMS1117-3.3
- Pulsante tattile
- Testata da 2,54 mm
- SN74HCT125N
- Condensatore SMD 10,5x10,5 1000uF
- Connettore CC
- Terminale a vite a 3 pin
- Portafusibili
- Fusibile
Passaggio 1: installazione del firmware
Puoi scaricare il firmware dalla mia pagina GitHub
finestre
Per Windows puoi utilizzare lo strumento di download del firmware ufficiale di Espressif
L'impostazione degli indirizzi flash (0x2000), delle dimensioni del flash (1 MB/8mbit, 4 MB/32 MBit) e della modalità flash (DIO/QIO) è un passaggio molto importante, ma queste impostazioni potrebbero cambiare in base al modulo che stai utilizzando! Inoltre ho consigliato di cancellare il flash prima di caricare i file.bin!
Impostazioni:
- Velocità di trasmissione 115200
- Dimensione flash 4MB o 32mbit (a seconda del modulo)
- Modalità Flash QIO (o DIO, a seconda del modulo)
- 0x0000 rboot.bin
- 0x1000 blank_config.bin
- 0x2000 ledstrip.bin
- 40MHz
Mac OS
Per MacOS puoi usare questo strumento flasher
Impostazioni:
- Cancella flash - sì
- Velocità di trasmissione 115200
- Dimensione flash 4MB o 32mbit (a seconda del modulo)
- Modalità Flash QIO (o DIO, a seconda del modulo)
- File: ledstrip.bin
- 40MHz
Flash manuale
Dobbiamo installare esptool.py sul nostro Mac per poter eseguire il flashing del nostro modulo ESP. Per lavorare con esptool.py, avrai bisogno di Python 2.7, Python 3.4 o una nuova installazione di Python sul tuo sistema. Ti consigliamo di utilizzare l'ultima versione di Python, quindi vai sul sito Web di Python e installalo sul tuo computer.
Con Python installato, apri una finestra Terminale e installa l'ultima versione stabile di esptool.py con pip:
pip install esptool
Nota: con alcune installazioni Python quel comando potrebbe non funzionare e riceverai un errore. In tal caso, prova a installare esptool.py con:
pip3 install esptool python -m pip install esptool pip2 install esptool
Dopo l'installazione, esptool.py sarà installato nella directory degli eseguibili Python predefinita e dovresti essere in grado di eseguirlo con il comando esptool.py. Nella finestra di Terminale, esegui il seguente comando:
esptool.py
Con esptool.py installato sul tuo computer, puoi facilmente eseguire il flashing della tua scheda ESP8266 con il firmware.
All'inizio devi scaricare tre file bin: rboot.bin e blank_config.bin e l'ultima versione. rboot.bin contiene il bootloader per ESP8266 e blank_config.bin in un file di configurazione vuoto e ledstrip.bin contiene il firmware. Ora collega il tuo dispositivo all'adattatore FTDI in modalità flash.
Link specchio:
rboot.binblank_config.binledstrip.bin
Mettere il dispositivo in modalità Flash
Per abilitare il firmware ESP8266, il pin GPIO0 lampeggiante deve essere abbassato durante l'alimentazione del dispositivo. Con il mio PCB personalizzato c'è un pulsante, nodeMCU ha anche un pulsante flash e Wemos lo fa automaticamente tramite USB. Al contrario, per un normale avvio, GPIO0 deve essere tirato in alto o flottante. Avvia in MODALITÀ FLASH
Vai alla directory che hai creato in cui hai inserito i file rboot.bin blank_config.bin scaricati in precedenza (ad esempio Download)
Apri l'app Terminale. Fai clic sull'icona del Finder nel dock. Fare clic su Vai. Fare clic su Utilità. Fare doppio clic su Terminale. Passa alla directory dei download.
Avrai bisogno di un adattatore USB TTL per il collegamento a ESP8266. Se si utilizza un Wemos D1 Mini è necessario solo un cavo microUSB, il Wemos ha un adattatore TTL integrato.
download di cd
Nota: se stai utilizzando un'altra libreria per memorizzare i tre file.bin, naviga in quella libreria usando il comando "cd":
Usa esptool.py per eseguire il flashing del tuo dispositivo. Per prima cosa dobbiamo cancellare il flash:
esptool.py -p /dev/ erase_flash
Normalmente, la tua ESPPort sarà qualcosa come /dev/cu.usbserial-`xxxxxx`. Quindi, imposta nuovamente il dispositivo in modalità flash e aggiorna il nuovo 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
Passaggio 2: configurazione Wi-Fi e HomeKit
Configurazione Wi-Fi
È necessario configurare la rete wifi prima di aggiungere l'accessorio a HomeKit. Per configurare le impostazioni Wi-Fi, il dispositivo genera il proprio Wi-Fi in modalità AP. Devi connetterti ad esso per configurare la tua rete Wi-Fi. Prendi semplicemente il tuo dispositivo iOS, vai su Impostazioni -> Wi-Fi e cerca un SSID chiamato HomeKid- seguito dall'indirizzo MAC del modulo e connettiti ad esso. Per motivi di sicurezza l'AP è protetto da password!Password AP predefinita: 12345678
Attendi qualche secondo finché non viene visualizzato un Web che mostra tutte le reti Wi-Fi che il dispositivo ha trovato. Seleziona la tua e inserisci la password! Dopodiché puoi aggiungere il numero esatto di LED nella tua striscia LED! Inserisci un numero da 1 a 500! Quindi fare clic sul pulsante Partecipa! Il modulo proverà a connettersi alla rete Wi-Fi selezionata, ci vorranno un paio di secondi.
Nota: se la password fornita è errata, puoi ripristinare le impostazioni Wi-fi tenendo premuto il pulsante Ripristina per 10 secondi
Configurazione HomeKit
Sul tuo dispositivo iOS, apri l'app Home e segui i normali passaggi per aggiungere un nuovo accessorio. La configurazione dell'associazione richiede circa 30 secondi.
Il codice HomeKit predefinito è 021-82-017
Inoltre puoi scansionare questo codice QR HomeKit:
Nota: se l'associazione non riesce, puoi scollegare il dispositivo, riaccenderlo e riavviare la configurazione di HomeKit (le impostazioni Wi-Fi restano configurate). Dopo aver accoppiato con successo, la striscia LED lampeggerà 3 volte in bianco!
Problemi comuni:
- A volte l'aggiunta di più accessori tramite il codice QR non riesce, se HomeKit segnala "Accessorio già aggiunto" è sufficiente aggiungere manualmente il codice di accoppiamento invece di scansionare il codice QR!
- Nel caso in cui qualcosa sia andato storto, puoi vedere i file di registro usando il monitor seriale di Arduino e sei libero di aprire un problema su GitHub
Passaggio 3: impostazioni personalizzate
Purtroppo l'app Home non supporta le caratteristiche personalizzate di terze parti, quindi avrai bisogno dell'app Elgato EVE per modificare queste impostazioni e utilizzare gli effetti WS2812B. Inoltre, l'accessorio si comporta come un accessorio Fake Eve Light Strip quando lo aggiungi tramite l'app Eve?
Transizioni e comportamento di potere
La striscia originale Eve Light supporta queste due caratteristiche. Con Transitions puoi cambiare la velocità della striscia LED quando usi gli effetti WS2812FX! Impostandolo su Quick disabiliterà la dissolvenza in entrata/uscita e si accenderà rapidamente!
Con Power Behavior puoi cambiare il colore predefinito quando la striscia LED si accende! Di default è impostato su Last Used Color, quindi quando spegni la striscia LED si ricorderà sempre l'ultimo colore che hai usato! Quando è impostato su Bianco predefinito, ogni volta che si spegne la striscia LED, il colore tornerà al bianco!
Ripristina
Il codice ha una funzione di reset nel caso qualcosa vada storto. Attendi circa 5 secondi per consentire l'avvio completo del dispositivo, quindi premi a lungo il pulsante per almeno 10 secondi!
Tutte le impostazioni configurate sono state rimosse e il dispositivo si sta riavviando. Questo rimuove le impostazioni di HomeKit e Wi-Fi e il tuo dispositivo andrà in modalità Access Point la prossima volta per riconfigurare il Wi-Fi.
Nota: premendo una volta lo stesso pulsante si accende o si spegne la striscia LED
Consigliato:
Deumidificatore Wi-Fi Apple HomeKit basato su ESP8266 ?: 6 passaggi (con immagini)
Deumidificatore Wi-Fi Apple HomeKit Basato su ESP8266 ?: Sfortunatamente ci sono solo uno o due Deumidificatori là fuori che supportano Apple HomeKit, ma questi hanno un prezzo davvero alto (300$+). Quindi ho deciso di creare il mio deumidificatore Apple HomeKit con funzionalità Wi-Fi basato su uno economico che ho già? IO
Costruisci un dispositivo con sensore di temperatura Apple HomeKit (DHT22) utilizzando un RaspberryPI e un DHT22: 11 passaggi
Costruisci un dispositivo con sensore di temperatura (DHT22) Apple HomeKit utilizzando un RaspberryPI e un DHT22: stavo cercando un sensore di temperatura / umidità a basso costo che potessi usare per monitorare ciò che sta accadendo nel mio vespaio, poiché ho scoperto che questa primavera era molto umido , e aveva molta umidità. Quindi stavo cercando un sensore a prezzi ragionevoli che potessi p
Tutorial per interfacciare Led RGB WS2812B con Arduino UNO: 7 passaggi (con immagini)
Tutorial per interfacciare Led RGB WS2812B con Arduino UNO: Questo tutorial ti insegnerà alcune nozioni di base sull'utilizzo di Sparkfun RGB Led WS2812B con Arduino UNO
PhotonLamp - una lampada di design attrezzata WS2812b con controllo MQTT: 5 passaggi (con immagini)
PhotonLamp - una lampada di design attrezzata WS2812b con controllo MQTT: diversi anni fa abbiamo acquistato una lampada di design che aveva un paralume a forma di sigaro ed era fatta di vetro di latte. Ci è piaciuto il particolare design del paralume e l'aspetto generale della lampada. Ma non sono stato molto soddisfatto della luce
Illuminazione ambientale per PC fai-da-te con Arduino e LED WS2812b: 6 passaggi (con immagini)
Illuminazione ambientale per PC fai-da-te con LED Arduino e WS2812b: volevo un po' più di profondità per la mia esperienza di visione di giochi/film, quindi ecco come ho installato la mia illuminazione ambientale. Prima di iniziare, questo progetto richiede che tu sappia come usare un saldatore e alcuni altri elementi di base utensili. Se non ti senti a tuo agio a saldare