loading

Simple and cheap DIY interactive background lighting.

Picture of Simple and cheap DIY interactive background lighting.
DSCN2705.JPG

This instructable will show you how to make a simple and cheap atmosphere background lighting system for your PC!
This simple system can be used with the AtmoWin software, or using the AtmoLight plugin in VLC (media player) , it connects to your PC using the standard USB connection on your arduino.
It has only one channel, but it still provides a nice effect.

A video of it in action:

View on youtube

This could be expanded to two channels, for more info see the last step.

 
Remove these adsRemove these ads by Signing Up

Step 1: Parts

Picture of Parts
ledstrip.png

You will need:
- An arduino
- 3x 2k2 resistors
- 3x an NPN transistor, capable of switching 12Volts (I will be using a 2SD1062)
- A 12Volt adapter (wall wart)
- A barrel jack
- A 12Volt RGB (common anode) LED Strip (I will be using this one)
- Header pins
- Some prototyping board (I will be using some perfboard)

Step 2: Schematic

Picture of Schematic

As you can see, the schematic is quite simple, it's just the same circuit three times, one time per color.

Step 3: The hardware

Picture of The hardware
DSCN2706.JPG
DSCN2709.JPG
DSCN2710.JPG

Cut a piece of perfboard so it covers all the pin headers on the arduino, make sure the holes in the perfboard line up with the holes in the headers.
It should be about 45 by 52 mm, leaving you with a grid of 17 by 20 holes.

Start assembling the circuit, I have added a picture showing how I built the circuit on my piece of perfboard.
All the components are on top of the board (the side without the solder rings) , the blue lines are the connections on the underside of the board.
If you are using a different transistor, make sure it has the same pinout as mine (Base - Collector - Emitter) , otherwise you will need to build the circuit differently.

If you are using the same LED strip that I am using, you can cut the strip into 6 smaller segments (on the indicated lines) , you can then add some wire between each segment, which makes it easier to position them.

Step 4: Software part 1: arduino

This is the software that I wrote for the arduino.
I'm sure it could be done a lot better, but hey, it works!

Open up the attached sketch in the arduino IDE and upload it to your arduino.
This system only supports one channel, by default this is the sum channel, to change this find the following lines near the bottom of the sketch:

analogWrite(RedPin, RedSum); //change to RedLeft for left, RedRight for right, RedTop for top or RedBottom for bottom
analogWrite(GreenPin, GreenSum); //change to GreenLeft for left, GreenRight for right, GreenTop for top or GreenBottom for bottom
analogWrite(BluePin, BlueSum); //change to BlueLeft for left, BlueRight for right, BlueTop for top or BlueBottom for bottom

All the information you need is right there in the comments.
For example, if you want to use the top channel, change it to:

analogWrite(RedPin, RedTop); //change to RedLeft for left, RedRight for right, RedTop for top or RedBottom for bottom
analogWrite(GreenPin, GreenTop); //change to GreenLeft for left, GreenRight for right, GreenTop for top or GreenBottom for bottom
analogWrite(BluePin, BlueTop); //change to BlueLeft for left, BlueRight for right, BlueTop for top or BlueBottom for bottom

This could be expanded to two channels, for more info see the last step.

Step 5: Software part 2: AtmoWin

Picture of Software part 2: AtmoWin

In this step I will explain how to set up AtmoWin for this DIY interactive background lighting system.
If you want to use your interactive background lighting system all the time, use this, if you only wish to use it during movies (which I recommend) , see the next step.

If you don't have AtmoWin, you can download it from here , download links are at the bottom of the page.

One thing you will notice, is that most of it is in german, if you don't know german this can be a problem, but fear not! I will explain everything you need to change here and if you need more info, just ask!

First of all, click "Gerät konfigurieren...", you will get a new window where you can select your arduino's COM port.

