Extreme Ambilight System Using [ws2801 + Arduino Uno]

by h0uri in Circuits > LEDs

71729 Views, 143 Favorites, 0 Comments

Extreme Ambilight System Using [ws2801 + Arduino Uno]

IMG_0515.JPG
Ambilight Ambibox with arduino uno + ws2801

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 .. :)

Wires Connections Diagram

Untitled-1.jpg
Untitkled-1.jpg

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.

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.