Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Instalacja oprogramowania sprzętowego
- Krok 2: Konfiguracja Wi-Fi i HomeKit
- Krok 3: Ustawienia niestandardowe
Wideo: Kontroler LED Apple HomeKit WS2812B: 3 kroki (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Istnieje wiele projektów opartych na taśmach LED WS2812B, ale większość z nich wykorzystuje Homebridge lub jakiekolwiek inne rozwiązanie - głównie oparte na MQTT - do komunikacji z HomeKit.
Niektóre projekty również używają efektów za pośrednictwem Apple HomeKit, ale żaden z nich nie obsługuje samodzielnego HomeKit bez żadnego mostka Używam diod LED WS2812B od prawie 3-4 lat z HomeKit i działają bardzo dobrze
Ponieważ kod jest bardzo złożony i korzystałem z wielu niestandardowych bibliotek, stworzyłem wstępnie skompilowane pliki oprogramowania układowego. Dla tych, którzy są zainteresowani tworzeniem natywnych projektów HomeKit, kod źródłowy esp-homekit dostępny jest tutaj.
Podstawowe informacje:
- Obecnie obsługiwane są tylko taśmy LED WS2812B, WS2812B ECO i WS2813!
- Maksymalna liczba diod LED jest ograniczona do 500 w celu oszczędzania pamięci RAM
- Wymagany konwerter poziomów logicznych (do konwersji danych z 3,3 V na 5 V)
- Niezbędny jest również dobrej jakości zasilacz 5V
- Więcej informacji można znaleźć na moim GitHubie
- Adafruit Überguide też może pomóc:-)
Projekt PCB:
Zaprojektowałem prostą płytkę do sterowania diodami NeoPixel w sposób opisany w Adafruit NeoPixel Überguide używając najnowszego SN74HCT125N Logic Level Converter IC oraz zalecanego kondensatora 1000uF:-) Obecnie używam tej płytki z zasilaczem 5V 10A bez problemów z (temperaturą):-)
Mam też wersję USB typu C na krótsze paski LED!
Płytki PCB można zamówić tutaj i tutaj
Więcej informacji o płytkach PCB znajdziesz tutaj
Cechy:
- Zmień kolor
- Zmień jasność
- Zmień temperaturę barwową (nie wymaga paska RGBW)
- Efekty świetlne WS2812FX (beta!!!)
- Konfigurowanie licznika diod LED WS2812B (przy pierwszym uruchomieniu od 1 do 500)
- Charakterystyka zachowania zasilania (domyślny kolor / ostatnie użycie przy uruchomieniu za pośrednictwem aplikacji Eve)
- Przejście (Szybkie / Domyślne / Umiarkowane / Spokojne przez aplikację Eve)
- Blokada dziecięca (włącz/wyłącz naciśnięcie przycisku w aplikacji Eve)
- Instrukcja obsługi do pobrania (za pośrednictwem aplikacji Eve)
- Przycisk zasilania/resetowania
Kieszonkowe dzieci
Do stworzenia niestandardowej płytki PCB będziesz potrzebować taniej lutownicy lub stacji lutowniczej, takiej jak ta lub ta. Przydałby się również pistolet lutowniczy na gorące powietrze! Aby wgrać kod, prawdopodobnie będziesz musiał kupić również adapter USB TTL.
Niezbędne części:
- NodeMCU lub Wemos D1 Mini
- Konwerter poziomów logicznych IC
- Taśma LED WS2812B
- Złącze żeńskie JST 3 pin
- Zasilanie 5V 2-10A v1 lub zasilanie 5V 2-10A v2
- Kable rozruchowe
Części PCB:
- ESP12F/E
- ESP-01S (1 MB flash)
- Rezystory SMD 0805
- Kondensatory SMD 0805
- AMS1117-3.3
- Przycisk dotykowy
- Nagłówek 2,54 mm
- SN74HCT125N
- Kondensator SMD 10,5x10,5 1000uF
- Złącze prądu stałego
- 3 pinowy zacisk śrubowy
- Uchwyt bezpiecznika
- Bezpiecznik
Krok 1: Instalacja oprogramowania sprzętowego
Oprogramowanie układowe można pobrać z mojej strony GitHub
Okna
W systemie Windows możesz skorzystać z oficjalnego narzędzia pobierania oprogramowania układowego firmy Espressif
Ustawienie adresów flash (0x2000), rozmiaru flash (1MB/8mbit, 4MB/32mbit) i trybu flash (DIO/QIO) jest bardzo ważnym krokiem, ale te ustawienia mogą ulec zmianie w zależności od używanego modułu! Polecam również wymazać pamięć flash przed przesłaniem plików.bin!
Ustawienia:
- Szybkość transmisji 115200
- Rozmiar Flash 4MB lub 32mbit (w zależności od modułu)
- Tryb Flash QIO (lub DIO, w zależności od modułu)
- 0x0000 rboot.bin
- 0x1000 blank_config.bin
- 0x2000 ledstrip.bin
- 40 MHz
System operacyjny Mac
W systemie MacOS możesz użyć tego narzędzia do flashowania
Ustawienia:
- Wymaż lampę błyskową - tak
- Szybkość transmisji 115200
- Rozmiar Flash 4MB lub 32mbit (w zależności od modułu)
- Tryb Flash QIO (lub DIO, w zależności od modułu)
- Plik: ledstrip.bin
- 40 MHz
Ręczne Flash
Musimy zainstalować esptool.py na naszym Macu, aby móc sflashować nasz moduł ESP. Aby pracować z esptool.py, potrzebujesz Pythona 2.7, Pythona 3.4 lub nowszej instalacji Pythona w swoim systemie. Zalecamy korzystanie z najnowszej wersji Pythona, więc wejdź na stronę Pythona i zainstaluj go na swoim komputerze.
Po zainstalowaniu Pythona otwórz okno Terminala i zainstaluj najnowszą stabilną wersję esptool.py za pomocą pip:
pip zainstalować esptool
Uwaga: w przypadku niektórych instalacji Pythona to polecenie może nie działać i pojawi się błąd. W takim przypadku spróbuj zainstalować esptool.py za pomocą:
pip3 zainstaluj esptool python -m pip zainstaluj esptool pip2 zainstaluj esptool
Po zainstalowaniu esptool.py zostanie zainstalowany w domyślnym katalogu plików wykonywalnych Pythona i powinieneś być w stanie uruchomić go za pomocą polecenia esptool.py. W oknie Terminala uruchom następujące polecenie:
esptool.py
Z esptool.py zainstalowanym na twoim komputerze, możesz łatwo sflashować swoją płytę ESP8266 z oprogramowaniem układowym.
Najpierw musisz pobrać trzy pliki bin: rboot.bin i blank_config.bin oraz najnowszą wersję. Plik rboot.bin zawiera bootloader dla ESP8266 i blank_config.bin w pustym pliku konfiguracyjnym, a ledstrip.bin zawiera oprogramowanie układowe. Teraz podłącz swoje urządzenie do adaptera FTDI w trybie flash.
Linki lustrzane:
rboot.binblank_config.binledstrip.bin
Przełączanie urządzenia w tryb Flash
Aby włączyć flashowanie oprogramowania układowego ESP8266, pin GPIO0 należy wyciągnąć w dół podczas zasilania urządzenia. Z moją niestandardową płytką drukowaną jest przycisk, nodeMCU ma również przycisk flash, a Wemos robi to automatycznie za pomocą USB. I odwrotnie, w przypadku normalnego buta GPIO0 musi być wyciągnięty wysoko lub unoszący się. Zacznij w TRYBIE FLASH
Przejdź do utworzonego katalogu, w którym umieściłeś wcześniej pobrane pliki rboot.bin blank_config.bin (np. Pobrane)
Otwórz aplikację Terminal. Kliknij ikonę Findera w doku. Kliknij Idź. Kliknij Narzędzia. Kliknij dwukrotnie Terminal. Przejdź do katalogu pobierania.
Do podłączenia do ESP8266 potrzebny będzie adapter USB TTL. Jeśli używasz Wemos D1 Mini, potrzebny jest tylko kabel microUSB, Wemos ma wbudowany adapter TTL.
pobieranie płyt CD
Uwaga: Jeśli używasz innej biblioteki do przechowywania trzech plików.bin, przejdź do tej biblioteki za pomocą polecenia `cd`:
Użyj esptool.py, aby sflashować urządzenie. Najpierw musimy wymazać flash:
esptool.py -p /dev/ erase_flash
Normalnie twój ESPPort będzie wyglądał jak /dev/cu.usbserial-`xxxxxx`. Następnie ponownie ustaw urządzenie w trybie flash i zaktualizuj nowe oprogramowanie:
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: Konfiguracja Wi-Fi i HomeKit
Konfiguracja Wi-Fi
Musisz skonfigurować sieć Wi-Fi przed dodaniem akcesorium do HomeKit. Aby skonfigurować ustawienia Wi-Fi, urządzenie generuje własne Wi-Fi w trybie AP. Musisz się z nim połączyć, aby skonfigurować sieć Wi-Fi. Po prostu weź swoje urządzenie z systemem iOS, przejdź do Ustawienia -> Wi-Fi i wyszukaj identyfikator SSID o nazwie HomeKid-, a następnie adres MAC modułu i połącz się z nim. Ze względów bezpieczeństwa AP jest chroniony hasłem! Domyślne hasło AP: 12345678
Poczekaj kilka sekund, aż pojawi się sieć pokazująca wszystkie sieci Wi-Fi znalezione przez urządzenie. Wybierz swoje i wprowadź hasło! Następnie możesz dodać dokładną liczbę diod LED w swoim pasku LED! Wpisz liczbę od 1 do 500! Następnie kliknij przycisk Dołącz! Moduł spróbuje połączyć się z wybraną siecią Wi-Fi, zajmie to kilka sekund.
Uwaga: Jeśli podane hasło jest nieprawidłowe, możesz zresetować ustawienia Wi-Fi, przytrzymując przycisk Reset przez 10 sekund
Konfiguracja HomeKit
Na urządzeniu z systemem iOS otwórz aplikację Home i wykonaj normalne czynności, aby dodać nowe akcesorium. Konfiguracja parowania zajmuje około 30 sekund.
Domyślny kod HomeKit to 021-82-017
Możesz także zeskanować ten kod QR HomeKit:
Uwaga: Jeśli parowanie się nie powiedzie, możesz wyłączyć zasilanie urządzenia, ponownie je włączyć i ponownie rozpocząć konfigurację HomeKit (ustawienia Wi-Fi pozostają skonfigurowane). Po udanym sparowaniu pasek LED zamiga 3 razy na biało!
Powszechne problemy:
- Czasami dodanie wielu akcesoriów za pomocą kodu QR kończy się niepowodzeniem, jeśli HomeKit zgłosi „Akcesoria już dodane”, po prostu dodaj kod parowania ręcznie zamiast skanować kod QR!
- Jeśli coś poszło nie tak, możesz zobaczyć pliki dziennika za pomocą monitora szeregowego Arduino i możesz swobodnie otworzyć problem na GitHub
Krok 3: Ustawienia niestandardowe
Niestety aplikacja Home nie obsługuje niestandardowych cech innych firm, więc do zmiany tych ustawień i korzystania z efektów WS2812B potrzebna jest aplikacja Elgato EVE. Ponadto akcesorium działa jak akcesorium Fake Eve Light Strip po dodaniu go za pomocą aplikacji Eve?
Przejścia i zachowanie mocy
Oryginalna listwa Eve Light wspiera te dwie cechy. Dzięki Transitions możesz zmienić prędkość taśmy LED podczas korzystania z efektów WS2812FX! Ustawienie go na Szybkie wyłączy zanikanie/zanikanie i szybko się włączy!
Dzięki Power Behavior możesz zmienić domyślny kolor po włączeniu paska LED! Domyślnie jest ustawiony na Ostatnio używany kolor, więc po wyłączeniu paska LED zawsze będzie pamiętał ostatnio użyty kolor! Po ustawieniu na Domyślny biały, za każdym razem, gdy wyłączysz pasek LED, kolor wróci do białego!
Resetowanie
Kod posiada funkcję Reset na wypadek, gdyby coś poszło nie tak. Odczekaj około 5 sekund, aby urządzenie uruchomiło się całkowicie, a następnie naciśnij i przytrzymaj przycisk przez co najmniej 10 sekund!
Wszystkie skonfigurowane ustawienia zostały usunięte i urządzenie uruchamia się ponownie. Spowoduje to usunięcie ustawień HomeKit i Wi-Fi, a urządzenie przejdzie następnym razem w tryb punktu dostępu, aby ponownie skonfigurować Wi-Fi.
Uwaga: Pojedyncze naciśnięcie tego samego przycisku spowoduje włączenie lub wyłączenie paska LED
Zalecana:
Osuszacz Wi-Fi Apple HomeKit oparty na ESP8266?: 6 kroków (ze zdjęciami)
Osuszacz Wi-Fi Apple HomeKit oparty na ESP8266 ?: Niestety jest tylko jeden lub dwa osuszacze, które obsługują Apple HomeKit, ale te mają naprawdę wysokie ceny (300 $+). Więc zdecydowałem się stworzyć własny osuszacz Apple HomeKit z obsługą Wi-Fi na podstawie taniego, który już mam? I
Zrób to sam kontroler klawiatury do MAME i wirtualnego pinballa: 4 kroki (ze zdjęciami)
Zrób to sam kontroler klawiatury do MAME i wirtualnego pinballa: Ten zestaw instrukcji umożliwia wykonanie własnego kontrolera klawiatury przy użyciu starych klawiatur za cenę drutu, lutu i kawałka drewna. Te kontrolery były używane w moich projektach MAME i Virtual Pinball .Zobacz Virtual Pinball Inst
Kontroler gier DIY oparty na Arduino - Kontroler gier Arduino PS2 - Granie w Tekken z DIY Arduino Gamepad: 7 kroków
Kontroler gier DIY oparty na Arduino | Kontroler gier Arduino PS2 | Granie w Tekken z DIY Arduino Gamepad: Witajcie, granie w gry jest zawsze zabawne, ale granie z własnym niestandardowym kontrolerem do gier jest przyjemniejsze. Dlatego stworzymy kontroler do gier za pomocą arduino pro micro w tej instrukcji
Kontroler Maestro Servo (Raspberry Pi): 4 kroki (ze zdjęciami)
Kontroler Maestro Servo (Raspberry Pi): Podstawowy samouczek dotyczący konfiguracji kontrolera Maestro Servo z Raspberry Pi
Kontroler zwalniania migawki aparatu: 4 kroki (ze zdjęciami)
Kontroler zwalniania migawki aparatu: kontroler, który może ustawić czas otwarcia migawki, interwał, liczbę serii zdjęć dla aparatów cyfrowych. Praktyczny do filmowania poklatkowego lub zdjęć śladu gwiazdy. Oryginalny pomysł pojawia się, gdy próbowałem mojego pierwszego zdjęcia śladu gwiazdy w zeszłym roku. Stwierdziłem, że mam