Obsah:

LED ovladač Apple HomeKit WS2812B: 3 kroky (s obrázky)
LED ovladač Apple HomeKit WS2812B: 3 kroky (s obrázky)

Video: LED ovladač Apple HomeKit WS2812B: 3 kroky (s obrázky)

Video: LED ovladač Apple HomeKit WS2812B: 3 kroky (s obrázky)
Video: How to make Apple HomeKit WS2812B Neopixel RGB LED Strip Controller 2024, Listopad
Anonim
Image
Image
LED ovladač Apple HomeKit WS2812B
LED ovladač Apple HomeKit WS2812B
LED ovladač Apple HomeKit WS2812B
LED ovladač Apple HomeKit WS2812B
LED ovladač Apple HomeKit WS2812B
LED ovladač Apple HomeKit WS2812B

Existuje spousta projektů založených na LED pásech WS2812B, ale většina z nich ke komunikaci s HomeKit používá homebridge nebo jiné řešení - většinou založené na MQTT.

Některé projekty používají efekty také přes Apple HomeKit, ale žádný z nich nepodporuje samostatný HomeKit, aniž by potřeboval jakýkoli můstek Používám LED WS2812B téměř 3-4 roky s HomeKit a fungují velmi dobře

Protože je kód velmi složitý a použil jsem spoustu vlastních knihoven, vytvořil jsem předkompilované soubory firmwaru. Pro ty, kteří mají zájem o vytváření nativních projektů HomeKit, je zde k dispozici zdrojový kód pro esp-homekit.

Základní informace:

  • V současné době jsou podporovány pouze LED pásy WS2812B, WS2812B ECO a WS2813!
  • Maximální počet diod LED je omezen na 500 pro úsporu paměti RAM
  • Je vyžadován převodník logické úrovně (pro převod dat 3,3 V na 5 V)
  • Nezbytné je také kvalitní 5V napájení
  • Více informací najdete na mém GitHubu
  • Pomoci může také Adafruit Überguide:-)

Deska plošných spojů:

Navrhl jsem jednoduchou desku plošných spojů pro napájení LED diod NeoPixel správným způsobem popsaným v NeoPixel Überguide společnosti Adafruit pomocí nejnovějšího IC převodníku logické úrovně SN74HCT125N a doporučeného kondenzátoru 1000uF:-) V současné době používám tuto desku s napájecím zdrojem 5V 10A bez jakýchkoli (teplotních) problémů:-)

Také mám verzi USB typu C pro kratší LED pásky!

PCB si můžete objednat zde a zde

Více informací o deskách plošných spojů najdete zde

Funkce:

  • Změnit barvu
  • Změnit jas
  • Změna teploty barev (není vyžadován pás RGBW)
  • Světelné efekty WS2812FX (beta !!!)
  • Nastavení počtu LED diod WS2812B (při prvním spuštění od 1 do 500)
  • Charakteristika chování napájení (výchozí barva / poslední použití při spuštění pomocí aplikace Eve)
  • Přechod (Rychlý / Výchozí / Střední / Klidný prostřednictvím aplikace Eve)
  • Dětský zámek (stisknutí tlačítka Povolit/Zakázat prostřednictvím aplikace Eve)
  • Uživatelská příručka ke stažení (prostřednictvím aplikace Eve)
  • Tlačítko napájení / reset

Zásoby

K vytvoření vlastní desky plošných spojů budete potřebovat levnou páječku nebo pájecí stanici, jako je tato nebo tato. Pomohla by také horkovzdušná pájecí pistole! K odeslání kódu budete pravděpodobně muset zakoupit také adaptér USB TTL.

Potřebné díly:

  • NodeMCU nebo Wemos D1 Mini
  • Převodník logické úrovně IC
  • WS2812B LED pásek
  • 3kolíkový zásuvkový konektor JST
  • Napájení 5V 2-10A v1 nebo 5V 2-10A napájení v2
  • Propojovací kabely

Díly DPS:

  • ESP12F/E
  • ESP-01S (1 MB flash)
  • Rezistory SMD 0805
  • Kondenzátory SMD 0805
  • AMS1117-3.3
  • Hmatové tlačítko
  • Záhlaví 2,54 mm
  • SN74HCT125N
  • SMD 10,5x10,5 1000uF kondenzátor
  • DC konektor
  • 3pólový šroubový terminál
  • Pojistkový držák
  • Pojistka

Krok 1: Instalace firmwaru

Instalace firmwaru
Instalace firmwaru
Instalace firmwaru
Instalace firmwaru
Instalace firmwaru
Instalace firmwaru

Firmware si můžete stáhnout z mé stránky GitHub

Okna

Pro Windows můžete použít oficiální nástroj pro stahování firmwaru od Espressif

Nastavení adres flash (0x2000), velikosti blesku (1 MB/8mbit, 4MB/32mbit) a režimu blesku (DIO/QIO) je velmi důležitý krok, ale tato nastavení se mohou změnit na základě modulu, který používáte! Také doporučuji vymazat flash před nahráním souborů.bin!

Nastavení:

  • Přenosová rychlost 115200
  • Velikost flash 4 MB nebo 32 mbit (v závislosti na vašem modulu)
  • Flash Mode QIO (nebo DIO, v závislosti na vašem modulu)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 ledstrip.bin
  • 40 MHz

Operační Systém Mac

Pro MacOS můžete použít tento nástroj flasher

Nastavení:

  • Vymazat blesk - ano
  • Přenosová rychlost 115200
  • Velikost flash 4 MB nebo 32 mbit (v závislosti na vašem modulu)
  • Flash Mode QIO (nebo DIO, v závislosti na vašem modulu)
  • Soubor: ledstrip.bin
  • 40 MHz

Ručně Flash

Abychom mohli flashovat náš modul ESP, musíme na náš Mac nainstalovat esptool.py. K práci s esptool.py budete potřebovat buď Python 2.7, Python 3.4, nebo novější instalaci Pythonu ve vašem systému. Doporučujeme používat nejnovější verzi Pythonu, přejděte tedy na web Pythonu a nainstalujte si jej do počítače.

Když je nainstalován Python, otevřete okno Terminál a nainstalujte nejnovější stabilní verzi esptool.py pomocí pip:

pip install esptool

Poznámka: u některých instalací Pythonu nemusí tento příkaz fungovat a zobrazí se chyba. Pokud tomu tak je, zkuste nainstalovat esptool.py pomocí:

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

Po instalaci budete mít esptool.py nainstalován do výchozího adresáře spustitelných souborů Pythonu a měli byste ho spustit pomocí příkazu esptool.py. V okně Terminál spusťte následující příkaz:

esptool.py

Když je v počítači nainstalován soubor esptool.py, můžete desku ESP8266 snadno flashovat pomocí firmwaru.

Nejprve musíte stáhnout tři soubory bin: rboot.bin a blank_config.bin a nejnovější verzi. Soubor rboot.bin obsahuje bootloader pro ESP8266 a blank_config.bin pouze v prázdném konfiguračním souboru a ledstrip.bin obsahuje firmware. Nyní připojte zařízení k adaptéru FTDI v režimu blesku.

Zrcadlové odkazy:

rboot.binblank_config.binledstrip.bin

Uvedení zařízení do režimu blesku

Chcete -li povolit blikající firmware ESP8266, musí být při napájení zařízení vytažen nízký kolík GPIO0. U mého vlastního PCB je tlačítko, nodeMCU má také tlačítko blesku a Wemos to dělá automaticky pomocí USB. Naopak pro normální spuštění musí být GPIO0 vytažen vysoko nebo plovoucí. Začněte v režimu FLASH

Přejděte do vámi vytvořeného adresáře, kam jste vložili dříve stažené soubory rboot.bin blank_config.bin (např. Soubory ke stažení)

Otevřete aplikaci Terminal. V doku klikněte na ikonu Finder. Klikněte na Přejít. Klikněte na Nástroje. Poklepejte na Terminál. Přejděte do adresáře pro stahování.

K připojení k ESP8266 budete potřebovat adaptér USB TTL. Pokud používáte Wemos D1 Mini pouze kabel microUSB, má Wemos vestavěný adaptér TTL.

stahování cd

Poznámka: Pokud pro ukládání tří souborů.bin používáte jinou knihovnu, přejděte do této knihovny pomocí příkazu `cd`:

Použijte esptool.py k flashování vašeho zařízení. Nejprve musíme vymazat blesk:

esptool.py -p / dev / erase_flash

Váš ESPPort bude obvykle něco jako /dev /cu.usbserial-`xxxxxx`. Poté zařízení znovu přepněte do režimu blesku a proveďte aktualizaci nového firmwaru:

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

Krok 2: Nastavení Wi-Fi a HomeKit

Nastavení Wi-Fi a HomeKit
Nastavení Wi-Fi a HomeKit
Nastavení Wi-Fi a HomeKit
Nastavení Wi-Fi a HomeKit

Nastavení Wi-Fi

Před přidáním příslušenství do HomeKit musíte nakonfigurovat síť Wi -Fi. Pro konfiguraci nastavení Wi-Fi zařízení generuje vlastní Wi-Fi v režimu AP. Chcete-li nastavit síť Wi-Fi, musíte se k ní připojit. Jednoduše vezměte zařízení iOS, přejděte do Nastavení-> Wi-Fi a vyhledejte SSID s názvem HomeKid-následované MAC adresou modulu a připojte se k němu. Z bezpečnostních důvodů je AP chráněn heslem! Výchozí heslo AP: 12345678

Počkejte několik sekund, než se zobrazí web se všemi sítěmi Wi-Fi, které zařízení nalezlo. Vyberte si ten svůj a zadejte heslo! Poté můžete do svého LED pásku přidat přesný počet LED! Zadejte číslo od 1 do 500! Poté klikněte na tlačítko Připojit se! Modul se pokusí připojit vybranou síť Wi-Fi, bude to trvat několik sekund.

Poznámka: Pokud je zadané heslo nesprávné, můžete resetovat nastavení Wi-Fi podržením tlačítka Reset po dobu 10 sekund

Nastavení HomeKit

V zařízení iOS otevřete aplikaci Home a přidejte nové příslušenství podle běžných pokynů. Nastavení spárování trvá přibližně 30 sekund.

Výchozí kód HomeKit je 021-82-017

Můžete také naskenovat tento QR kód HomeKit:

Poznámka: Pokud se párování nezdaří, můžete zařízení odpojit od napájení, znovu zapnout napájení a znovu spustit nastavení HomeKit (nastavení Wifi zůstane nakonfigurováno). Po úspěšném spárování bude LED pásek třikrát blikat bíle!

Běžné problémy:

  • Někdy přidání více příslušenství pomocí QR kódu selže, pokud HomeKit hlásí „Už bylo přidáno příslušenství“, místo skenování QR kódu jednoduše přidejte párovací kód ručně!
  • V případě, že se něco pokazí, můžete si prohlédnout soubory protokolu pomocí sériového monitoru Arduino a můžete otevřít problém na GitHubu

Krok 3: Vlastní nastavení

Vlastní nastavení
Vlastní nastavení
Vlastní nastavení
Vlastní nastavení

Aplikace Home bohužel nepodporuje vlastní vlastnosti/vlastnosti třetích stran, takže pro změnu těchto nastavení a použití efektů WS2812B budete potřebovat aplikaci Elgato EVE. Také příslušenství funguje jako příslušenství Fake Eve Light Strip, když jej přidáte prostřednictvím aplikace Eve?

Přechody a chování energie

Původní pás Eve Light podporuje tyto dvě vlastnosti. S Transitions můžete měnit rychlost LED pásku při použití WS2812FX Effects! Nastavením na Rychlé deaktivujete prolínání/zhasínání a rychle se zapne!

S Power Behavior můžete změnit výchozí barvu, když se zapne LED pás! Ve výchozím nastavení je nastavena na Poslední použitá barva, takže když vypnete LED pásek, bude si vždy pamatovat poslední použitou barvu! Když je nastaveno na Výchozí bílou, při každém vypnutí LED pásky se barva vrátí zpět na bílou!

Resetovat

Kód má funkci Reset pro případ, že se něco pokazí. Počkejte přibližně 5 sekund, aby se zařízení úplně spustilo, a poté dlouze stiskněte tlačítko po dobu nejméně 10 sekund!

Všechna konfigurovaná nastavení byla odstraněna a zařízení se restartuje. Tím se odstraní nastavení HomeKit a Wi-Fi a vaše zařízení příště přejde do režimu přístupového bodu, aby znovu nakonfigurovalo Wi-Fi.

Poznámka: Jedním stisknutím stejného tlačítka se LED pás zapne nebo vypne

Doporučuje: