<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Bionic Arduino – Introduction to Microcontrollers with Arduino</title>
	<atom:link href="http://todbot.com/blog/bionicarduino/feed/" rel="self" type="application/rss+xml" />
	<link>http://todbot.com/blog</link>
	<description>Random experiments, circuits, code, rapid prototyping, sometimes things to buy, and the odd tune by Tod E. Kurt.</description>
	<lastBuildDate>Sun, 14 Mar 2010 04:13:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Tiltool &#124; Erez Kikin-Gil &#124; Interaction + Design &#187; Tod E. Kurt&#8217;s Spooky Projects</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-61760</link>
		<dc:creator>Tiltool &#124; Erez Kikin-Gil &#124; Interaction + Design &#187; Tod E. Kurt&#8217;s Spooky Projects</dc:creator>
		<pubDate>Tue, 02 Mar 2010 16:32:28 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-61760</guid>
		<description>[...] Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software (http://www.arduino.cc/) , which I use very often in my projects (http://www.tiltool.com/projects.htm). Tod E. Kurt (from thingm.com) just posted Spooky Projects -a set of four 3-hour classes, focused on microcontroller programming and interfacing with the real world using the Arduino physical computing platform. Links: http://todbot.com/blog/spookyarduino/ http://todbot.com/blog/bionicarduino/ [...]</description>
		<content:encoded><![CDATA[<p>[...] Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software (<a href="http://www.arduino.cc/" rel="nofollow">http://www.arduino.cc/</a>) , which I use very often in my projects (<a href="http://www.tiltool.com/projects.htm" rel="nofollow">http://www.tiltool.com/projects.htm</a>). Tod E. Kurt (from thingm.com) just posted Spooky Projects -a set of four 3-hour classes, focused on microcontroller programming and interfacing with the real world using the Arduino physical computing platform. Links: <a href="http://todbot.com/blog/spookyarduino/" rel="nofollow">http://todbot.com/blog/spookyarduino/</a> <a href="http://todbot.com/blog/bionicarduino/" rel="nofollow">http://todbot.com/blog/bionicarduino/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: todbot</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-60138</link>
		<dc:creator>todbot</dc:creator>
		<pubDate>Thu, 18 Feb 2010 21:33:50 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-60138</guid>
		<description>Hi Richard,
The port name will be the same as the one you use with Arduino, under the &quot;Tools -&gt; Serial Port&quot; menu.  The exact value will be different for every Arduino. 
 
(You can use this fact to distinguish between multiple connected Arduinos and have them do different things. For instance, I have one Arduino that is &quot;/dev/tty.usbserial-A4001lZf&quot; and another Arduino that is &quot;/dev/tty.usbserial-A7006xIM&quot;)</description>
		<content:encoded><![CDATA[<p>Hi Richard,<br />
The port name will be the same as the one you use with Arduino, under the &#8220;Tools -> Serial Port&#8221; menu.  The exact value will be different for every Arduino. </p>
<p>(You can use this fact to distinguish between multiple connected Arduinos and have them do different things. For instance, I have one Arduino that is &#8220;/dev/tty.usbserial-A4001lZf&#8221; and another Arduino that is &#8220;/dev/tty.usbserial-A7006xIM&#8221;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richard</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-60130</link>
		<dc:creator>Richard</dc:creator>
		<pubDate>Thu, 18 Feb 2010 20:04:36 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-60130</guid>
		<description>Hi Tod... thanks for the awesome site. I&#039;m having trouble getting Processing to connect with my Arduino board. Specifically with the ArduinoPong sketch. I close all Arduino applications and have only the ArduinoPong sketch window open but it receives no input. I am certain that my board is transmitting with the PotSend sketch. I am using port10. I use: &quot;/dev/tty.usbserial-A4001qa10&quot; as the port name. Any help appreciated. Thanks in advance.</description>
		<content:encoded><![CDATA[<p>Hi Tod&#8230; thanks for the awesome site. I&#8217;m having trouble getting Processing to connect with my Arduino board. Specifically with the ArduinoPong sketch. I close all Arduino applications and have only the ArduinoPong sketch window open but it receives no input. I am certain that my board is transmitting with the PotSend sketch. I am using port10. I use: &#8220;/dev/tty.usbserial-A4001qa10&#8243; as the port name. Any help appreciated. Thanks in advance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Arduino blogs &#124; Tangible Experiments</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-58090</link>
		<dc:creator>Arduino blogs &#124; Tangible Experiments</dc:creator>
		<pubDate>Sat, 21 Nov 2009 20:07:57 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-58090</guid>
		<description>[...] that is regularly updated. What I have found really useful is Tods four 3 hour  arduino course: Bionic Arduino. The complete course documentation as pdfs with colour photographs is available for anyone to use. [...]</description>
		<content:encoded><![CDATA[<p>[...] that is regularly updated. What I have found really useful is Tods four 3 hour  arduino course: Bionic Arduino. The complete course documentation as pdfs with colour photographs is available for anyone to use. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AptitudeFM &#187; Blog Archive &#187; Programa 42</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-57942</link>
		<dc:creator>AptitudeFM &#187; Blog Archive &#187; Programa 42</dc:creator>
		<pubDate>Sun, 15 Nov 2009 21:22:25 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-57942</guid>
		<description>[...] * Bionic Arduino [...]</description>
		<content:encoded><![CDATA[<p>[...] * Bionic Arduino [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: The Daily Duino&#187; Blog Archive &#187; Bionic Arduino</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-55714</link>
		<dc:creator>The Daily Duino&#187; Blog Archive &#187; Bionic Arduino</dc:creator>
		<pubDate>Thu, 17 Sep 2009 03:06:34 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-55714</guid>
		<description>[...] http://todbot.com/blog/bionicarduino/ [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://todbot.com/blog/bionicarduino/" rel="nofollow">http://todbot.com/blog/bionicarduino/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ninjia Arduino&#187; Blog ?? &#187; ????</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-53700</link>
		<dc:creator>Ninjia Arduino&#187; Blog ?? &#187; ????</dc:creator>
		<pubDate>Tue, 21 Jul 2009 14:41:40 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-53700</guid>
		<description>[...] http://todbot.com/blog/bionicarduino/ [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://todbot.com/blog/bionicarduino/" rel="nofollow">http://todbot.com/blog/bionicarduino/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: todbot</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-53013</link>
		<dc:creator>todbot</dc:creator>
		<pubDate>Fri, 26 Jun 2009 19:14:06 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-53013</guid>
		<description>Hehe, well Mik, if you put no restrictions on it like that, then the answer is basically: &quot;as many as you want&quot;.

When controlling LEDs there are usually two things you have to worry about:
- power draw -- how much current needed for your LED array
- addressing -- how to control a specific LED in your array

By saying external power source, you get around the power draw issues.  An Arduino on a USB port can supply about 500mA of current.  A standard LED draws max about 20mA of current.  So you can have 500/20 = 25 LEDs off a single USB-powered Arduino.  Of course, the Arduino chip itself can&#039;t supply enough power directly to do all 25, you&#039;d need some external driver transistors to help out.  Or use LED driver chips.

As for addressing, an Arduino has 13 digital I/O pins.  If you set those up as a matrix of 6 pins by 7 pins, you could address 42 LEDs with just the Arduino.  But since you include LED driver chips and shift registers in the mix, those chips can do all the hard work and you just talk to them via multi-node serial protocols like I2C or SPI.  There are LED driver chips which can address 24 LEDs at a time and are meant to be bussed together in a long string.  So you could have maybe 100 of these chips and be able to have 240 individually-addressable LEDs.

But now you have to start worrying about logical addressing.  If you think about what an Arduino program to control a few hundred LEDs would look like, you&#039;d probably have a big array in memory, with each array byte is the brightness value of one LED. (many call it a &quot;framebuffer&quot; after what video cards do)  A standard Arduino has 1024 bytes of RAM, of which about 256 bytes of this is used by various libraries like Serial.  Your program&#039;s non-framebuffer variables take up some of that too.  So let&#039;s just say that you have 512 bytes of RAM free for your framebuffer.  That means 512 LEDs is your maximum.

Of course, if you don&#039;t need to remember the value for each and every LED (like if you&#039;re doing algorithmic stuff where a &quot;next&quot; LED value can be computed by a small number of &quot;previous&quot; LED values), then your memory requirements can be much smaller than one-byte-per-LED.

If you&#039;re asking your question for more then theoretical curiosity, like say for a particular application, it might be better to say what you&#039;re trying to do.  Like most things in technology, there are many options, so the problem needs to be defined better so a solution can be properly fitted to it.</description>
		<content:encoded><![CDATA[<p>Hehe, well Mik, if you put no restrictions on it like that, then the answer is basically: &#8220;as many as you want&#8221;.</p>
<p>When controlling LEDs there are usually two things you have to worry about:<br />
- power draw &#8212; how much current needed for your LED array<br />
- addressing &#8212; how to control a specific LED in your array</p>
<p>By saying external power source, you get around the power draw issues.  An Arduino on a USB port can supply about 500mA of current.  A standard LED draws max about 20mA of current.  So you can have 500/20 = 25 LEDs off a single USB-powered Arduino.  Of course, the Arduino chip itself can&#8217;t supply enough power directly to do all 25, you&#8217;d need some external driver transistors to help out.  Or use LED driver chips.</p>
<p>As for addressing, an Arduino has 13 digital I/O pins.  If you set those up as a matrix of 6 pins by 7 pins, you could address 42 LEDs with just the Arduino.  But since you include LED driver chips and shift registers in the mix, those chips can do all the hard work and you just talk to them via multi-node serial protocols like I2C or SPI.  There are LED driver chips which can address 24 LEDs at a time and are meant to be bussed together in a long string.  So you could have maybe 100 of these chips and be able to have 240 individually-addressable LEDs.</p>
<p>But now you have to start worrying about logical addressing.  If you think about what an Arduino program to control a few hundred LEDs would look like, you&#8217;d probably have a big array in memory, with each array byte is the brightness value of one LED. (many call it a &#8220;framebuffer&#8221; after what video cards do)  A standard Arduino has 1024 bytes of RAM, of which about 256 bytes of this is used by various libraries like Serial.  Your program&#8217;s non-framebuffer variables take up some of that too.  So let&#8217;s just say that you have 512 bytes of RAM free for your framebuffer.  That means 512 LEDs is your maximum.</p>
<p>Of course, if you don&#8217;t need to remember the value for each and every LED (like if you&#8217;re doing algorithmic stuff where a &#8220;next&#8221; LED value can be computed by a small number of &#8220;previous&#8221; LED values), then your memory requirements can be much smaller than one-byte-per-LED.</p>
<p>If you&#8217;re asking your question for more then theoretical curiosity, like say for a particular application, it might be better to say what you&#8217;re trying to do.  Like most things in technology, there are many options, so the problem needs to be defined better so a solution can be properly fitted to it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mik</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-53012</link>
		<dc:creator>Mik</dc:creator>
		<pubDate>Fri, 26 Jun 2009 10:35:03 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-53012</guid>
		<description>To be more specific I&#039;d like to know the maximum possible amount of controlled LED&#039;s from a Duemillanove with use of any trickery :) including shift registers, charlieplexing or any other chips. Cheers</description>
		<content:encoded><![CDATA[<p>To be more specific I&#8217;d like to know the maximum possible amount of controlled LED&#8217;s from a Duemillanove with use of any trickery :) including shift registers, charlieplexing or any other chips. Cheers</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mik</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-53011</link>
		<dc:creator>Mik</dc:creator>
		<pubDate>Fri, 26 Jun 2009 09:43:02 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-53011</guid>
		<description>Hiya Tod, love the site

I&#039;ve been playing around with MAX7219&#039;s and an Arduino Duemillanove, I&#039;m wondering if you can tell me the theoretical limit of how many non-rgb Leds the arduino can control individually (with an external power source if need be).

Thanks
Mik</description>
		<content:encoded><![CDATA[<p>Hiya Tod, love the site</p>
<p>I&#8217;ve been playing around with MAX7219&#8217;s and an Arduino Duemillanove, I&#8217;m wondering if you can tell me the theoretical limit of how many non-rgb Leds the arduino can control individually (with an external power source if need be).</p>
<p>Thanks<br />
Mik</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jules</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-52942</link>
		<dc:creator>Jules</dc:creator>
		<pubDate>Sun, 21 Jun 2009 13:13:31 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-52942</guid>
		<description>Tod: 

This time you were right – the XBee adapter from Adafruit was easy to make and get working. There was really no need to stack an XBee shield on a motor shield. We used 4 wires from the XBee adapter right to the motor shield. We also used Limor&#039;s tip to use the analog ports for digital ports 14-19 which worked out nice. We posted some details on http://sports4nerds.blogspot.com/.

Ps – now we have new problems – the h-bridge on the motor shield is not providing full power to our DC motors and overheating. We are going to try stacking another h-bridge or find another that can handle more amps. 

Thanks again for your help. 
Jules</description>
		<content:encoded><![CDATA[<p>Tod: </p>
<p>This time you were right – the XBee adapter from Adafruit was easy to make and get working. There was really no need to stack an XBee shield on a motor shield. We used 4 wires from the XBee adapter right to the motor shield. We also used Limor&#8217;s tip to use the analog ports for digital ports 14-19 which worked out nice. We posted some details on <a href="http://sports4nerds.blogspot.com/" rel="nofollow">http://sports4nerds.blogspot.com/</a>.</p>
<p>Ps – now we have new problems – the h-bridge on the motor shield is not providing full power to our DC motors and overheating. We are going to try stacking another h-bridge or find another that can handle more amps. </p>
<p>Thanks again for your help.<br />
Jules</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: todbot blog  » Bionic Arduino – Introduction to&#8230; &#124; hj barraza</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-51387</link>
		<dc:creator>todbot blog  » Bionic Arduino – Introduction to&#8230; &#124; hj barraza</dc:creator>
		<pubDate>Wed, 06 May 2009 04:28:13 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-51387</guid>
		<description>[...] todbot blog  » Bionic Arduino – Introduction to Microcontrollers with Arduino   Subscribe to comments  You can skip to the end and leave a response. Pinging is currently not allowed.  Post Tags: [...]</description>
		<content:encoded><![CDATA[<p>[...] todbot blog  » Bionic Arduino – Introduction to Microcontrollers with Arduino   Subscribe to comments  You can skip to the end and leave a response. Pinging is currently not allowed.  Post Tags: [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: todbot</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-51383</link>
		<dc:creator>todbot</dc:creator>
		<pubDate>Wed, 06 May 2009 03:53:46 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-51383</guid>
		<description>Hi Jules, Ahh you&#039;re right.  Looking a bit closer, it appears that the motor shield and the most all Xbee adapters I looked at aren&#039;t able to be stacked.  This is unfortunate.  You should send an email to Adafruit mentioning this problem.  All the different Xbee adapters I looked at use the 6-pin ICSP pins, which is sorta oddball: most shields don&#039;t need use that.

What you should be able to do, but it&#039;s not as compact, is to use Adafruit&#039;s &lt;a href=&quot;http://www.adafruit.com/index.php?main_page=product_info&amp;cPath=29&amp;products_id=126&quot; rel=&quot;nofollow&quot;&gt;Xbee Adapter Kit&lt;/a&gt; plugged into a solderless breadboard.  See the bottom of the &lt;a href=&quot;http://www.ladyada.net/make/xbee/arduino.html&quot; rel=&quot;nofollow&quot;&gt;XBee adapter Arduino page&lt;/a&gt; for how to hook it up to an Arduino.  (be sure to solder in straight headers instead of the right-angle ones)</description>
		<content:encoded><![CDATA[<p>Hi Jules, Ahh you&#8217;re right.  Looking a bit closer, it appears that the motor shield and the most all Xbee adapters I looked at aren&#8217;t able to be stacked.  This is unfortunate.  You should send an email to Adafruit mentioning this problem.  All the different Xbee adapters I looked at use the 6-pin ICSP pins, which is sorta oddball: most shields don&#8217;t need use that.</p>
<p>What you should be able to do, but it&#8217;s not as compact, is to use Adafruit&#8217;s <a href="http://www.adafruit.com/index.php?main_page=product_info&#038;cPath=29&#038;products_id=126" rel="nofollow">Xbee Adapter Kit</a> plugged into a solderless breadboard.  See the bottom of the <a href="http://www.ladyada.net/make/xbee/arduino.html" rel="nofollow">XBee adapter Arduino page</a> for how to hook it up to an Arduino.  (be sure to solder in straight headers instead of the right-angle ones)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jules</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-51382</link>
		<dc:creator>Jules</dc:creator>
		<pubDate>Wed, 06 May 2009 03:22:51 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-51382</guid>
		<description>Tod: Please help. We got our first Arduino, Adafruit’s motor shield kit and Xbees with Xbee adapter from NKC. When I look at this http://www.ladyada.net/make/mshield/solder.html We dont see how the motor shield and Xbee will work together with this Xbee shield:  http://www.nkcelectronics.com/xbee-shield-remixed.html (from http://www.seeedstudio.com/depot/xbee%C3%82%C2%AE-shield-remixed-p-227.html) Thanks for your help. Jules ps: we got blink working and you would think we placed a man on the moon we were so happy.</description>
		<content:encoded><![CDATA[<p>Tod: Please help. We got our first Arduino, Adafruit’s motor shield kit and Xbees with Xbee adapter from NKC. When I look at this <a href="http://www.ladyada.net/make/mshield/solder.html" rel="nofollow">http://www.ladyada.net/make/mshield/solder.html</a> We dont see how the motor shield and Xbee will work together with this Xbee shield:  <a href="http://www.nkcelectronics.com/xbee-shield-remixed.html" rel="nofollow">http://www.nkcelectronics.com/xbee-shield-remixed.html</a> (from <a href="http://www.seeedstudio.com/depot/xbee%C3%82%C2%AE-shield-remixed-p-227.html)" rel="nofollow">http://www.seeedstudio.com/depot/xbee%C3%82%C2%AE-shield-remixed-p-227.html)</a> Thanks for your help. Jules ps: we got blink working and you would think we placed a man on the moon we were so happy.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: todbot</title>
		<link>http://todbot.com/blog/bionicarduino/comment-page-5/#comment-51334</link>
		<dc:creator>todbot</dc:creator>
		<pubDate>Fri, 01 May 2009 01:53:03 +0000</pubDate>
		<guid isPermaLink="false">http://todbot.com/blog/bionicarduino/#comment-51334</guid>
		<description>Hi Jules,
What makes you say that the Xbee and motor shield won&#039;t work together?  I think you should be able to use an Xbee shield or Adafruit&#039;s Xbee adapter with an Arduino motor shield.

If you&#039;re concerned about how to connect multiple shields to an Arduino, the current standard practice is to stack Arduino shields on top of one another.  Many shields come with &quot;stacking headers&quot; to enable this.  Or you can get a &lt;a href=&quot;http://www.adafruit.com/index.php?main_page=product_info&amp;cPath=17_21&amp;products_id=85&quot; rel=&quot;nofollow&quot;&gt;stacking header kit from Adafruit&lt;/a&gt; or a &lt;a href=&quot;http://www.nkcelectronics.com/arduino-stackable-header-kit.html&quot; rel=&quot;nofollow&quot;&gt;stacking header kit from NKC Electronics&lt;/a&gt;.  NKC also carries Xbee shield kits, in case you want to save some money on Xbee and like to solder.</description>
		<content:encoded><![CDATA[<p>Hi Jules,<br />
What makes you say that the Xbee and motor shield won&#8217;t work together?  I think you should be able to use an Xbee shield or Adafruit&#8217;s Xbee adapter with an Arduino motor shield.</p>
<p>If you&#8217;re concerned about how to connect multiple shields to an Arduino, the current standard practice is to stack Arduino shields on top of one another.  Many shields come with &#8220;stacking headers&#8221; to enable this.  Or you can get a <a href="http://www.adafruit.com/index.php?main_page=product_info&#038;cPath=17_21&#038;products_id=85" rel="nofollow">stacking header kit from Adafruit</a> or a <a href="http://www.nkcelectronics.com/arduino-stackable-header-kit.html" rel="nofollow">stacking header kit from NKC Electronics</a>.  NKC also carries Xbee shield kits, in case you want to save some money on Xbee and like to solder.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
