<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jon&#039;s Home Blog &#187; Arduino</title>
	<atom:link href="http://thaltech.com/houseblog/category/arduino/feed/" rel="self" type="application/rss+xml" />
	<link>http://thaltech.com/houseblog</link>
	<description>Home Ownership Terrors, Recreation, and Hobbies</description>
	<lastBuildDate>Sat, 08 Oct 2011 05:38:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>My Arduino AtmoLight/Ambilight Clone Project</title>
		<link>http://thaltech.com/houseblog/2010/08/21/my-arduino-atmolightambilight-clone-project/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=my-arduino-atmolightambilight-clone-project</link>
		<comments>http://thaltech.com/houseblog/2010/08/21/my-arduino-atmolightambilight-clone-project/#comments</comments>
		<pubDate>Sat, 21 Aug 2010 21:42:42 +0000</pubDate>
		<dc:creator>JonC</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[Light Art]]></category>
		<category><![CDATA[ShiftBrite]]></category>

		<guid isPermaLink="false">http://thaltech.com/houseblog/?p=1077</guid>
		<description><![CDATA[I was researching a project online the other day when I came across a project on Blogspot about how to make your own Atmolight/Ambilight type setup using an Arduino Deumilanove,  a ShiftBrite Shield and ShiftBar modules from Macetech and some 12v LED RGB lighting strips. It was kind of amazing as I had all the [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_jade" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fthaltech.com%252Fhouseblog%252F2010%252F08%252F21%252Fmy-arduino-atmolightambilight-clone-project%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22My%20Arduino%20AtmoLight%2FAmbilight%20Clone%20Project%20%22%20%7D);"></div>
<p>I was researching a project online the other day when I came across a project on Blogspot about how to make your own Atmolight/Ambilight type setup using an <a title="Arduino Duemilanove" href="http://arduino.cc/en/Main/ArduinoBoardDuemilanove" target="_blank">Arduino Deumilanove</a>,  a <a title="Shiftbrite Shield" href="http://macetech.com/store/index.php?main_page=product_info&amp;cPath=4&amp;products_id=7" target="_blank">ShiftBrite Shield</a> and <a title="Macetech Shiftbar Modules" href="http://macetech.com/store/index.php?main_page=product_info&amp;cPath=1&amp;products_id=10" target="_blank">ShiftBar</a> modules from Macetech and some 12v LED RGB lighting strips. It was kind of amazing as I had all the parts I needed on hand and didn&#8217;t have to order or wait for anything.  The project calls for using the ShiftBar modules and RGB LED strips, but I have a hand-full of ShiftBrites and MegaBrites that I had used for another project.  There is no code difference between driving the ShiftBar, ShiftBrite and MegaBrite so I didn&#8217;t have to do any major changes to the code from <a title="AtmoLight Clone" href="http://fun3md.blogspot.com/2009/07/atmolight-clone-project.html" target="_blank">The AtmoLight Clone Project Site</a>.</p>
<p>The *Brite modules are generally setup to receive the shifted data from the SPI I/O port. This leads to good performance and fast updates since they are being hardware driven. Unfortunately I needed those pins for an older project I was working on which used the ShiftBrite shield and an Ethernet shield so I had rewired the ShiftBrite Shield to use other pins so the Ethernet shield could use the hardware SPI.  The owner over at Macetech helped me build a bit-banging interface to do the SPI I/O to the ShiftBrites via software.  The AtmoLight Clone project uses the stock Macetech code which made it easy to replace with my modified ShiftBrite driver code.  This different code is slower on the output, but it&#8217;s not noticeable on a small number of ShiftBrites with limited data.</p>
<p>I mounted the ShiftBrite modules onto the back of my primary 21&#8243; monitor.  I have 2 ShiftBrite modules which point upwards, 2 to the left, 2 pointing down and 2 to the right with one MegaBrite module pointing straight back in the center for the summary channel.</p>
<p>Once your hardware and software on the Arduino you need to interface it to your computer.  The Atmo interfaces connect through the Serial/Com port at 38400 baud.  If your computer supports the USB com port of the Arduino, you should be able to connect to it.  Make sure in the setup section of your code that you only have one serial start statement, and that it&#8217;s set for 38400.</p>
<p>I tried two different ways to get the data to the Arduino.  The first was to use <a title="Archive VideoLAN / VLC Downloads" href="http://download.videolan.org/pub/videolan/vlc/" target="_blank">an older version of VideoLan/VLC Player</a>.  The <a title="VideoLAN / VLC Media Player" href="http://www.videolan.org/vlc/" target="_blank">current version of VLC</a> (as of 8/21/2010) does not seem have the built-in Atmo output code. If you&#8217;re putting something like this together, check to see if the new versions have it, the author of the VLC Atmo module said on another forum that he was working to get the Built-In Atmo code back into the package.</p>
<p><a href="http://thaltech.com/houseblog/wp-content/uploads/2010/08/VLC-AtmoLight-Setup-Screen.jpg" rel="shadowbox[post-1077];player=img;"><img class="alignnone size-medium wp-image-1079" title="VLC AtmoLight Setup Screen" src="http://thaltech.com/houseblog/wp-content/uploads/2010/08/VLC-AtmoLight-Setup-Screen-287x300.jpg" alt="" width="287" height="300" /></a></p>
<p>The Atmo plugin for VLC works very well, capturing average colors from the top, bottom, left, right and middle portions of the video it&#8217;s playing (as seen in the screen shot below from AtmoWin) and outputting that color information to the Arduino/ShiftBrite LED modules. It&#8217;s pretty quick and there are a lot of options which you can set to vary how quickly the lights respond, if they fade slowly or if they adapt quickly to the video input.  You can adjust the white balance of your modules, set a color for the LEDs to fade to in case you pause the video, and set a color that the LEDs will display once the video is complete.</p>
<p><a href="http://thaltech.com/houseblog/wp-content/uploads/2010/08/AtmoLightDummyInterface.jpg" rel="shadowbox[post-1077];player=img;"><img class="alignnone size-medium wp-image-1078" title="Atmo Light Dummy Interface" src="http://thaltech.com/houseblog/wp-content/uploads/2010/08/AtmoLightDummyInterface-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>The second option I tried is <a title="AtmoWin" href="http://arduinoatmo.googlecode.com/files/atmoWin_0.45.zip" target="_blank">AtmoWin</a>, which is for Windows only and in German. It takes a few minutes to figure out what all the stuff stands for, and Google translate may be helpful as well. I believe this software is written by the guy in the main project page.  This software runs in your system tray and has several output modes such as Atmo-Classic, Dummy(shows what the program is sampling), DMX, Null Device, Multi-Atmo (run up to 4 Atmo devices on 4 Com ports) and MondoLight.  The software captures the entire screen and is not limited to just a video window.  It does the same 5 point capture pattern, but of whatever you have showing in your desktop.  You can set the capture framerate (it defaults to 25).  The response time for this software seems very quick on my computer. AtmoWin also supports multiple monitors and you can choose which monitor the system will capture.</p>
<p><a href="http://thaltech.com/houseblog/wp-content/uploads/2010/08/Atmo-Win-X-Interface.jpg" rel="shadowbox[post-1077];player=img;"><img class="alignnone size-medium wp-image-1080" title="Atmo Win X Interface" src="http://thaltech.com/houseblog/wp-content/uploads/2010/08/Atmo-Win-X-Interface-300x243.jpg" alt="" width="300" height="243" /></a></p>
<p>One thing to note is that when running some games in full screen mode it cannot capture the colors.  I ran Battlefield: Bad Company 2 in a full screen -window- however and it worked fine, adding some great effects to my gaming sessions!</p>
<p>This is the link to the main project page which provided me the information to build my own setup, make sure to check it out after watching my video below.</p>
<p><a title="Fun3's AtmoLight Clone" href="http://fun3md.blogspot.com/2009/07/atmolight-clone-project.html" target="_blank">Fun3&#8242;s Blogspot Page &#8211; AtmoLight Clone</a></p>
<p id="watch-headline-title"><a title="Arduino with Shiftbrites with AtmoWinX " href="http://www.youtube.com/watch?v=pego4uJbqlE" rel="shadowbox[post-1077];player=swf;width=640;height=385;" target="_blank">Arduino with Shiftbrites with AtmoWinX</a> &#8211; Link to the YouTube video below in case the embedded player doesn&#8217;t work for you.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="350" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/pego4uJbqlE" /><embed type="application/x-shockwave-flash" width="425" height="350" src="http://www.youtube.com/v/pego4uJbqlE"></embed></object></p>

<img src="http://thaltech.com/houseblog/?ak_action=api_record_view&id=1077&type=feed" alt="" />

<h3>Related Posts</h3>
<ol>
		<li><a href="http://thaltech.com/houseblog/2009/08/11/arduino-has-slowed-me-down/" rel="bookmark">Arduino Projects Have Slowed Me Down!</a><!-- (46.5)--></li>
		<li><a href="http://thaltech.com/houseblog/2011/03/02/new-project-underway/" rel="bookmark">New Project Underway</a><!-- (18.6)--></li>
		<li><a href="http://thaltech.com/houseblog/2009/09/02/reactor-biplane-copper-vapor-laser-and-the-sidewalk-project/" rel="bookmark">Reactor Biplane, Copper Vapor Laser and &#8216;The Sidewalk Project&#8217;</a><!-- (15.5)--></li>
	</ol>
]]></content:encoded>
			<wfw:commentRss>http://thaltech.com/houseblog/2010/08/21/my-arduino-atmolightambilight-clone-project/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Arduino Projects Have Slowed Me Down!</title>
		<link>http://thaltech.com/houseblog/2009/08/11/arduino-has-slowed-me-down/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=arduino-has-slowed-me-down</link>
		<comments>http://thaltech.com/houseblog/2009/08/11/arduino-has-slowed-me-down/#comments</comments>
		<pubDate>Tue, 11 Aug 2009 23:38:23 +0000</pubDate>
		<dc:creator>JonC</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[led]]></category>
		<category><![CDATA[Light Art]]></category>

		<guid isPermaLink="false">http://thaltech.com/houseblog/?p=844</guid>
		<description><![CDATA[Sorry folks, I know I&#8217;ve been pretty slow to update the site, it&#8217;s just that I bought an Arduino Duemilanove development board , an Ethernet shield from sparkfun electronics and some MegaBrite, ShiftBrite and OctoBrite modules from MaceTech.   I have some experience in programming the atmel Mega series of micro-controllers so it was pretty easy [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_jade" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fthaltech.com%252Fhouseblog%252F2009%252F08%252F11%252Farduino-has-slowed-me-down%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Arduino%20Projects%20Have%20Slowed%20Me%20Down%21%22%20%7D);"></div>
<p>Sorry folks, I know I&#8217;ve been pretty slow to update the site, it&#8217;s just that I bought an <a title="SparkFun - Arduino USB Board" href="http://www.sparkfun.com/commerce/product_info.php?products_id=666" target="_blank">Arduino Duemilanove</a> development board , an Ethernet shield from sparkfun electronics and some MegaBrite, ShiftBrite and OctoBrite modules from <a title="MaceTech Store" href="http://www.macetech.com/store/" target="_blank">MaceTech</a>.   I have some experience in programming the atmel Mega series of micro-controllers so it was pretty easy to get into working with the Arduino. The USB interface is great, it uses a USB serial interface and the board is powered via USB (OR external supply).   You plug in the Arduino and then install a couple of drivers and your set.</p>
<p>The Arduino IDE is pretty flexible and easy to build with and it includes a built in serial monitor so you can send reports back from your little project. Additionally there are quite a few example projects and a reasonable resource base on the internet for finding out most anything you need to do whatever you might want to do.</p>
<p>My project is pretty generic, it&#8217;s a simple lighting system with LEDs. I chose the MegaBrite, ShiftBrite and OctoBrites because they&#8217;re already built and they&#8217;re pretty easy to program.  They use a bit-shift register so in order to send data to 20 of them, you just stream out 20 sets of data to the set and there you go.  There&#8217;s libraries for them so you don&#8217;t have to do all the bit shifting yourself.  You basically just need to send the data to an array for LED position and RGB values (0 &#8211; 1023) and your set.  I was very happy with how easy this was to setup, and the guy over at MaceTech has been very helpful with some non-common questions I had.   The MegaBrite modules were around $10 each, the ShiftBrite around $5, and the OctoBrites a bit more expensive at $24.   The arduino itself only cost $29.95!!</p>
<p>You can&#8217;t beat a deal like that, $29.95 for a completely programmable microcontroller development set, ready to plug and play (you could beat it if you built the programmer and other circuitry yourself, but.. I like things &#8216;ready to go&#8217;.)</p>
<p>I wanted to be able to control these LEDs via a serial port, and I&#8217;m a terrible computer programmer type, however I&#8217;m most familiar with PHP/MYSQL, etc.   I originally downloaded the NetBeans IDE for Java and tried to write a Java control program. Trying to do serial communications in Java is a bit of a nightmare, because most of the libraries are old, unsupported or broken.  Though there may be one way to do serial for Java pretty easily, I&#8217;ll cover that next.</p>
<p>I gave up on Java after a DAY of trying to find a working serial library.  I resorted back to PHP to see what could be done there.  I downloaded <a title="Apache Friends - XAMPP" href="http://www.apachefriends.org/en/xampp.html" target="_blank">XAMPP from Apache Friends</a> which is a complete web server, php, mysql, etc solution.  Everything you need to experiment with PHP on your PC without installing Linux and other things. I had originally tried the <a title="php_serial class, okay for Linux I guess" href="http://www.phpclasses.org/browse/package/3679.html" target="_blank">php_serial </a>class.  It didn&#8217;t work, period and also there are some possible coding deficiencies discovered after reading various message boards.  It is a good library to use if you want to communicate in Linux, but I wouldn&#8217;t recommend it for window.</p>
<p>After a bit more search I found some references to <a title="SerProxy at freshmeat.net" href="http://freshmeat.net/projects/serproxy/" target="_blank">SerProxy</a>, it&#8217;s basically a proxy server that works as an interface between your Windows serial ports and any programming language which can do TCP/IP network communications. There are pre-compiled windows versions available or you can compile it yourself. I found a few examples online and within minutes had my PHP application sending the control codes to the Arduino code I had written.  It&#8217;s so much faster than php_serial seemed to be (long delays). It didn&#8217;t cost anything and it also supports 2 way connections in PHP under Windows, something that the php_serial class did not provide.</p>
<p>I&#8217;ve spent quite a bit of time playing with this little project of mine, as well as I am busy working on building a copper vapor laser.  You can keep up to date with my laser projects over at <a title="Jon's Hobby Lasers" href="http://www.thaltech.com/laserblog" target="_blank">my laser blog</a> .  Quite a few things to distract me from working on the house and such.  This weekend though we will be working on digging out the base for the new concrete front sidewalk and I will be posting pictures and information about that so stay tuned!</p>

<img src="http://thaltech.com/houseblog/?ak_action=api_record_view&id=844&type=feed" alt="" />

<h3>Related Posts</h3>
<ol>
		<li><a href="http://thaltech.com/houseblog/2010/08/21/my-arduino-atmolightambilight-clone-project/" rel="bookmark">My Arduino AtmoLight/Ambilight Clone Project</a><!-- (54.3)--></li>
		<li><a href="http://thaltech.com/houseblog/2009/07/27/general-update-toilet-dimming-lights-lasers-weather-air-conditioners-lawn/" rel="bookmark">General Update &#8211; Toilet Dimming Lights, Lasers, Weather, Air Conditioners, Lawn</a><!-- (17.8)--></li>
		<li><a href="http://thaltech.com/houseblog/2010/08/30/updated-blog-with-wptouch-for-mobile-compatibility/" rel="bookmark">Updated Blog with WPtouch for Mobile Compatibility</a><!-- (11.7)--></li>
	</ol>
]]></content:encoded>
			<wfw:commentRss>http://thaltech.com/houseblog/2009/08/11/arduino-has-slowed-me-down/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