- "Gerätetyp:" set this to "Atmo-Classic"
- "aktiver Effekt:" set this to "live Bild"
- if you want to use the sum channel (default) , make sure to semect "Summenzone"
- "Anzahl Zonen oben:" set this to 1 if you want to use the top channel
- "Anzahl Zonen Links/Rechts:" set this to 1 if you want to use the left or right channel
- "Anzahl Zonen unten:" set this to 1 if you want to use the bottom channel

You can use the button "auswählen" under "Feste Farbe" to test out the hardware.

The other setting don't have to be changed, if you have multiple monitors, select the one you wish to use for the interactive background lighting under "Quellmonitor:".

Step 6: Software part 3: VLC

Picture of Software part 3: VLC
vlc2.png
vlc3.png
vlc4.png

The AtmoWin software is quite CPU intensive, I only use it when watching movies or tv shows.
If you also only want to use it when watching movies or tv shows, you can set up the AtmoLight plugin in VLC media player.

If you don't have VLC (you should!) , you can download it from the official site.

To set up the plugin for this system, start VLC and go to Tools > Preferences .
A new window will open up, in the bottom left corner, change "Show settings" to "All" , the window will change.
Click the little arrow next to "Video" and select "filters", on the right side of the window, you'll see a list, under "Video filter module " select "AtmoLight" , don't select it under "Video output filter module" or else you won't see the video anymore.

Now click the little arrow next to "Filters" and select "AtmoLight" .
- Set "Device type" to "Classic AtmoLight"
- Set "Serial Port/Device" to your arduino's COM port (you have to type this)
- Find "Zone Layout for the build-in Atmo" and change "Numbers of zones on top" , "Number of zones on bottom" and "Zones on left / right side" to 1 if they're not set to 1 allready, make sure to select "Calculate a avarage zone"

You shouldn't need to change any other setting.

Now if you open a video in VLC, your interactive background lighting system should work!

Step 7: Done!

Picture of Done!
DSCN2705.JPG

Plug in the wall wart and connect it to the barrel jack (the one in your circuit, not the one on the arduino) .
Connect your arduino to your pc, fire up VLC or AtmoWin and you are ready to go!

Enjoy your simple, cheap DIY interactive background lighting!


A video of it in action:

View on youtube

Step 8: Possible expansion.

It is possible to add a second channel to this system, the arduino has a total of six output pins that support PWM.
You can build the circuit again and connect the transistors to pins 3, 5 and 6 instead of 9, 10 and 11.
I have attached an alternate arduino sketch, by default it is set up to use pins 9, 10 and 11 for the left channel and pins 3, 5 and 6 for the right channel, you can change this easily by editing the 6 lines near the bottom of the sketch (see step 4 for more info) .

Gabse1 year ago
COOL!!!!!!! But is it also possible to connect it to the internal of the monitor (T-CON Board, ect.)?
bluem62 years ago
Will any Arduino work like the nano?
Roby913 years ago
Please, what's the name of that the schematic 3d generator software?
g0tmk Roby912 years ago
It looks to me like it could be http://fritzing.org/
Killadobby3 years ago
Where exactly do you use the Arduino ? Is it between the PC and the perf boards(I am a tech newbie) ?
What does AtmoWin actually do? I am wondering if this works when watching TV with the TV'sl built in tuner. Does this only work with the PC?

It looks like AtmoWin is a Windows program, based on the name. Anyone try it in Linux under Wine.

