Indholdsfortegnelse:

Apple HomeKit WS2812B LED -controller: 3 trin (med billeder)
Apple HomeKit WS2812B LED -controller: 3 trin (med billeder)

Video: Apple HomeKit WS2812B LED -controller: 3 trin (med billeder)

Video: Apple HomeKit WS2812B LED -controller: 3 trin (med billeder)
Video: Светильник из адресной ленты. 2024, November
Anonim
Image
Image
Apple HomeKit WS2812B LED -controller
Apple HomeKit WS2812B LED -controller
Apple HomeKit WS2812B LED -controller
Apple HomeKit WS2812B LED -controller
Apple HomeKit WS2812B LED -controller
Apple HomeKit WS2812B LED -controller

Der er mange projekter baseret på WS2812B LED -strips derude, men de fleste af disse bruger homebridge eller enhver anden løsning - for det meste baseret på MQTT - til at kommunikere med HomeKit.

Nogle projekter bruger også effekter via Apple HomeKit, men ingen af dem understøtter selvstændig HomeKit uden brug af nogen bro Jeg bruger WS2812B LED'er næsten 3-4 år nu med HomeKit, og de fungerer meget godt

Da koden er meget kompleks, og jeg har brugt mange brugerdefinerede biblioteker, har jeg lavet prækompilerede firmwarefiler. For dem, der er interesseret i at lave native HomeKit-projekter, er kildekoden til esp-homekit tilgængelig her.

Grundlæggende oplysninger:

  • I øjeblikket understøttes kun WS2812B, WS2812B ECO og WS2813 LED -strips!
  • Maksimalt antal lysdioder er begrænset til 500 for at spare RAM
  • Logisk niveauomformer påkrævet (til 3.3V til 5V datakonvertering)
  • God kvalitet 5V strømforsyning er også nødvendig
  • Flere oplysninger kan findes på min GitHub
  • Adafruit Überguide kan også hjælpe:-)

PCB Design:

Jeg har designet et simpelt printkort til at køre NeoPixel LED'erne på den korrekte måde beskrevet i Adafruit's NeoPixel Überguide ved hjælp af den nyeste SN74HCT125N Logic Level Converter IC og den anbefalede 1000uF kondensator:-) Jeg bruger i øjeblikket dette printkort med en 5V 10A strømforsyning uden (temperatur) problemer:-)

Jeg har også en USB Type-C-version til kortere LED-strips!

Du kan bestille printkortene her og her

Du kan finde mere information om printkortene her

Funktioner:

  • Skift farve
  • Skift lysstyrke
  • Skift farvetemperatur (ingen RGBW -strimmel påkrævet)
  • WS2812FX lyseffekter (beta !!!)
  • Opsætning af WS2812B LED -tæller (ved første opstart fra 1 til 500)
  • Strømadfærdskarakteristik (standardfarve / sidst brugt ved opstart via Eve -app)
  • Overgang (Hurtig / Standard / Moderat / Rolig via Eve -app)
  • Børnesikring (Aktiver/deaktiver knap tryk via Eve app)
  • Brugermanual, der kan downloades (via Eve -appen)
  • Tænd / nulstil -knap

Forbrugsvarer

For at oprette det brugerdefinerede printkort har du brug for et billigt loddejern eller en loddestation som denne eller denne. Også en varmlufts lodningspistol ville også være nyttig! For at uploade koden skal du sandsynligvis også købe en USB TTL -adapter.

Nødvendige dele:

  • NodeMCU eller Wemos D1 Mini
  • Logisk niveauomformer IC
  • WS2812B LED -strimmel
  • JST 3 -polet hunstik
  • 5V 2-10A strømforsyning v1 eller 5V 2-10A strømforsyning v2
  • Jumper kabler

PCB -dele:

  • ESP12F/E
  • ESP-01S (1 MB flash)
  • SMD 0805 modstande
  • SMD 0805 kondensatorer
  • AMS1117-3.3
  • Taktil knap
  • 2,54 mm header
  • SN74HCT125N
  • SMD 10,5x10,5 1000uF kondensator
  • DC -stik
  • 3 ben skrueterminal
  • Sikringsholder
  • Sikring

Trin 1: Installation af firmwaren

Installation af firmwaren
Installation af firmwaren
Installation af firmwaren
Installation af firmwaren
Installation af firmwaren
Installation af firmwaren

Du kan downloade firmwaren fra min GitHub -side

Windows

Til Windows kan du bruge det officielle firmware -downloadværktøj fra Espressif

Indstilling af flashadresser (0x2000), flashstørrelse (1MB/8mbit, 4MB/32mbit) og flashtilstand (DIO/QIO) er et meget vigtigt trin, men disse indstillinger kan ændres baseret på det modul, du bruger! Jeg har også anbefalet at slette flashen, før du uploader.bin -filerne!

Indstillinger:

  • Baudhastighed 115200
  • Flashstørrelse 4MB eller 32mbit (afhængigt af dit modul)
  • Flashtilstand QIO (eller DIO, afhængigt af dit modul)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 ledstrip.bin
  • 40MHz

MacOS

Til MacOS kan du bruge dette blinkværktøj

Indstillinger:

  • Slet flash - ja
  • Baudhastighed 115200
  • Flashstørrelse 4MB eller 32mbit (afhængigt af dit modul)
  • Flashtilstand QIO (eller DIO, afhængigt af dit modul)
  • Fil: ledstrip.bin
  • 40MHz

Flash manuelt

Vi skal installere esptool.py på vores Mac for at kunne blinke vores ESP -modul. For at arbejde med esptool.py skal du enten bruge Python 2.7, Python 3.4 eller en nyere Python -installation på dit system. Vi anbefaler at bruge den nyeste Python -version, så gå til Pythons websted og installer det på din computer.

Med Python installeret, skal du åbne et Terminal -vindue og installere den nyeste stabile esptool.py -udgivelse med pip:

pip installere esptool

Bemærk: med nogle Python -installationer fungerer denne kommando muligvis ikke, og du får en fejl. Hvis det er tilfældet, skal du prøve at installere esptool.py med:

pip3 installere esptool python -m pip installere esptool pip2 installere esptool

Efter installationen vil du have esptool.py installeret i standardmappen til Python -eksekverbare filer, og du skal kunne køre den med kommandoen esptool.py. Kør følgende kommando i dit Terminal -vindue:

esptool.py

Med esptool.py installeret på din computer, kan du nemt blinke dit ESP8266 -kort med firmwaren.

Først skal du downloade tre bin -filer: rboot.bin og blank_config.bin og den seneste version. Rboot.bin indeholder bootloaderen til ESP8266 og blank_config.bin i en tom konfigurationsfil, og ledstrip.bin indeholder firmwaren. Tilslut nu din enhed til din FTDI-adapter i flash-tilstand.

Spejl links:

rboot.binblank_config.binledstrip.bin

Sætter enheden i Flash -tilstand

For at aktivere ESP8266 -firmware skal blinkende GPIO0 -pin trækkes lavt, mens enheden tændes. Med min brugerdefinerede print er der en knap, nodeMCU har også en flash -knap, og Wemos gør det automatisk ved hjælp af USB. Omvendt, for en normal støvle, skal GPIO0 trækkes højt eller flydende. Start med FLASH MODE

Gå til det bibliotek, du lavede, hvor du lagde de tidligere downloadede rboot.bin blank_config.bin -filer (f.eks. Downloads)

Åbn Terminal -appen. Klik på Finder -ikonet i din dock. Klik på Gå. Klik på Hjælpeprogrammer. Dobbeltklik på Terminal. Skift til download -biblioteket.

Du skal bruge en USB TTL -adapter til tilslutning til ESP8266. Hvis du kun bruger et Wemos D1 Mini, er et microUSB-kabel, har Wemos indbygget TTL-adapter.

cd downloads

Bemærk: Hvis du bruger et andet bibliotek til at gemme de tre.bin -filer, skal du navigere ind i biblioteket ved hjælp af 'cd' kommando:

Brug esptool.py til at blinke din enhed. Først skal vi slette blitzen:

esptool.py -p / dev / erase_flash

Normalt vil din ESPPort være noget i stil med /dev /cu.usbserial-'xxxxxx '. Indstil derefter din enhed i flash-tilstand igen, og flash den nye 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

Trin 2: Wi-fi og HomeKit-opsætning

Wi-fi og HomeKit-opsætning
Wi-fi og HomeKit-opsætning
Wi-fi og HomeKit-opsætning
Wi-fi og HomeKit-opsætning

Wi-Fi-opsætning

Du skal konfigurere wifi -netværk, før du tilføjer tilbehøret til HomeKit. For at konfigurere Wi-Fi-indstillinger genererer enheden sit eget Wi-Fi i AP-tilstand. Du skal oprette forbindelse til det for at konfigurere dit Wi-Fi-netværk. Tag blot din iOS-enhed, gå til Indstilling-> Wi-Fi, og søg efter et SSID kaldet HomeKid- efterfulgt af modulets MAC-adresse og opret forbindelse til den. Af sikkerhedsmæssige årsager er AP adgangskodebeskyttet! Standard AP -adgangskode: 12345678

Vent et par sekunder, indtil der vises et web, der viser dig alle Wi-Fi-netværk, som enheden har fundet. Vælg din, og indtast adgangskode! Derefter kan du tilføje det nøjagtige antal lysdioder i din LED -strip! Indtast et tal fra 1 til 500! Klik derefter på knappen Deltag! Modulet forsøger at forbinde det valgte Wi-Fi-netværk, dette vil tage et par sekunder.

Bemærk: Hvis den angivne adgangskode er forkert, kan du nulstille Wi-fi-indstillingerne ved at holde Reset-knappen nede i 10 sekunder

Opsætning af HomeKit

Åbn Home App på din iOS -enhed, og følg normale trin for at tilføje et nyt tilbehør. Opsætning af parring tager cirka 30 sekunder.

Standard HomeKit-kode er 021-82-017

Du kan også scanne denne HomeKit QR -kode:

Bemærk: Hvis parring mislykkes, kan du afbryde strømmen til din enhed, genoprette den og starte opsætningen af HomeKit igen (Wifi -indstillinger forbliver konfigureret). Efter vellykket parring vil LED -strimlen blinke hvidt 3 gange!

Almindelige problemer:

  • Nogle gange mislykkes tilføjelse af flere tilbehør ved hjælp af QR -kode, hvis HomeKit rapporterer "Tilbehør allerede tilføjet", skal du blot tilføje parringskoden manuelt i stedet for at scanne QR -koden!
  • Hvis noget gik galt, kan du se logfilerne ved hjælp af Arduinos serielle skærm og blev fri til at åbne et problem på GitHub

Trin 3: Tilpassede indstillinger

Brugerdefinerede indstillinger
Brugerdefinerede indstillinger
Brugerdefinerede indstillinger
Brugerdefinerede indstillinger

Desværre understøtter Home -appen ikke brugerdefinerede/tredjepartsegenskaber, så du skal bruge Elgato EVE -appen til at ændre disse indstillinger og bruge WS2812B -effekterne. Tilbehøret fungerer også som et Fake Eve Light Strip -tilbehør, når du tilføjer det via Eve -appen?

Overgange og magtadfærd

Den originale Eve Light -strip understøtter disse to egenskaber. Med Transitions kan du ændre hastigheden på LED -strimlen, når du bruger WS2812FX -effekter! Hvis du indstiller den til Hurtig, deaktiveres fading in/out, og den tændes hurtigt!

Med Power Behavior kan du ændre standardfarven, når LED -strimlen tændes! Som standard er den indstillet til Sidst brugt farve, så når du slukker LED -strimlen, husker den altid den sidste farve, du brugte! Når den er indstillet til Standard hvid, hver gang du slukker for LED -strimlen, går farven tilbage til hvid!

Nulstil

Koden har en nulstillingsfunktion, hvis noget går galt. Vent cirka 5 sekunder for at tillade enheden at starte helt, og tryk derefter længe på knappen i mindst 10 sekunder!

Alle konfigurerede indstillinger er blevet fjernet, og enheden genstarter. Dette fjerner HomeKit og Wi-Fi-indstillinger, og din enhed går næste gang til adgangspunkttilstand for at omkonfigurere Wi-Fi.

Bemærk: Et enkelt tryk på den samme knap vil tænde eller slukke LED -strimlen

Anbefalede: