DIY Ambilight med Arduino och RGB LED-remsa

När nu ens stora skärm hamnade mot väggen så fick man tillbaka suget för ett DIY ambilight projekt igen. Jag använde en RGB LED-remsa, separat nätaggregat och en Arduino Uno för detta projekt. Arduinon är kopplad med USB till min dator där Prismatik sköter resten.

Länkar:
Arduino Uno:
https://store.arduino.cc/arduino-uno-rev3

LED remsan
https://www.amazon.se/gp/product/B08JJ7FLV3/ref=ppx_yo_dt_b_a...

Nätaggregatet
https://www.electrokit.com/produkt/switchat-nataggregat-5v-10...

Notera om du ska göra nåt sånt här själv får du räkna ut hur mycket det drar. På min 40" blev det 164 LEDs. Varje LED drar 0.2W och ska ha 5V. Detta drar då max 32.8W. En 5V/10A har max effekt 50W vilket ger mig lagom med headroom.

Utöver dessa huvudenheter behövde jag en strömkabel till nätaggregatet, schysst dubbelhäftande tejp, en USB-A till USB-B till arduinon för jag tog endast enheten utan tillbehör samt andra småkablar för koppla ihop allt. Ska man göra det snyggare än mig klipper man även LED-remsan och löder ihop vid hörnena. Tror inte det gör större skillnad men snyggare är det.

Fler länkar:

Program som används är Arduinos egna för ladda upp till arduinon.
https://www.arduino.cc/en/Main/Software_

Programmet man laddar upp till sin Arduino, kalibrerat rätt ordning (GRB = RGB) för denna LED-remsa:
https://github.com/Wifsimster/adalight_ws2812

Prismatik som läser av skärmen och skickar infon till arduinon:
https://github.com/psieg/Lightpack/releases

Prismatik kom ut ett bra tag sedan till Lightpack för de som minns. Sweclockers artikel om Lightpack. Sedan dess har användare gjort mjukvaran avsevärt bättre än den var förr. Mycket snålt program att ha i bakgrunden.

Så här ser Prismatik ut i windows:

Dold text

Så här ser det ut när Prismatik jobbar med screengrab. I setup får man skriva in antal LED i sin remsa, i vilken ordning de följer, hur de är upplagda tex om du bara har LED på sidorna om skärmen eller skippat LEDs vid skärmfoten. Jag kan ändra på storleken på rutorna och flytta runt de om jag så önskar.

Dold text

Grov förklaring vad som sker:
Skärmen är kopplad till datorn som en vanlig skärm. Vilken skärm som helst kan användas.
Mjukvaran Prismatik i windows läser av skärmen för att se vilka färger som visas.
Datorn är kopplad med USB till en Arduino Uno.
Prismatik skickar informationen till Arduinon.
Arduinon är direkt kopplad till LED-remsan och skickar då den datan Prismatik samlat in till LED-remsan.

Hur jag har kopplat det:

Dold text

Jag följde denna video för generell guide:
https://youtu.be/nzDnr76fZCc

Denna artikel hade även bra information:
https://www.makeuseof.com/tag/make-ambilight-60/

Är det något ni undrar över är det bara att fråga

För den som undrar om delay, genom att räkna bildrutor i en 120 FPS video är det från ca 60ms till 110ms. Det varierar en del alltså.