WLED er et program som kjører på en liten og billig chip (ESP32 eller NodeMCU), og som gjør at du enkelt kan lage stilige lyssettinger mer adresserbare LED-striper eller -lenker.
Dette er en nybegynners guide til WLED, bl.a. fordi jeg er en nybegynner selv (selv om jeg har lekt med det i 3-4 år)!
Julelys i 2022:
For å komme i gang trenger du ikke mye:
- En NodeMCU (ESP8266) eller en ESP32
- Alternativt kan man kjøpe et ferdig byggesett med QuinLed. @aarpi har bygget to stykker for meg. Den siste har jeg kjøpt ferdig bygget med ESP32 og ekstern antenne.
- Noen ledninger og gjerne hurtigtilkoblinger for LED-striper.
- En strømforsyning på 5V, " så kraftig som mulig". (Det er ikke bra å ha for svak strømforsyning, så ikke spar på pengene her). Jeg har typisk kjøpt gode, kraftige strømforsyninger på RS components.
- En adresserbar LED-stripe eller -lenke, f.eks. med WS2812B-leds 5V. Jeg har kjøpt striper som disse og lenker som disse.
Installere WLED
Jeg har prøvd og feilet litt tidligere på dette, men fant til slutt en enkel måte.
-
Last ned WLED:
- Gå hit: https://github.com/Aircoookie/WLED
- Trykk på Releases (siste versjon er i skrivende stund 0.13.3)
-
På bunnen finner du flere filer. Finn riktig fil og last ned last ned.
Har du en ESP8266/NodeMCU så skal du ha filen som slutter med "_ESP8266.bin". Har du en ESP32 skal du ha filen som slutter med "_ESP32.bin".
- Last ned ESPHomeFlasher for Windows, Mac eller Linux https://github.com/esphome/esphome-flasher/releases
- Installer og start ESPHomeFlasher. Velg .bin-filen du lastet ned i punkt 1.3 og flash denne.
- Verifiser at du (f.eks. med mobiltelefonen din) finner WLED-AP og kan koble deg til dette. Passordet er "wled1234".
Koble opp en LED-lenke/stripe
Dette er enklest forklart på WLED sine egne sider. I prinsippet handler det om å koble både ESP32/8266 og LED-stripen til samme + og -, og så koble dataporten til riktig pinne på EPS32/NodeMCU.
I sin enkleste form kan det være slik:
Det kan med fordel være en sikring før L3D-stripen, spesielt hvis du skal ha dem ute: Det er bedre at sikringen går enn at strømforsyningen blir for varm, brann er generelt dumt, og greit å unngå. Tidligere nevnte QuinLed løser dette for deg, de blir levert med sikring på kretskortet. Alle mine utendørs er QuinLed, og da kan man også velge 12V eller 24V LEDs hvis man ønsker uten for mye styr.
Når alt er klart, setter man strømsforsyningen i veggen. Hvis alt er OK, vil LEDene nå lyse gult.
Hvis de ikke lyser gult men en annen farge, så må man justere fargene på RGB, for de kan komme i mange ulike rekkefølger, gå til Settings -> LED preferences og finn "Color Order".
Innstillinger
Første jobb er å koble seg på ditt trådløse nettverk.
- Koble til WLED-AP med passord1234
- Åpne en nettleser og gå til adressen http://4.3.2.1
- Gå til Config, øverst til høyre.
- Trykk på WiFi Setup.
- Tast inn din nettverksinfo, SSID og passord.
- Hvis du har mulighet til fast IP, så kan det være en stor fordel. Konfigurer det nå.
- Trykk Save øverst eller nederst. Vent på reboot.
- Installer app'en "WLED" fra App Store eller Google Play, og åpne app'en.
- Åpne appen, og trykk på + øverst til høyre.
- Trykk på "Discover lights"
- Legg til wled-instansen den finner.
Nå er du i prinsippet klar.
Integrering
Web-grensesnitt inneholder maaange konfigurasjoner, og det er lett å gå seg vil. Her er mine raske notater om hva jeg finner hvor.
-
Alexa-integrering: Innstillinger finnes under Config -> Sync Interfaces. Bare husk å gi den navn enn noen annet enn "Light" for det kan fort skape krøll for de andre lysene.
-
HTTP-API
- Enkelt å sende kommandoer fra "hva som helst".
-
Dokumentasjonen finnes her:https://kno.wled.ge/interfaces/http-api/
-
MQTT
-
Innstillingene for dette ligger også under Config -> Sync Interfaces.
- HomeSeer, via mscMQTT. Gratis-plugin til HomeSeer, støtter WLED ut av esken. Kan scripte HTTP-integrering hvis ønskelig.
-
Home Assistant, HTTP-integrering: https://www.home-assistant.io/integrations/wled/ men andre har også brukt MQTT-integrering.
-
Innstillingene for dette ligger også under Config -> Sync Interfaces.
-
DMX og E1.31
-
xLights, QLC+, jinx er eksempler på programmer som bruker DMX-integreringen. Jeg har lange lysshow programmert i QLC+, men de fleste sprø julehus er visst for det meste programmert i xLights (for oss amatører). Jinx kan sende 2D-effekter, tall og bokstaver hvis du ønsker det.
xLights kan nok fort parkere det jeg har til nå...
-
xLights, QLC+, jinx er eksempler på programmer som bruker DMX-integreringen. Jeg har lange lysshow programmert i QLC+, men de fleste sprø julehus er visst for det meste programmert i xLights (for oss amatører). Jinx kan sende 2D-effekter, tall og bokstaver hvis du ønsker det.
Effekter
WLED har mange innebygde effekter, og i kombinasjon med ulike parametre gir det millioner av variasjoner. Her er det bare å leke.
På julelysene bruker jeg effekten "Running 2" med rød og hvit som farger som standard. Dette kjører i vinduer og på reinsdyr, stjerne og juletre til noen ute aktiverer triggere.
Triggeren i garasjevinduet er en TOF-sensor som trigger hvis avstanden blir redusert med X%.
Jeg bruker MQTT-integreringen i HomeSeer sammen med et lite script for å lage små lysshow. De spesielt interesserte kan se scriptet her:
Sub Main(parm As Object) Dim random As New Random(Now.Millisecond) Dim effects() As Integer = {7, 8, 9, 28, 29, 30, 33, 34, 38, 40, 41, 61, 66, 67, 68, 69, 70, 71, 72, 73, 74, 88, 89, 91} 'Change the Twinkly Lights 'hs.TriggerEvent("Twinkly mode - Demo") 'Update the MQTT lights For i As Integer = 0 To 6 Dim rnd As Integer = effects(random.Next(0, effects.GetLength(0) - 1)) SendMQTT("wled/juletre/api", "FX=" & rnd) SendMQTT("wled/reinsdyr/api", "FX=" & rnd) SendMQTT("wled/83ad4a/api", "FX=" & rnd) SendMQTT("wled/522620/api", "FX=" & rnd) SendMQTT("wled/324018/api", "FX=" & rnd) hs.WaitSecs(3) Next 'Reset the Twinkly Light 'hs.TriggerEvent("Twinkly mode - Movie") 'Reset the MQTT lights SendMQTT("wled/juletre/api", "FX=" & 37) SendMQTT("wled/reinsdyr/api", "FX=" & 37) SendMQTT("wled/83ad4a/api", "FX=" & 37) SendMQTT("wled/522620/api", "FX=" & 37) SendMQTT("wled/324018/api", "FX=" & 37) End Sub Sub SendMQTT(ByVal topic As String, ByVal payload As String) Dim ret As Integer Dim QOS_option As String = "EXACTLY_ONCE" Dim retain_option As String = "FALSE" Dim inputArray() As String = {topic, payload, QOS_option, retain_option} ret = hs.PluginFunction("mcsMQTT", "", "SendMqttMessage", inputArray) If (ret < 0) Then hs.WriteLog("mcsMQTT", "MQTT Message Failure for " & topic) End If End Sub
Anbefalte kommentarer
Det er ingen kommentarer å vise.
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.