Kazalo:
- Zaloge
- 1. korak: Namestitev vdelane programske opreme
- Korak: Nastavitev Wi-Fi in HomeKit
- 3. korak: Nastavitve po meri
Video: Apple HomeKit WS2812B LED krmilnik: 3 koraki (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Obstaja veliko projektov, ki temeljijo na LED trakovih WS2812B, vendar večina uporablja domači most ali katero koli drugo rešitev - večinoma na osnovi MQTT - za komunikacijo z HomeKitom.
Nekateri projekti uporabljajo učinke tudi prek Apple HomeKit, vendar nobeden od njih ne podpira samostojnega HomeKita, ne da bi potreboval kakršen koli most. Sedaj uporabljam LED WS2812B že skoraj 3-4 leta z HomeKitom in delujejo zelo dobro
Ker je koda zelo zapletena in sem uporabil veliko knjižnic po meri, sem naredil vnaprej sestavljene datoteke vdelane programske opreme. Za tiste, ki jih zanima ustvarjanje domačih projektov HomeKit, je tukaj na voljo izvorna koda za esp-homekit.
Osnovne informacije:
- Trenutno so podprti samo LED trakovi WS2812B, WS2812B ECO in WS2813!
- Največje število LED diod je omejeno na 500 za prihranek RAM -a
- Potreben je pretvornik logične ravni (za pretvorbo podatkov 3.3V v 5V)
- Potreben je tudi kakovosten 5V napajalnik
- Več informacij najdete na mojem GitHubu
- Pomaga lahko tudi Adafruit Überguide:-)
Zasnova tiskanega vezja:
Zasnoval sem preprosto tiskano vezje za napajanje LED diod NeoPixel na ustrezen način, opisan v Adafruit-ovem vodniku NeoPixel Überguide z uporabo najnovejšega pretvornika logičnega nivoja pretvornika SN74HCT125N in priporočenega kondenzatorja 1000uF:-) Trenutno uporabljam to tiskano vezje z napajanjem 5V 10A brez kakršnih koli (temperaturnih) težav:-)
Imam tudi različico USB Type-C za krajše LED trakove!
PCB -je lahko naročite tukaj in tukaj
Več informacij o tiskanih vezjih najdete tukaj
Lastnosti:
- Spremeni barvo
- Spremenite svetlost
- Spremeni barvno temperaturo (trak RGBW ni potreben)
- Svetlobni učinki WS2812FX (beta !!!)
- Nastavitev števila LED WS2812B (pri prvem zagonu od 1 do 500)
- Značilnost vedenja energije (privzeta barva / nazadnje uporabljena ob zagonu prek aplikacije Eve)
- Prehod (hitro / privzeto / zmerno / umirjeno prek aplikacije Eve)
- Otroška ključavnica (Omogoči/onemogoči pritisk na gumb prek aplikacije Eve)
- Naložljiv uporabniški priročnik (prek aplikacije Eve)
- Gumb za vklop / ponastavitev
Zaloge
Za izdelavo tiskanega vezja po meri boste potrebovali poceni spajkalnik ali spajkalno postajo, kot je ta ali ta. Tudi vroča zračna spajkalna pištola bi bila v pomoč! Za nalaganje kode boste verjetno morali kupiti tudi USB TTL adapter.
Potrebni deli:
- NodeMCU ali Wemos D1 Mini
- Pretvornik logične ravni IC
- WS2812B LED trak
- 3 -polni ženski konektor JST
- Napajanje 5V 2-10A v1 ali 5V 2-10A napajanje v2
- Mostični kabli
Deli PCB:
- ESP12F/E
- ESP-01S (1 MB bliskavica)
- Upori SMD 0805
- SMD 0805 kondenzatorji
- AMS1117-3.3
- Taktilni gumb
- Glava 2,54 mm
- SN74HCT125N
- SMD 10,5x10,5 1000uF kondenzator
- DC priključek
- 3 -polni vijačni priključek
- Nosilec varovalk
- Varovalka
1. korak: Namestitev vdelane programske opreme
Vdelano programsko opremo lahko prenesete z moje strani GitHub
Windows
Za Windows lahko uporabite uradno orodje za prenos vdelane programske opreme podjetja Espressif
Nastavitev naslovov bliskavice (0x2000), velikosti bliskavice (1MB/8mbit, 4MB/32mbit) in načina bliskavice (DIO/QIO) je zelo pomemben korak, vendar se lahko te nastavitve spremenijo glede na modul, ki ga uporabljate! Priporočam tudi, da pred brisanjem datotek.bin izbrišete bliskavico!
Nastavitve:
- Hitrost prenosa 115200
- Velikost bliskavice 4MB ali 32mbit (odvisno od vašega modula)
- Način bliskavice QIO (ali DIO, odvisno od vašega modula)
- 0x0000 rboot.bin
- 0x1000 blank_config.bin
- 0x2000 ledstrip.bin
- 40 MHz
MacOS
Za MacOS lahko uporabite to orodje za utripanje
Nastavitve:
- Izbriši bliskavico - da
- Hitrost prenosa 115200
- Velikost bliskavice 4MB ali 32mbit (odvisno od vašega modula)
- Način bliskavice QIO (ali DIO, odvisno od vašega modula)
- Datoteka: ledstrip.bin
- 40 MHz
Ročno Flash
Na naš Mac moramo namestiti esptool.py, da lahko utripamo naš ESP modul. Za delo z esptool.py potrebujete bodisi Python 2.7, Python 3.4 ali novejšo namestitev Pythona v sistemu. Priporočamo uporabo najnovejše različice Pythona, zato pojdite na spletno mesto Python in ga namestite v računalnik.
Ko je nameščen Python, odprite okno terminala in namestite najnovejšo stabilno izdajo esptool.py s pipom:
pip install esptool
Opomba: pri nekaterih namestitvah Python ta ukaz morda ne bo deloval in prejeli boste napako. V tem primeru poskusite namestiti esptool.py z:
pip3 namestite esptool python -m pip namestite esptool pip2 namestite esptool
Po namestitvi boste imeli esptool.py nameščen v privzeti imenik izvedljivih datotek Python in ga lahko zaženete z ukazom esptool.py. V oknu terminala zaženite naslednji ukaz:
esptool.py
Z esptool.py, nameščenim v računalniku, lahko preprosto vstavite ploščo ESP8266 z vdelano programsko opremo.
Najprej morate prenesti tri datoteke bin: rboot.bin in blank_config.bin ter najnovejšo izdajo. Rboot.bin vsebuje zagonski nalagalnik za ESP8266 in blank_config.bin v samo prazni konfiguracijski datoteki, ledstrip.bin pa vdelano programsko opremo. Zdaj povežite svojo napravo z adapterjem FTDI v načinu bliskavice.
Zrcalne povezave:
rboot.binblank_config.binledstrip.bin
Preklop naprave v način bliskavice
Če želite omogočiti vdelano programsko opremo ESP8266, morate utripati pin GPIO0 med napajanjem naprave. Z mojim tiskanim vezjem po meri je gumb, ima tudi nodeMCU gumb za bliskavico, Wemos pa to naredi samodejno prek USB -ja. Nasprotno pa mora biti za običajen zagon GPIO0 visoko ali plavajoče. Zaženite v načinu FLASH
Pojdite v imenik, v katerega ste vnesli prej prenesene datoteke rboot.bin blank_config.bin (npr. Prenosi)
Odprite aplikacijo Terminal. Kliknite ikono Finderja v priklopni enoti. Kliknite Pojdi. Kliknite Pripomočki. Dvokliknite Terminal. Preklopite v imenik prenosov.
Za povezavo z ESP8266 potrebujete adapter USB TTL. Če uporabljate Wemos D1 Mini, potrebujete le kabel microUSB, ima Wemos vgrajen adapter TTL.
cd prenosi
Opomba: Če za shranjevanje treh datotek.bin uporabljate drugo knjižnico, se pomaknite do te knjižnice z ukazom `cd`:
Za utripanje naprave uporabite esptool.py. Najprej moramo izbrisati bliskavico:
esptool.py -p / dev / erase_flash
Običajno bo vaš ESPPort podoben /dev /cu.usbserial-`xxxxxx . Nato znova nastavite napravo v bliskovnem načinu in zaženite novo vdelano programsko opremo:
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
Korak: Nastavitev Wi-Fi in HomeKit
Nastavitev Wi-Fi
Preden dodate pripomoček v HomeKit, morate konfigurirati omrežje wifi. Če želite konfigurirati nastavitve Wi-Fi, naprava ustvari lastno Wi-Fi v načinu dostopa. Če želite nastaviti omrežje Wi-Fi, se morate povezati z njim. Preprosto vzemite svojo napravo iOS, pojdite na Nastavitve-> Wi-Fi in poiščite SSID, imenovan HomeKid, ki mu sledi naslov MAC modula in se povežite z njim. Iz varnostnih razlogov je dostopna točka zaščitena z geslom! Privzeto geslo za dostopno točko: 12345678
Počakajte nekaj sekund, da se prikaže splet, ki prikazuje vsa omrežja Wi-Fi, ki jih je naprava našla. Izberite svojega in vnesite geslo! Po tem lahko dodate natančno število LED v svoj LED trak! Vnesite številko od 1 do 500! Nato kliknite gumb Pridruži se! Modul bo poskušal povezati izbrano omrežje Wi-Fi, kar bo trajalo nekaj sekund.
Opomba: Če je geslo napačno, lahko ponastavite nastavitve Wi-Fi tako, da za 10 sekund držite gumb Ponastavi
Nastavitev HomeKit
V napravi iOS odprite aplikacijo Home in sledite običajnim korakom, da dodate novo dodatno opremo. Nastavitev seznanjanja traja približno 30 sekund.
Privzeta koda HomeKit je 021-82-017
Skenirate lahko tudi to QR kodo HomeKit:
Opomba: Če seznanjanje ne uspe, lahko izklopite napravo, jo znova vklopite in znova zaženete nastavitev HomeKit (nastavitve Wi -Fi ostanejo nastavljene). Po uspešnem seznanjanju bo LED trak 3 -krat utripal belo!
Pogosta vprašanja:
- Včasih dodajanje več dodatkov s kodo QR ne uspe, če HomeKit poroča o "dodatku, ki je že dodan", preprosto dodajte kodo za seznanjanje namesto skeniranja kode QR!
- V primeru, da je šlo kaj narobe, si lahko ogledate datoteke dnevnika z uporabo Arduinovega serijskega monitorja in prosto odprete težavo na GitHubu
3. korak: Nastavitve po meri
Na žalost aplikacija Home ne podpira značilnosti po meri/lastnosti tretjih oseb, zato boste za spremembo teh nastavitev in uporabo učinkov WS2812B potrebovali aplikacijo Elgato EVE. Tudi dodatek deluje kot dodatek za ponarejen Eve Light Strip, ko ga dodate prek aplikacije Eve?
Prehodi in vedenje moči
Prvotni trak Eve Light podpira te dve lastnosti. S prehodi lahko spremenite hitrost LED traku pri uporabi učinkov WS2812FX! Če ga nastavite na Quick (Hitro), bo onemogočen vhod/izklop in hitro se bo vklopil!
Z Power Behavior -om lahko spremenite privzeto barvo, ko se LED trak vklopi! Privzeto je nastavljena na Zadnja uporabljena barva, zato se ob izklopu LED traku vedno spomni zadnje barve, ki ste jo uporabili! Ko je nastavljena na privzeto belo, se bo barva ob vsakem izklopu LED traku vrnila v belo!
Ponastaviti
Koda ima funkcijo ponastavitve, če gre kaj narobe. Počakajte približno 5 sekund, da se naprava popolnoma zažene, in nato dolgo pritisnite gumb vsaj 10 sekund!
Vse konfigurirane nastavitve so bile odstranjene in naprava se znova zažene. S tem odstranite nastavitve HomeKit in Wi-Fi, vaša naprava pa bo naslednjič prešla v način dostopne točke, da znova konfigurira Wi-Fi.
Opomba: Če pritisnete isti gumb, LED trak vklopite ali izklopite
Priporočena:
DIY krmilnik za tipkovnico za MAME in virtualni fliper: 4 koraki (s slikami)
DIY krmilnik za tipkovnico za MAME in virtualni fliper: Ta niz navodil vam omogoča, da izdelate svoj krmilnik tipkovnice s starimi tipkovnicami za ceno nekaj žice, spajkanja in kosa lesa. Ti krmilniki so bili uporabljeni v mojih projektih MAME in Virtual Pinball Oglejte si Virtual Pinball Inst
DIY krmilnik Minecraft Pickaxe: 4 koraki (s slikami)
DIY Minecraft Pickaxe Controller: Za to sem delal skoraj eno leto in končno sem imel čas, da se lotim tega. Tukaj imamo krmilnik za igre USB (HID), ki se priključi naravnost na kateri koli stroj z USB -jem in deluje kot tipkovnica/miška/igralna palica. Ima
Arduino DIY krmilnik za igre - Arduino PS2 krmilnik iger - Predvajanje Tekkena z igralno ploščo Arduino DIY: 7 korakov
Arduino DIY krmilnik za igre | Arduino PS2 krmilnik iger | Igranje Tekken z igralno ploščo DIY Arduino: Pozdravljeni, igranje iger je vedno zabavno, vendar je igranje s svojim lastnim krmilnikom iger po meri bolj zabavno. Zato bomo v tem navodilu naredili krmilnik za igre z uporabo arduino pro micro
Servo krmilnik Maestro (Raspberry Pi): 4 koraki (s slikami)
Maestro servo krmilnik (Raspberry Pi): Osnovna vadnica o tem, kako nastaviti krmilnik Maestro servo krmilnik z Raspberry Pi
Paket za ponovno polnjenje krmilnika Xbox One za krmilnik (projekt v teku): 3 koraki (s slikami)
Paket za ponovno polnjenje krmilnika Xbox One za krmilnik (projekt v teku): Preden se potopimo v podrobnosti, bi rad naslovil naslov. Ta projekt je v teku zaradi nekaterih ugotovitev po preizkusu prve zasnove. Ob tem bom preoblikoval tablo tako, da bo upošteval nekatere spremembe, ki jih bom pregledal. Pokril sem e