<?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>uRaNGaTaNG &#187; RainbowDuino</title>
	<atom:link href="http://www.rngtng.com/tag/rainbowduino/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rngtng.com</link>
	<description>TobiTobes Tech Weblog featuring Ruby, Rails, Web development, Arduino, Processing, Geekstuff and more...</description>
	<lastBuildDate>Thu, 01 Jul 2010 11:36:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>mtXcontrol meets Launchpad meets Rainbowduino</title>
		<link>http://www.rngtng.com/2009/12/30/mtxcontrol-meets-launchpad-meets-rainbowduino/</link>
		<comments>http://www.rngtng.com/2009/12/30/mtxcontrol-meets-launchpad-meets-rainbowduino/#comments</comments>
		<pubDate>Wed, 30 Dec 2009 15:48:44 +0000</pubDate>
		<dc:creator>tobi</dc:creator>
				<category><![CDATA[Arduino & Co.]]></category>
		<category><![CDATA[Controller]]></category>
		<category><![CDATA[launchpad]]></category>
		<category><![CDATA[mtXcontrol]]></category>
		<category><![CDATA[RainbowDuino]]></category>

		<guid isPermaLink="false">http://www.rngtng.com/?p=379</guid>
		<description><![CDATA[That&#8217;s it! I just released mtXcontrol version 1.1 with lot of updates and improvements. One major improvement is full support for Novation Launchpad: just draw your sequences and display them on your Launchpad! Even better, push the buttons to change the color, add, remove, copy &#38; paste frames. For that mtXcontrol makes usage of the [...]]]></description>
			<content:encoded><![CDATA[<p>That&#8217;s it! I just released mtXcontrol version 1.1 with lot of updates and improvements. One major improvement is full support for <a href="http://www.novationmusic.com/products/launchpad">Novation Launchpad</a>: just draw your sequences and display them on your Launchpad! Even better, push the buttons to change the color, add, remove, copy &amp; paste frames. For that mtXcontrol makes usage of the <a href="http://rngtng.github.com/launchpad">Launchpad Processing library</a> which I released some days ago.</p>
<p>But Rainbowduino support improved as well. I fixed lots of bugs and implemented requested features. Now you can control the display brightness, save up to 10 frames onto the device and serial port is auto detected. In general, I defined an basic API to communicate with the devices, which allows you to add more devices easily (e.g. monome!). With that, all Rainbowduino stuff is moved in a separate <a href="http://rngtng.github.com/rainbowduino">Rainbowduino Processing library</a>. </p>
<p><a href="http://www.rngtng.com/2009/12/30/mtxcontrol-meets-launchpad-meets-rainbowduino/"><em>Click here to view the embedded video.</em></a></p>
<p>See official <a href="http://www.rngtng.com/mtXcontrol">mtXcontrol</a> project page for more.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rngtng.com/2009/12/30/mtxcontrol-meets-launchpad-meets-rainbowduino/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mtXcontrol wins the Seeedstudio Rainbowduino Carnival</title>
		<link>http://www.rngtng.com/2009/10/22/mtxcontrol-wins-the-seeedstudio-rainbowduino-carnival/</link>
		<comments>http://www.rngtng.com/2009/10/22/mtxcontrol-wins-the-seeedstudio-rainbowduino-carnival/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 09:02:43 +0000</pubDate>
		<dc:creator>tobi</dc:creator>
				<category><![CDATA[Arduino & Co.]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[competion]]></category>
		<category><![CDATA[mtXcontrol]]></category>
		<category><![CDATA[RainbowDuino]]></category>
		<category><![CDATA[seeedstudio]]></category>

		<guid isPermaLink="false">http://www.rngtng.com/?p=274</guid>
		<description><![CDATA[Yay &#8211; the voting for the Seeedstudio Rainbowduino Carnival Competition is over. And, guess what, my project mtXcontrol made the run &#8211; I won the first price! Yipheee.. that&#8217;s 12x Rainbowduinos + 100$ Shopping voucher which I&#8217;ll invest in buying Xbee Stuff.. Can&#8217;t wait to get my hands on! Stay tuned&#8230; Thanks to everybody voting [...]]]></description>
			<content:encoded><![CDATA[<p>Yay &#8211; the voting for the <a href="http://www.seeedstudio.com/forum/viewforum.php?f=11">Seeedstudio Rainbowduino Carnival Competition</a> is over. And, guess what, my project <a href="http://www.rngtng.com/mtXcontrol">mtXcontrol</a> made the run &#8211; I won the first price! Yipheee.. that&#8217;s 12x Rainbowduinos + 100$ Shopping voucher which I&#8217;ll invest in buying Xbee Stuff.. Can&#8217;t wait to get my hands on! Stay tuned&#8230;</p>
<p>Thanks to everybody voting for my project!</p>
<p>Btw. I just released the latest version 1.02 with some bugfixes and new features in the API&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rngtng.com/2009/10/22/mtxcontrol-wins-the-seeedstudio-rainbowduino-carnival/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rainbowduino Carnival Competition Voting has started</title>
		<link>http://www.rngtng.com/2009/10/07/rainbowduino-carnival-competition-voting-has-started/</link>
		<comments>http://www.rngtng.com/2009/10/07/rainbowduino-carnival-competition-voting-has-started/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 18:31:47 +0000</pubDate>
		<dc:creator>tobi</dc:creator>
				<category><![CDATA[Arduino & Co.]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[competition]]></category>
		<category><![CDATA[mtXcontrol]]></category>
		<category><![CDATA[RainbowDuino]]></category>
		<category><![CDATA[seeedstudio]]></category>
		<category><![CDATA[vote]]></category>

		<guid isPermaLink="false">http://www.rngtng.com/?p=268</guid>
		<description><![CDATA[As mentioned in earlier post, I submitted the first public version of mtXcontrol to the Rainbowduino Carnival Competition by Seeedstudio. Now it&#8217;s time to vote for the best projects: I know, the decision will be quite hard, as a lot of other cool projects were submitted as well. Like this cool Daft Punk Helmet or [...]]]></description>
			<content:encoded><![CDATA[<p>As mentioned in earlier post, I submitted the first public version of mtXcontrol  to the <a href="http://www.seeedstudio.com/forum/viewforum.php?f=11">Rainbowduino Carnival Competition</a> by Seeedstudio. Now it&#8217;s time to vote for the best projects:</p>
<p><a href="http://www.yourfreepoll.com/mvexghzbsp.html" target="_blank"><img src="http://www.yourfreepoll.com/images/mvexghzb.gif" alt="Express your opinion!" border="0"></a></p>
<p>I know,  the decision will be quite hard, as a lot of other cool projects were submitted as well. Like this cool <a href="http://www.seeedstudio.com/forum/viewtopic.php?f=11&amp;t=440">Daft Punk Helmet</a>  or this nice <a href="http://www.seeedstudio.com/forum/viewtopic.php?f=11&amp;t=434">lipsync speaking Robot</a>&#8230; </p>
<p>Please check out the <a href="http://vimeo.com/groups/24917/videos/6916458">Raindrop Rainbowduino Game</a> by my friend ccb23 as well. It&#8217;s a Rainbowduino connected via I2C to an Arduino with an Accelerometer. With that you can move the red dot on the Matrix and avoid hitting the falling blue raindrops. nice!</p>
<p><a href="http://www.yourfreepoll.com/mvexghzbsp.html" target="_blank">Make your vote!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rngtng.com/2009/10/07/rainbowduino-carnival-competition-voting-has-started/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mtXcontrol 1.0 released &#8211; as contribution to Seeedstudio Carnival Competition</title>
		<link>http://www.rngtng.com/2009/10/06/mtxcontrol-1-0-released-as-contribution-to-seeedstudio-carnival-competition/</link>
		<comments>http://www.rngtng.com/2009/10/06/mtxcontrol-1-0-released-as-contribution-to-seeedstudio-carnival-competition/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 18:46:45 +0000</pubDate>
		<dc:creator>tobi</dc:creator>
				<category><![CDATA[Lost in Web]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[mtXcontrol]]></category>
		<category><![CDATA[RainbowDuino]]></category>

		<guid isPermaLink="false">http://www.rngtng.com/?p=261</guid>
		<description><![CDATA[As contribution for Seeedstudio Carnival I&#8217;m proud to release the version  1.0 of mtXcontrol today. It&#8217;s feature list extended quite a lot, beside new frame editing features like Frame moving and Copy &#38; Paste, it now comes with Letter / Number placer to easily draw characters. Additional the frame preview bar makes it easily to navigate between the [...]]]></description>
			<content:encoded><![CDATA[<p>As contribution for <a href="http://www.seeedstudio.com/forum/viewtopic.php?f=11&amp;t=397">Seeedstudio Carnival</a> I&#8217;m proud to release the version  1.0 of <strong>mtXcontrol</strong> today. It&#8217;s feature list extended quite a lot, beside new frame editing features like Frame moving and Copy &amp; Paste, it now comes with Letter / Number placer to easily draw characters. Additional the frame preview bar makes it easily to navigate between the frames. As of this, it was time to get an proper UI with lot&#8217;s of buttons for those who couldn&#8217;t remember all those keyboard shortcuts (like me <img src='http://www.rngtng.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> )</p>
<p>So check out this Demo:</p>
<p><a href="http://www.rngtng.com/2009/10/06/mtxcontrol-1-0-released-as-contribution-to-seeedstudio-carnival-competition/"><em>Click here to view the embedded video.</em></a></p>
<p>Check out it&#8217;s new project page with details, video and sources to download:<br />
<a href="http://www.rngtng.com/mtXcontrol">http://www.rngtng.com/mtXcontrol</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rngtng.com/2009/10/06/mtxcontrol-1-0-released-as-contribution-to-seeedstudio-carnival-competition/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Understanding the Rainbowduino Controller by Seeedstudio</title>
		<link>http://www.rngtng.com/2009/10/02/understanding-the-rainbowduino-controller-by-seeedstudio/</link>
		<comments>http://www.rngtng.com/2009/10/02/understanding-the-rainbowduino-controller-by-seeedstudio/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 18:33:04 +0000</pubDate>
		<dc:creator>tobi</dc:creator>
				<category><![CDATA[Arduino & Co.]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[RainbowDuino]]></category>
		<category><![CDATA[seeedstudio]]></category>

		<guid isPermaLink="false">http://www.rngtng.com/?p=188</guid>
		<description><![CDATA[As you may know, I&#8217;ve orderd a Rainbowduino from Seeedstudio. They delivered quite fast and I&#8217;m very happy of the price/quality/functionality ratio. In my opinion, the Rainbowduino is the cheapest ready-to-go 8&#215;8 RGB LED Controller Set at the moment &#8211; for just 43.4$ ( 19.90$ Board + 23.50$ Matrix) you are set for taking of! [...]]]></description>
			<content:encoded><![CDATA[<p>As you may know, I&#8217;ve orderd a <a href="http://www.seeedstudio.com/blog/?page_id=187">Rainbowduino from Seeedstudio</a>. They delivered quite fast and I&#8217;m very happy of the price/quality/functionality ratio. In my opinion, the Rainbowduino is the cheapest ready-to-go 8&#215;8 RGB LED Controller Set at the moment &#8211; for just 43.4$ ( 19.90$ Board + 23.50$ Matrix)  you are set for taking of!</p>
<p>My first tests went quite well. The Rainbowduino comes  with a ready to use the program/<a href="http://www.seeedstudio.com/depot/images/product/RaibowduinoCMD_Bata.rar">sketch</a> which allows you basic controls via I2C bus easily, like writing letters &amp; lines in different color and light strength. But soon I hit the limits when it came so single control each LED to my will. So no doubt, I had to dig deeper in understanding how to control the Rainbowduino. Here a short summery of my results:</p>
<p>To understand how the Rainbowduino works, I kind of reverseengineered the sketch by seeedstudio which came with the controller. As usual for driving those Matrixes, <a href="http://en.wikipedia.org/wiki/Pulse-width_modulation">PWM</a> is used as basic concept. This means the frame image is created row by row by high frequency, so human eye puts it all together to one single image.</p>
<p>To simplify this process I created the Rainbowduino.h Library, which comes with some nice methods to set frames and draw those to the Rainbowduino. It&#8217;s part of the mtXcontrol firmware an can be <a href="http://github.com/rngtng/mtXcontrol/tree/master/firmware/rainbowduino/">downloaded from github</a></p>
<p style="text-align: center"><img class="aligncenter" src="http://www.seeedstudio.com/depot/images/product/rainbowblock.jpg" alt="" width="528" height="298" /></p>
<p><strong>How it works:</strong><br />
To tell rainbowduino which row to draw the method &#8216;open_row&#8217; is called. As each row is represented by a one output PIN, this method sets the according PIN to high, all others to low. Unfortunately the row pins are not all on one port: rows 1-3 are on PORTB Bit 1-3, rows 4-8 are on PORTD Bit 4-8. This makes the method kind of bit ugly <img src='http://www.rngtng.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>After the row is selected, its time to set the pixels. One pixel consists of 3 LEDs: red, green &amp; blue. Each LED has to be separately to high or low to mix the final color (e.g. red + green is yellow). First all blue values of a row are set, then red and finally green. This happens in serial on PORTC. First bit is the value input, second bit is clock,  bit 3 the write mode bit and bit 4 to display the shifted value. Call the method &#8216;draw_row&#8217; to display a row. First parameter is the row number (0-7), second the intensity (1-16) and then the red, blue &amp; green values for the row. e.g passing the color values 1,0,0 would light the first pixel red and all other off, where as 255, 255, 255 would light up all LED and all colors, to the full row would be white.</p>
<p>To store the row values the Library comes with a frame buffer for 10 frames. (That the amount of frames we can store to EEPROM without compression as well). You can pre fill the buffer and set the frame number to display. By calling draw() the frame of the current _frame number is drawn.</p>
<p>It makes sense to call this function by a timer interrupt to not disturb your actual program progress and to ensure it&#8217;s call in regular frequency to avoid different display colors.</p>
<p>To set up the timer, include this in your code:</p>
<pre class="brush: cpp;">
Rainbowduino rainbow = Rainbowduino(10);  //max 10 Frames

void setup_timer() {
  TCCR2A = 0;
  TCCR2B = 1&lt;&lt;CS22 | 0 &lt;&lt;CS21 | 0&lt;&lt;CS20;
  TIMSK2 = 1&lt;&lt;TOIE2;
  TCNT2 = 0;
  sei();
}

ISR(TIMER2_OVF_vect) {
  rainbow.draw();
}
</pre>
<p>Now, just fill you frames with</p>
<pre class="brush: cpp;">
rainbow.set_frame(0, *data);
</pre>
<p>and your&#8217;re ready to go. Have fun!</p>
<p>First tests of the library with earlier version of <a href="http://www.rngtng.com/mtXcontrol">mtXcontrol</a>, an Editor to create images on the Matrix easily:<br />
<p><a href="http://www.rngtng.com/2009/10/02/understanding-the-rainbowduino-controller-by-seeedstudio/"><em>Click here to view the embedded video.</em></a></p></p>
<p>Stay tuned for more examples soon&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rngtng.com/2009/10/02/understanding-the-rainbowduino-controller-by-seeedstudio/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>RainbowDuino here it is! (and how to program it)</title>
		<link>http://www.rngtng.com/2009/06/25/rainbowduino-here-it-is-and-how-to-program-it/</link>
		<comments>http://www.rngtng.com/2009/06/25/rainbowduino-here-it-is-and-how-to-program-it/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 10:32:50 +0000</pubDate>
		<dc:creator>tobi</dc:creator>
				<category><![CDATA[Arduino & Co.]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[mtXcontrol]]></category>
		<category><![CDATA[program]]></category>
		<category><![CDATA[RainbowDuino]]></category>
		<category><![CDATA[uart]]></category>

		<guid isPermaLink="false">http://www.rngtng.com/?p=131</guid>
		<description><![CDATA[Yay &#8211; I finally got my RainbowDuino. Unluckily I did sth wrong with the external power connection (JST 2 pin jack) and smashed a capacitor. Maybe the polarity was wrong or it couldn&#8217;t stand the 12 volts? But luckily no damage to the main system so it still works using the terminal connector (right through [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.rngtng.com/files/2009/06/rainbowduino2.jpg" alt="rainbowduino2" width="571" height="348" class="alignnone size-full wp-image-132" /><br />
Yay &#8211; I finally got my <a href="http://www.seeedstudio.com/blog/?p=410">RainbowDuino</a>. Unluckily I did sth wrong with the external power connection (JST 2 pin jack) and smashed a capacitor. Maybe the polarity was wrong or it couldn&#8217;t stand the 12 volts? But luckily no damage to the main system so it still works using the terminal connector (right through the 5volts of the Arduino). *phew*</p>
<p>The first real basic problem I ran into <a href="http://www.seeedstudio.com/forum/viewtopic.php?f=4&amp;t=328">was how to program the Rainbowduino</a> as there&#8217;s no USB connector and I don&#8217;t have an UART interface.<br />
<a href="http://www.seeedstudio.com/blog/?p=420">But well, nothing simpler than that:</a> Just connect your Arduino&#8217;s Tx,Rx,GND,Reset and Vcc ports with those of the Rainbowduino, choose the right controller type in your IDE and program it as usual &#8211; works perfect for me!</p>
<p>Check out my <a href="http://www.rngtng.com/mtXcontrol">Rainbowduino Editor mtXcontrol here</a> &#8211; it&#8217;s an easy way to draw shapes on your rainbowduino!</p>
<p>Btw. <em>DTR</em> on Rainbowduino is <em>Reset</em> on Arduino</p>
<p><strong>UPDATE:</strong><br />
Sorry I forgot to mention, this trick does NOT work if your host arduino is a ATmega168 &#8211; you need an ATmega328 to pass serial communication through. Before that, make sure you upload this blank sketch to your host Arduino first:</p>
<pre class="brush: plain;">
/* blank sketch to upload on Arduino */
void setup()
{
}

void loop()
{
}
</pre>
<p>And, as multiple times requested, a picture of my complete setup:<br />
<img src="http://www.rngtng.com/files/2009/06/arduino_rainbowduino.jpg" alt="arduino_rainbowduino" width="600" class="aligncenter size-full wp-image-296" /></p>
<p>Make sure you&#8217;ve selected the switch right. It has to point to the same side as the green Terminal connectors are. If you power rainbowduino through the white JST jack, flip it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rngtng.com/2009/06/25/rainbowduino-here-it-is-and-how-to-program-it/feed/</wfw:commentRss>
		<slash:comments>57</slash:comments>
		</item>
		<item>
		<title>RainbowDuino &#8211; I&#8217;m comming</title>
		<link>http://www.rngtng.com/2009/06/11/rainbowduino-im-comming/</link>
		<comments>http://www.rngtng.com/2009/06/11/rainbowduino-im-comming/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 14:48:24 +0000</pubDate>
		<dc:creator>tobi</dc:creator>
				<category><![CDATA[Arduino & Co.]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[led matrix]]></category>
		<category><![CDATA[order]]></category>
		<category><![CDATA[RainbowDuino]]></category>
		<category><![CDATA[seeedstudio]]></category>

		<guid isPermaLink="false">http://www.rngtng.com/?p=124</guid>
		<description><![CDATA[Yeah! Just ordered a bunch of stuff from the Seeedstudio Shop, my new favorite Arduino parts dealer. I&#8217;m really looking forward to get the RainbowDuino into my hands. I&#8217;ve already order thier 8&#215;8 RGB LED Matrix at ebay which is really promissing&#8230; Unfortunately they are located in china to shipping takes ages ;-( More soon [...]]]></description>
			<content:encoded><![CDATA[<p>Yeah! Just ordered a bunch of stuff from the <a href="http://www.seeedstudio.com/depot">Seeedstudio Shop</a>, my new favorite Arduino parts dealer. I&#8217;m really looking forward to get the <a href="http://www.seeedstudio.com/blog/?page_id=187">RainbowDuino</a> into my hands. I&#8217;ve already order thier 8&#215;8 RGB LED Matrix at <a href="http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&amp;ssPageName=STRK:MEWNX:IT&amp;item=220324377200">ebay</a> which is really promissing&#8230; Unfortunately they are located in china to shipping takes ages ;-( More soon to come &#8230;.</p>
<p><a href="http://www.rngtng.com/2009/06/11/rainbowduino-im-comming/"><em>Click here to view the embedded video.</em></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rngtng.com/2009/06/11/rainbowduino-im-comming/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