Sorry for the barrage of noob questions.
fantasy23 years ago
Congrats, that looks really nice! I just started a crowd funding alternative for the people that do now know how to make one:
http://www.indiegogo.com/IntenseLight-TV-Light-Controller?a=335780
dtokez3 years ago
Cant seem to find those transistors either, any others that can be used?
ooh dtokez3 years ago
I did a search for 2SD1062 and found them on eBay from a store called "littlediode". Had them in a few days.
drabina3 years ago
For those still looking for replacement transistors, check out part # 526-NTE152 at Mouser.
drabina3 years ago
Any info on the substitutes for the 2SD1062 transistors?
hide983 years ago
Great instructable. I'd love to try it, but having a little trouble finding where to buy the appropriate transistors, even with the product number you provided. Did anyone have any success finding some online?
bummy13 years ago
Question? Which Arduino board to use? Will the mini work? I see a Mega, Mini, and UNO at DitenTec. And then do you just mount the led strips on the back of the monitor? I have limited experience but believe I can do it.
Thanks, Dave
yonsje (author)  bummy13 years ago
The mini will work but you'll need something like the Mini USB adapter to be able to connect it to your computer. I used a Duemilanove, this is basically an older version of the UNO.
joshua17ss23 years ago
http://www.youtube.com/watch?v=vkvkC2jdw30

finished making the system and tested it on my laptop, thanks for all the info. works perfect and looks awesome in person
yonsje (author)  joshua17ss23 years ago
Looks great!
You are even using the same futurama episode as me :)
yup had it sitting on the laptop.

I have run in to a small glitch i cant seem to figure out. I installed the finished board on my big tv and media computer ( which has an onboard vga, and an addon card (vga and DVI)) I am using the dvi out to connect to my tv. i switched the setting on the atmo program to that screen, and it work perfect, on the desktop matches the color of the folders and desktops, but when i launch vlc, (full screen or partial, the strip just sets to a white color, and dosent change,
Ive tried all the settings and still cant get it to work quite right for videos. it still works perfect on my laptop.

Any thoughs on why it would do this?
yonsje (author)  joshua17ss23 years ago
Weird, the only thing I can think of is to change the video output to DirectX and select you tv under "Display device"
rezonx3 years ago
Some pictures are missing ;(
wiisos4 years ago
Nice project! I have searched for days for something detailled like this! but I'm looking for DIY Ambilight with at least three channels. It's possible? and use this RGB Strip and arduino nano v3?
http://www.dealextreme.com/p/rgb-multicolored-1-meter-30-led-6w-light-strip-dc-12v-14965

Anyway you have my vote and 5 stars.
yonsje (author)  wiisos4 years ago
You would need at least 9 output pins that support PWM, the arduino nano only has 6. It may be possible using the Teensy++ since it can be used with the arduino IDE and has exactly 9 output pins that support PWM, I'll look into it later since it would be a great upgrade for this project!
wiisos yonsje4 years ago
waiting... :D
yonsje (author)  wiisos3 years ago
I did some testing and it seems like it works, the only problem is that it doesn't seem to turn off the lights when you exit VLC/AtmoWin, I'm guessing it has something to do with the way the Teensy and the Arduino handle the serial connection, I'll have to do some more testing.
wiisos yonsje3 years ago
Nice! Keep it up!
ohh. i love futarama. it is so totally awesome.
Mr Earl4 years ago
you could easily add more channels if you used one of these addressable rgb led strips:
http://www.sparkfun.com/products/10312
It's one meter long and has 32 LEDs - so you could make 32 channels with one strip and all you need is two pins on the Arduino for clock and data. You also can daisychain them if you needed to (larger TV; just mor channels;...)

However, the whole strip can draw up to 1.8 amps (all LEDs whtie), so choose a power supply which can handle this amount of current.
I have tried to fade between different colors (max 2 subleds are on) and it was possible to run it from the 5V of the arduino which was powered by usb with no issues.

awesome project btw.
Hi, I've seen on the DS site someone complaining about the green led being less bright than the red and blue ones. On the video you posted I also noticed that the scene where the doctor comes in should be yellow but instead it is reddish/orange, Is this a small bug or is the green led really an issue? Thanks.
yonsje (author)  marcosgildavid4 years ago
I haven't really noticed too much about this, but you can just change the whitebalance in the software so the colors look better.
Thanks for the reply. This is a really nice project. Congratulations. ;-)