Kazalo:

Apple HomeKit WS2812B LED krmilnik: 3 koraki (s slikami)
Apple HomeKit WS2812B LED krmilnik: 3 koraki (s slikami)

Video: Apple HomeKit WS2812B LED krmilnik: 3 koraki (s slikami)

Video: Apple HomeKit WS2812B LED krmilnik: 3 koraki (s slikami)
Video: How to make Apple HomeKit WS2812B Neopixel RGB LED Strip Controller 2024, November
Anonim
Image
Image
LED krmilnik Apple HomeKit WS2812B
LED krmilnik Apple HomeKit WS2812B
LED krmilnik Apple HomeKit WS2812B
LED krmilnik Apple HomeKit WS2812B
LED krmilnik Apple HomeKit WS2812B
LED krmilnik Apple HomeKit WS2812B

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

Namestitev vdelane programske opreme
Namestitev vdelane programske opreme
Namestitev vdelane programske opreme
Namestitev vdelane programske opreme
Namestitev vdelane programske opreme
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 in HomeKit
Nastavitev Wi-Fi in HomeKit
Nastavitev Wi-Fi in HomeKit
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

Nastavitve po meri
Nastavitve po meri
Nastavitve po meri
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: