More Ambient Lighting Monitor Hacks

[Christian Pigeon’s] first big project was to build this ambient light system for his computer monitor. This is based on the same concept as the Phillips Ambilight system which illuminates the area behind a television to match the color on the edges of the screen. We’ve seen clones before, but this is the first one we’ve come across based on Amblone.

With Amblone as a starting point [Christian] modified the code to work with the Arduino Duemilanove which has fewer PWM channels than its bigger brother, the Arduino Mega. No word on where he acquired the RGB LED strips that provide the illumination, but the driver boards are just protoboard with groups of resistors and transistors to switch the diodes on and off. Check out the video after the break to see effects he achieves with this setup.

[youtube=http://www.youtube.com/watch?v=GubwmI5KR64&w=470]

19 thoughts on “More Ambient Lighting Monitor Hacks

  1. I just had an idea for a purely analog version of this. Tap into a VGA cable, run each color channel through an integrating op-amp, and use the output of the op-amps to drive the LEDs. Sure, it doesn’t have the flexibility or configurability of a microcontroller-based device, but it’d cost about $1 worth of parts and wouldn’t require driver downloads, extra software, or any CPU usage.

  2. if mohonri pulls his idea off I might try to do the same thing.. once I’ve got my workbench ready this might also be a project I’ll be working on.

    It seems a pretty accurate and quick performing thing. If you’re on windows amblone seems pretty nice.. but for people running linux it might be a bigger pain.. :)

    Any advice for linux users?

  3. Amblone works nice in Windows 7 but without AERO running. Learned that after troubleshooting forever. The problem is that it only works with things being processed at the CPU level. Blu-Ray is a no go or else I would still have my amblone system setup.

    Here’s a source for RGB SMT LEDs. A pain because you have to wait for them to ship from China but decent quality especially for the price. The reviews on dealextreme are pretty spot on.
    http://www.dealextreme.com/p/rgb-multicolored-1-meter-30-led-6w-light-strip-dc-12v-14965

  4. does this work better than my hack, duct-taping another monitor to the back of your monitor, flipping horizontally and putting a mirror on the wall (flipping/mirror optional) ?

  5. @Bernhard woah nice.. that’s how I imagined it should be done.

    @Jeditalian: ROFL XD would probably be cheaper too, at least for a monitor, a 15incher behind it would cost less than the LEDs…

  6. Go Milkdrop! You can get that visualization really easily if you download mediamonkey or winamp. The one in the post picture is one of my favorite ones (A Million Miles from Earth is what it’s called if I remember right) Makes the ambient lighting look that much cooler.

  7. @Bernhard Thats very impressive! I see you use addressing which is an obvious choice for this kind of build. Now thats really something to work towards! I just love RGB light projects :D out of curiosity how much for those parts? and where did you find them?

  8. @pigeon: its not my build, mine never completely worked, it is still undocumented.
    I used 4 TLCs, in a SPI chain (strangely, the last one always gets hot). I used common cathode rgb superflux leds. The cathodes of 16 go to the TLC current sinks. All R G and B Anodes are sourced by single p?-channel mosfets, for the multiplexing.
    I set the tlcs to the desired pwm states for “red”, turn on the red mosfet, and do one pwm cycle via bit-banging 2^10 clocks (The TLCs need external clock for the pwm). I disable red, set intended green pwms, and enable the green mosfet, …
    Problem: Data transfer is via USB-TTL 115kbaud, basically all the time, 64x3Bytes take a while to send. Then, there is a lot of currents and noise. So i get errors. And the serial sometimes looses bytes resulting in shift. Error correction decreases the transfer rate, and decrease the refresh rates (I partially reprogrammed Atmowin therefore).
    Also, processing of serial input disturbs the TLC clock bit banging, and causes flicker.

  9. DealExtreme is really backed up at the moment because of the Chinese holiday, but they have the awesome RGB ropes. (afaik, the same that adafruit sells) But buy from adafruit if you want it this year!

    Here are some links I compiled on these cool ambient lighting systems:
    http://brunql.github.com/ambilight/
    http://saikoled.com/
    http://hardware.slashdot.org/story/10/11/19/1825242/Arduino-Based-High-Powered-LED-Lighting-Over-Wi-Fi?from=rss
    http://siliconrepublic.blogspot.com/2011/02/arduino-based-pc-ambient-lighting.html
    Especially interesting are the open source high power can lights, those would be boss with a color averaging app. I put all these in this compilation post here: http://electrosthetics.blogspot.com/2010/11/things-are-coming-together-now.html

    I’m still waiting for my DX RGB strip order to ship, it’s been a month. My original Philips Ambilight system is barely holding together.. both main wallwashers are basically dead, although the satellites work still.

    I’m glad people are still working on these systems, they really set a cool mood around your PC. (not to mention games)

  10. I like Mohonri’s idea of monitoring the VGA pins. It would be cool to adapt this to TV by monitoring the composite or component video output of a TV, although I don’t know anything about those standards.

    Anybody know how to get started hacking TV outputs?

  11. Well about the VGA adapter idea, i guess the best way to go would be to try to get the vertical scan signal, and find the time it takes to do the whole screen, then chop that in half and make a colour median or something of the sort. Ill research and post when I have the time. :D

  12. For the analog version, you’d just have to make sure that the time constant on the integrating amplifier is large enough to average at least an entire refresh cycle. So let’s take a 60Hz monitor, and make the time constant 33mS. The voltages on the VGA lines are 0-0.7V, but even with the porch and blanking interval, you’d just have to set the gain accordingly.

Leave a Reply to GrimmCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.