Extreme Ambilight System Using [ws2801 + Arduino Uno]

47,914

127

55

Posted

Introduction: Extreme Ambilight System Using [ws2801 + Arduino Uno]

the colors in reality are 99% true , the whites in this video were more purple since im recording using my iphone :D

so, here it's guys, the ultimate ambilight clone you can make.

what are we trying to accomplish is scanning the edges of a screen and determining the average color of those spots, then apply those colors to the leds, in a fast way that we shouldn't notice any delay while watching a videos

to make this possible we need:

*addressable leds, to be exact we need the ws2801, they come in many shapes, i got the 5m strip from:

http://www.aliexpress.com/item/5M-ws2801-LED-strip...

*arduino uno microcontroller with usb cable, u can find it easily, no need to buy it online..:)

*a windows pc, i have tested this only on windows 8.1 pro x64, and lately with windows 10 pro x64

*a power supply to power the leds, in this case im using the pc power supply to get the 5 volts, DON'T use the power from the arduino or usb, it wouldn't work.

the whole project normally costs around 70$, if you are getting the whole 5m of the led strip.

let's connect those wires .. :)

Step 1: Wires Connections Diagram

connect everything from the IN side on led strip and not the out side, since this strip is not analog, it's digital, direction of data is important

the ws2801 has 4 wires to be connected, let's start with the ground, ground the led strip GND to the arduino and the powers supply ground, very important to prevent flickering.

next thing is connecting the arduino to pc, easy, using a usb cable.

to power the led strip we need 5v, tab into any not used molex connecter in your spower supply, usually 5v is the red wire, check it with a volt meter, if it's, connect it to the 5v in the led strip

two wires are lift, the SD is the data, connect it pin 11 on the arduino

last wire is the ck wire, which is the clock wire, connect it to pin 13 on arduino.

thats about all about the connections

some note:

setup your led strip around the screen, u can either have it go all around the screen, or just the main 2 sides and the top as i did, since usually the bottom of the screen isn't far from a table, it would look much better if your screen is on a wall, the closer to the wall the better.

Step 2: Code,software and Downloads

first, download arduino IDE, install it.

download this library:

fastled library downlaod

import the zip library to arduino IDE.

you need to know what com port your arduino is connected to, you can find that using the device manager.

download the sketch and upload it.

on pc, we need the capturing program, i've tested 3 programs, ambibox is the best so far, specially if you are on windows 10, it has the ability to capture your desktop and full screen apps and games, so no worries :)

Ambibox Downlaod

last thing is to install ambibox, select adalight as a device, select your com port.

count how many leds you have used around your screen, setup your scanning box, and you are good to go.

note that some strips have different color orders, the one i got is BGR so you can select that also.. :)

also note that the arduino sketch isn't the same as the one on adalight site, i found this modified faster version that works with me flawlessly

for capturing method select windows 8, even if you are on windows 10.

you can modify you color settings such as gamma and saturation to make the colors match the screen.

ambibox has many other features such as constant color and mobile control along with creating profiles for certain moods such as letterbox movies and full screen videos.

thats about all, don't forget to comment and give feed back.

7 People Made This Project!

Recommendations

  • Epilog Challenge 9

    Epilog Challenge 9
  • Gluten Free Challenge

    Gluten Free Challenge
  • Sew Warm Contest 2018

    Sew Warm Contest 2018
user

We have a be nice policy.
Please be positive and constructive.

Tips

Questions

30 Comments

if you're interested in using a custom pc client for this project please visit my new post for the new and super fast ambilight software

https://www.instructables.com/id/Ambilight-DFMirage-super-Fast-Screen-Capture-and-P/

I have added fastled library via zip library add on to my Arduino. However, when it said “download the sketch and upload it”. I don’t get it.

Where can I find the sketch and upload it? Fastled library consists of many example sketches. But which one is it?

I am newbie here. I know nothing about electronic stuff. I was happy enough to connect my RGB LED WS2801 to Arduino, and power on. Now is to comprehend the instruction to download the sketch and upload it, then learn about ambibox.

Somebody> help me on this pls?

user

Download the sketch attached to this post and upload it to your arduino. to clarify more, fastled library consists of examples sketches to preview how the library work which in our case is already figured out and implemented in the sketch attached in the post which makes your life a bit easier.

I
have added fastled library via zip library add on to my Arduino. However, when
it said “download the sketch and upload it”. I don’t get it.

Where
can I find the sketch and upload it? Fastled library consists of many example sketches. But which one is it?

I
am newbie here. I know nothing about electronic stuff. I was happy enough to
connect my RGB LED WS2801 to Arduino, and power on. Now is to comprehend the
instruction to download the sketch and upload it, then learn about ambibox.

Somebody>
help me on this pls?

I'm the only one that the arduino stops working after 10 seconds? just freeze the leds

Hi. I done step by step from yourstutorial but. when i instaled ambibox run adruino nothing happend should i do something in arduino program ? i instaled 2812b tape 180 leds.

Os there a difference between the IP30 and the IP67 on this link? Its a bit cheaper. https://m.aliexpress.com/item/32679373493.html#autostay

I think this project causing shorts to my pc PSU. Can anyone familiar with this phenomena? One of the symptoms is a PC restart loop.
I have 5v/10A PS connection to one LEDS end and to the other LEDS (2812b) end, I connected the data and GND to the Arduino, which is connected via usb to the pc.
Hope someone can help on this.
Thanks

also connect the external gnd to the arduino gnd .. might help ..

OMG thank you for this. i was having trouble with every other code i tried with led flickering with my 61 ws2801 strip when changing colors. switched to this and typed in my led number that was it and it works flawlessly now no flickering or wrong colors.