<?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>Karlsson Robotics</title>
	<atom:link href="http://www.karlssonrobotics.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.karlssonrobotics.com</link>
	<description>Making everyday life easier.</description>
	<lastBuildDate>Fri, 17 May 2013 00:53:29 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>No Project too Small</title>
		<link>http://www.karlssonrobotics.com/blog/no-project-too-small/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=no-project-too-small</link>
		<comments>http://www.karlssonrobotics.com/blog/no-project-too-small/#comments</comments>
		<pubDate>Fri, 17 May 2013 00:53:29 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4935</guid>
		<description><![CDATA[As many of our visitors would have noticed we have a tab called &#8216;Design&#8216; on our menu bar. What most customers don&#8217;t realize is that we take on projects large and small. Though we usually focus on large projects (we &#8216;gotta pay the rent) we will often take on small projects to fill the gaps between large [...]]]></description>
				<content:encoded><![CDATA[<p>As many of our visitors would have noticed we have a tab called &#8216;<a href="/cart/custom-design.html">Design</a>&#8216; on our menu bar. What most customers don&#8217;t realize is that we take on projects large and small. Though we usually focus on large projects (we &#8216;gotta pay the rent) we will often take on small projects to fill the gaps between large projects and of course they can be fun and are usually completed quickly.</p>
<p>An example of one of those projects was for a plumber in Philadelphia who wanted to determine if it was safe to work in a basement or other poorly ventilated areas.</p>
<p>He came to our web site doing a search for &#8216;methane detectors&#8217; and discovered the <a href="/cart/methane-cng-gas-sensor-mq-4/">Methane CNG Gas Sensor &#8211; MQ-4</a> he also saw that we did custom design and prototypes.</p>
<p>He approached us and asked if we would build him a methane detector as he had no electronics experience but saw everything he wanted on our site.</p>
<p>As we had not worked with the gas detectors before and we were dying to try out one of the <a href="/cart/arduino-pro-mini-328-5v16mhz/">Arduino Pro Mini&#8217;s</a> we gladly took him on as a client.</p>
<p><span style="font-size: small;"><em>Methane gas is colorless and odorless it wont kill you if you breath it but in, but in a high enough concentration it may explode.</em></span></p>
<p>We started by putting everything together on a small breadboard:</p>
<div id="attachment_4939" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/leo-2.jpg"><img class="size-medium wp-image-4939" title="Methane Sensor - Breadboard" alt="Methane Sensor" src="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/leo-2-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">Methane Sensor &#8211; Breadboard</p></div>
<p>The circuit was pretty simple &#8211; we used a breakout board for the methane detector and connected the output to one of the analog inputs of the Arduino, we also decided to use a pot so that the user could specify a cut-off level where the alarm would not sound.</p>
<p>We provided a green LED to show the system was operational and when the gas threshold was exceeded the red LED would light up and the buzzer would sound.</p>
<p>The code for this is very simple &#8211; read the voltage level on the output pin of the gas sensor, compare that to the voltage level of the pot. If the sensor voltage is higher then sound the alarm. We used a <a href="/cart/FT231X-Breakout/">FTDI Breakout</a> to program the Arduino.</p><pre class="crayon-plain-tag">void loop() 
{
  unsigned int ADCValue,REFValue;

  ADCValue = analogRead(0);
  REFValue = analogRead(1);
  if(ADCValue&gt;REFValue)
    alarm=1;
  else
    alarm=0;
}</pre><p><i>Note: The sensors need to be run (burnt in) for at least 24 hours to ensure that their readings are accurate.</i></p>
<p>We have a timer interrupt running on timer 2 &#8211; it checks alarm, which is a volatile int, and if it is high the red LED and the buzzed are activated, if low the green LED.</p><pre class="crayon-plain-tag">ISR(TIMER2_OVF_vect) 
{
  RESET_TIMER2;
  counter ++;
  if(alarm)
  {
    digitalWrite(buzz, counter &amp; 0x01);
    digitalWrite(RED, counter &amp; 0x01);
    digitalWrite(GREEN, 0);
  }
  else
  {
    digitalWrite(buzz, 0);
    digitalWrite(GREEN, counter &amp; 0x01);
    digitalWrite(RED, 0);
  }
}</pre><p>As you can see from the above code we are using PWM to turn the LED&#8217;s on and the buzzer &#8211; the buzzer is a piezo element so it needs to be pulsed to make a noise.</p>
<p>Unfortunately we cannot just ship the above system to the customer, breadboards don&#8217;t even travel well from office to lab, so we grabbed on of our breadboard equivalent solder boards and soldered all the components onto it.</p>
<div id="attachment_4945" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/leo-3.jpg"><img class="size-medium wp-image-4945" title="Methane Sensor - Prototype" alt="Methane Sensor - Prototype" src="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/leo-3-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">Methane Sensor &#8211; Prototype</p></div>
<p>Now the customer can play around with the prototype. If the customer decides to add features this can be done very easily as the arduino still has a number of open ports.</p>
<p>Project parts:</p>
<table style="width: 650px;" border="0" cellpadding="5" align="left">
<caption>Project Component List </caption>
<tbody>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/methane-cng-gas-sensor-mq-4/">SEN-09404</a></td>
<td> Methane CNG Gas Sensor &#8211; MQ-4</td>
<td align="right">$ 4.95</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/gas-sensor-breakout-board/">BOB-08891</a></td>
<td> Gas Sensor Breakout Board</td>
<td align="right">$ 0.95</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/arduino-pro-mini-328-5v16mhz/">DEV-11113</a></td>
<td> Arduino Pro Mini 328 &#8211; 5V/16MHz</td>
<td align="right">$ 9.95</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/break-away-headers-straight/">PRT-00116</a></td>
<td> Break Away Headers &#8211; Straight</td>
<td align="right">$ 1.50</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/400-pts-solder-in-breadboard-exact-solderless-match/">SBB400</a></td>
<td> 400 pts solder-in breadboard (Exact Solderless Match)</td>
<td align="right">$ 4.99</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/dc-barrel-jack-adapter-breadboard-compatible/">PRT-10811</a></td>
<td> DC Barrel Jack Adapter &#8211; Breadboard Compatible</td>
<td align="right">$ 0.95</td>
</tr>
<tr>
<td style="width: 20px;"> 2</td>
<td> <a href="/cart/resistor-330-ohm-14-watt/">70022911</a></td>
<td> Resistor  330 Ohm 1/4W 5%</td>
<td align="right">$ 0.38</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/resistor-10k-ohm-14-watt/">70022898</a></td>
<td> Resistor 10K Ohm 1/4W 5%</td>
<td align="right">$ 0.19</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/led-basic-red-5mm/">COM-09590</a></td>
<td> LED &#8211; Basic Red 5mm</td>
<td align="right">$ 0.35</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/led-basic-green-5mm/">COM-09592</a></td>
<td> LED &#8211; Basic Green 5mm</td>
<td align="right">$ 0.35</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/buzzer-pc-mount-12mm-2-048khz/">COM-07950</a></td>
<td> Buzzer &#8211; PC Mount 12mm 2.048kHz</td>
<td align="right">$ 1.95</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/trimpot-10k-with-knob/">COM-09806</a></td>
<td> Trimpot 10K with Knob</td>
<td align="right">$ 0.95</td>
</tr>
<tr>
<td style="width: 20px;"> 1</td>
<td> <a href="/cart/break-away-male-headers-right-angle/">PRT-00553</a></td>
<td> Break Away Male Headers &#8211; Right Angle</td>
<td align="right">$ 1.95</td>
</tr>
<tr>
<td style="width: 20px;" colspan="3" align="right">Total Cost of Components</td>
<td align="right">$30.36</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/blog/no-project-too-small/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning Electronics Made Easy by tron.ix</title>
		<link>http://www.karlssonrobotics.com/blog/learning-electronics-made-easy-by-tron-ix/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=learning-electronics-made-easy-by-tron-ix</link>
		<comments>http://www.karlssonrobotics.com/blog/learning-electronics-made-easy-by-tron-ix/#comments</comments>
		<pubDate>Wed, 08 May 2013 23:58:16 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4928</guid>
		<description><![CDATA[You are never too old to learn electronics &#8211; we will be carrying the tron.ix range of educational guides. These guides are designed to make it as easy as possible to learn electronics - from the very basic building block to very complex circuits. Go to the tron.ix page on our store to find these educational books. [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-medium wp-image-4929" alt="TL1Cover2013" src="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/TL1Cover2013-227x300.jpg" width="227" height="300" />You are never too old to learn electronics &#8211; we will be carrying the tron.ix range of educational guides. These guides are designed to make it as easy as possible to learn electronics - from the very basic building block to very complex circuits.</p>
<p>Go to the<a href="/cart/Manufacturers/tron.ix/" target="_blank"> tron.ix</a> page on our store to find these educational books. We will be adding the whole series in the next week or so, we will also be creating a couple of kits based on these books. Soon you will be able to impress your classmates or friends with your electronics knowledge.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/blog/learning-electronics-made-easy-by-tron-ix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>You just got your Arduino &#8211; now what?</title>
		<link>http://www.karlssonrobotics.com/tutorials/arduino/you-just-got-your-arduino-now-what/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=you-just-got-your-arduino-now-what</link>
		<comments>http://www.karlssonrobotics.com/tutorials/arduino/you-just-got-your-arduino-now-what/#comments</comments>
		<pubDate>Mon, 06 May 2013 18:07:03 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[sketch]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4889</guid>
		<description><![CDATA[You received your package from Karlsson Robotics and have just unpacked your Arduino, you look around for a CD or manual and find nothing. Not to worry here is a quick guide on getting started. Make sure you have your Arduino and a USB cable before you continue. The very first step will be to [...]]]></description>
				<content:encoded><![CDATA[<p>You received your package from Karlsson Robotics and have just unpacked your Arduino, you look around for a CD or manual and find nothing. Not to worry here is a quick guide on getting started.</p>
<p><img class="size-full wp-image-4891 alignright" alt="ArduinoUnoFront240" src="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/ArduinoUnoFront240.jpg" width="290" height="217" /><img class="size-full wp-image-4893 alignright" alt="USBCable" src="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/USBCable.jpg" width="250" height="250" /></p>
<p>Make sure you have your Arduino and a USB cable before you continue.</p>
<p>The very first step will be to get an interface from your PC to the Arduino &#8211; you can get download any software you need at the Arduino <a title="Getting Started with Arduino" href="http://arduino.cc/en/Guide/HomePage" target="_blank">&#8216;Getting Started&#8217;</a> page.</p>
<p>From the link above you will can click on the operating system you are using and you will be able to get a Step-by-Step guide to installing the software on your computer. The guide will also instruct you on how to install the correct drivers for the model of Arduino you have.</p>
<p>Once you have installed the driver and configured your connection to your Arduino you can run the &#8216;blink&#8217; example. This will flash one of the LED&#8217;s on your Arduino board.</p>
<p>Play around with making the LED blink faster, stay on longer and off shorter or even flash Morse code by editing the following lines in the demo sketch.</p><pre class="crayon-plain-tag">void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
}</pre><p></p><pre class="crayon-plain-tag">void flash(int count,int duration)
{
  while(count-- &gt; 0)
  {
    digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
    delay(duration);           // wait
    digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
    delay(duration);           // wait
  }
}

// the loop routine runs over and over again forever:
void loop() {
  flash(3,150); // . . . S
  flash(3,300); // - - - O
  flash(3,150); // . . . S
  delay(1000);  // wait for a second
}</pre><p>You will see in the SOS code that we have added a function called &#8216;flash&#8217;. Creating a function makes it easier for you to execute a procedure that is repetitive in this case the function takes 2 parameters.  The first parameter is &#8216;count&#8217; this specified how many times the LED&#8217;s must flash. The seconds parameter is &#8216;duration&#8217; this specifies the duration in milliseconds that the LED should be on and off.</p>
<p>The loop function has also been changed &#8211; it now calls the flash function to flash the LED. For &#8216;S&#8217; which is 3 short dots in Morse code it is instructing flash to flash 3 times at 150 milliseconds each time. For &#8216;O&#8217; the duration is 300 milliseconds to reproduce a dash. We complete the SOS by sending the final &#8216;S&#8217; and then pausing for 1 second before repeating the &#8216;SOS&#8217;.</p>
<p>If you are familiar with the C language you will notice that a sketch looks very similar to C &#8211; that&#8217;s because it is based on C. You can even create C++ Classes to use, but more on that in another tutorial.</p>
<p>Congratulations, you now have your Arduino up and running and have modified an example sketch to flash out a SOS.</p>
<p>You are ready to start exploring the real fun side of Arduino.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/tutorials/arduino/you-just-got-your-arduino-now-what/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EInk arrives at our offices</title>
		<link>http://www.karlssonrobotics.com/blog/eink-arrives-at-our-offices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=eink-arrives-at-our-offices</link>
		<comments>http://www.karlssonrobotics.com/blog/eink-arrives-at-our-offices/#comments</comments>
		<pubDate>Fri, 03 May 2013 21:44:37 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4885</guid>
		<description><![CDATA[We have a new project that we are working on and it involves eink and ZigBee. Our eink device arrived today and we are dying to get it connected to an arduino. We will post more information when we get going. This development device will also be available for sale in our store soon &#8211; [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-medium wp-image-4886" alt="IMG_1241" src="http://www.karlssonrobotics.com/wp-content/uploads/2013/05/IMG_1241-300x225.jpg" width="300" height="225" /></p>
<p>We have a new project that we are working on and it involves eink and ZigBee. Our eink device arrived today and we are dying to get it connected to an arduino. We will post more information when we get going.</p>
<p>This development device will also be available for sale in our store soon &#8211; just watch this space.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/blog/eink-arrives-at-our-offices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Velleman Distributor</title>
		<link>http://www.karlssonrobotics.com/blog/velleman-distributor/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=velleman-distributor</link>
		<comments>http://www.karlssonrobotics.com/blog/velleman-distributor/#comments</comments>
		<pubDate>Thu, 02 May 2013 16:23:37 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4881</guid>
		<description><![CDATA[We have recently become a Velleman Distributor. We are in the process of adding the products that we will be selling to our products list. You can find all Velleman products here.]]></description>
				<content:encoded><![CDATA[<p>We have recently become a Velleman Distributor. We are in the process of adding the products that we will be selling to our products list. You can find all Velleman products <a title="Velleman" href="/Manufacturers/Velleman">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/blog/velleman-distributor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>xBee Buying Guide</title>
		<link>http://www.karlssonrobotics.com/tutorials/guides/xbee-buying-guide/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=xbee-buying-guide</link>
		<comments>http://www.karlssonrobotics.com/tutorials/guides/xbee-buying-guide/#comments</comments>
		<pubDate>Wed, 01 May 2013 01:02:38 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Guides]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4857</guid>
		<description><![CDATA[Welcome to the wireless world of XBee. Maybe you&#8217;ve heard of it, maybe you haven&#8217;t, either way you are in for a fun ride. XBees are tiny blue chips that can communicate wirelessly with each other. They can do simple thing like replacing a couple of wires in serial communication, which is nice when you [...]]]></description>
				<content:encoded><![CDATA[<p>Welcome to the wireless world of XBee. Maybe you&#8217;ve heard of it, maybe you haven&#8217;t, either way you are in for a fun ride. XBees are tiny blue chips that can communicate wirelessly with each other. They can do simple thing like replacing a couple of wires in serial communication, which is nice when you want to make a remote for your paintball vehicle.</p>
<p>But which of the dozen or so modules do you want? What&#8217;s the difference between Series 1 and Series 2? Why are there so many antenna? Why are some of them Pro, and does this make the regular models feel inadequate? And most importantly why does Sparkfun have so many boards for XBee and which ones do I need?</p>
<p>There are lots of different types of modules which we are going to go over, but one of the nice things about these is that all the modules regardless of the series or type have similar pinouts. Power, ground, and your TX/RX lines are in the same place making the chips pretty interchangeable for most of the simpler applications. Some of the more advanced features are not always compatible, but for starters its not something to worry about. Now that you are ready to start learning about XBee and what it all means here is a breakdown of the XBee world.</p>
<h2>What&#8217;s an XBee, what&#8217;s a Zigbee, what&#8217;s a Bumblebee?</h2>
<ul>
<li><strong>XBee</strong> – According to Digi “XBee modules are embedded solutions providing wireless end-point connectivity to devices. These modules use the IEEE 802.15.4 networking protocol for fast point-to-multipoint or peer-to-peer networking. They are designed for high-throughput applications requiring low latency and predictable communication timing.“ So basically XBee is Digi&#8217;s own Zigbee based protocol. In layman&#8217;s term they are wicked cool, and fairly easy to use wireless modules.</li>
<li><strong>Zigbee</strong> - An alliance and a standard of cost and energy efficient mesh networks. XBee uses the Zigbee standard and adds to it and wraps it up in their own neat little package. http://www.zigbee.org/.</li>
<li><strong>Bumblebee</strong> - A tuna company, an insect of the family Apidae and the genus Bombus, or a small yellow Autobot. Which ever definition you choose they are fairly awesome and completely irrelevant to our talk of wireless XBee modules.</li>
</ul>
<h2>Series What?</h2>
<ul>
<li><strong>XBee Series 1 (also called XBee 802.15.4) </strong>- These are the easiest to work with, they don&#8217;t need to be configured, although they can benefit from it. Because they are easy to work with we recommend these especially if you are just starting out. For point to point communication these modules work as well as the Series 2 but without all the work. A Series 1 module won&#8217;t say Series 1 on it, but it also won&#8217;t say Series 2. If it doesn&#8217;t say then your module is a Series 1. Series 1 and Series 2/2.5/ZB hardware are NOT compatible. Don&#8217;t try to mix and match, don&#8217;t even think about it, it won&#8217;t work, not even close. Nope, stop thinking about it&#8230;! Datasheet</li>
<li><strong>XBee Znet 2.5 (Formerly Series 2) Retired </strong>- These are the fun ones. Series 2 modules must be configured before they can be used. They can run in a transparent mode or work with API commands, but this all depends on what firmware you configure these with. These also can run in a mesh network making them highly configurable and awesome modules. It also makes them harder to use modules. These modules are in no way compatible with the Series 1 modules so stop thinking about trying! These modules are no longer sold but are being replaced with the mostly compatible ZB modules. Datasheet</li>
<li><strong>ZB (the current Series2ish module)</strong> - Basically the Znet2.5 hardware with new firmware. Meaning they can also run in a transparent mode or work with API commands. They can also run in a mesh network making them highly configurable and awesome modules. You can grab the new firmware and upgrade them yourself. The firmware between the two is not compatible (but is easily interchangeable) so you will have to pick which firmware you want to use on your network and stick with it. Download the conversion kit here. These are often call Series 2 modules, so if you hear someone talking about Series 2, they might be talking about these. It may not be the correct term, but it does distinguish these from the Series 1 modules which is usually all people want to know. These modules will not work in any way shape or form with the Series 1 so stop thinking about it. Stop it! Datasheet.</li>
<li><strong>2B(the even more current Series2ish module)</strong> - These new modules improve on the hardware of the Series 2 modules improving things like power usage. They run the ZB firmware but because the hardware has been changed they can no longer run the Znet2.5 firmware. So if you are looking to add this to an existing 2.5Znet network beware. Currently some of our boards are 2B and others are ZB</li>
<li><strong>900MHz</strong> - Technically not a series but it is a family just like the others. The 900s can run 2 different types of firmware, the DigiMesh firmware and the Point to Multipoint firmware. Digi actually sells both modules, the hardware is the same just with different firmware. Sparkfun only sells the point to multipoint version, but hey, you can change the firmware yourself. These modules should be more or less plug and play but of course can benefit from all the cool features you can configure.</li>
<li><strong>XSC</strong> - Basically these are 900 modules that sacrifice data rate for range. The regular 900 modules have a data rate of 156KBps (the others are all around 250Kbps) but the XSC module is only about 10Kbps. On the other hand if you attach a high gain antenna you can get a range of about 15 miles and 6 miles with a regular antenna. These modules do not require configuration out of the box and have some other differences including a different command set so make sure you check out the datasheet.</li>
</ul>
<h2>Antenna, Antennas, Antennae&#8230;</h2>
<ul>
<li><strong>Chip Antenna</strong> – Basically a small chip that acts as an antenna. Quick, easy, cheap, not in the way. These are being phased out in favor of trace antennas, which are essentially the same but printed directly to the circuit board.</li>
<li><strong>Wire Antenna</strong> – Well its a small wire sticking up, a little more of what you think of when you think of antenna.</li>
<li><strong>u.FL Antenna</strong> – A tiny connector to connect your own antenna, this is great if your object is in a box and you want your antenna outside the box.</li>
<li><strong>RPSMA Antenna</strong> – A bigger connector to connect your own antenna, once again great if your object is in a box and you want your antenna outside the box.</li>
</ul>
<h2>Regular, Pro and other things</h2>
<ul>
<li><strong>Regular vs Pro</strong> - There are a few difference between the regular XBees and the XBee Pros. The Pros are a bit longer, use more power and cost more money. That&#8217;s pretty much it. The greater power means longer range (1 mile instead of 300ft) so if you need the range or like to spend more money, then use the Pros, otherwise stick with the regular models. You can mix and match these on the same network.</li>
<li><strong>900 vs 2.4</strong> - Most of the Xbee modules operate at 2.4GHz, but there are a few that operate at 900MHz. Basically 900MHz can go a lot farther with a high gain antenna (up to 15miles for the Pro modules and a high gain antenna). Also the lower the frequency the greater penetration the signal has. 900MHz is also not allowed in many countries (although there are 868MHz versions available from Digi that are allowed in many other countries). You can NOT mix and match these on the same network.</li>
</ul>
<div id="xbeetable">
<table>
<thead>
<tr>
<th scope="col">XBee Device</th>
<th scope="col">Range</th>
<th scope="col">Power Consumption</th>
<th scope="col">Frequency</th>
<th scope="col">Protocol</th>
<th scope="col">Tx Power</th>
<th scope="col">Data Rate</th>
<th scope="col">Antenna</th>
</tr>
</thead>
<tbody>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/08664-03-L_l_th.jpg" alt="[S1Chip]" /><a title="XBee 1mW Chip Antenna – Series 1 (802.15.4)" href="http://www.karlssonrobotics.com/shop/xbee-1mw-chip-antenna-series-1-802-15-4/" target="_blank">XBee 1mW Chip Antenna &#8211; Series 1</a></td>
<td>300 Ft</td>
<td>50mA @ 3.3v</td>
<td>2.4GHz</td>
<td>802.15.4</td>
<td>1mW</td>
<td>250kbps</td>
<td>Chip</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/08666-03-L_l_th.jpg" alt="[S1UFL]" /><a title="XBee 1mW U.FL Connection – Series 1 (802.15.4)" href="http://www.karlssonrobotics.com/shop/xbee-1mw-u-fl-connection-series-1-802-15-4/" target="_blank">XBee 1mW U.FL Connection &#8211; Series 1</a></td>
<td>300 Ft</td>
<td>50mA @ 3.3v</td>
<td>2.4GHz</td>
<td>802.15.4</td>
<td>1mW</td>
<td>250kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/08665-03-L_l_th.jpg" alt="[S1Wire]" /><a title="XBee 1mW Wire Antenna – Series 1 (802.15.4)" href="http://www.karlssonrobotics.com/shop/xbee-1mw-wire-antenna-series-1-802-15-4/" target="_blank">XBee 1mW Wire Antenna &#8211; Series 1</a></td>
<td>300 Ft</td>
<td>50mA @ 3.3v</td>
<td>2.4GHz</td>
<td>802.15.4</td>
<td>1mW</td>
<td>250kbps</td>
<td>Wire</td>
</tr>
<tr>
<td><img src="https://dlnmh9ip6v2uc.cloudfront.net/images/products/1/1/2/1/7/11217-01_l_th.jpg" alt="[S2pcb]" /><a title="XBee 2mW PCB Antenna – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-2mw-pcb-antenna-series-2-zigbee-mesh/" target="_blank">XBee 2mW PCB Antenna &#8211; Series 2</a></td>
<td>400 Ft</td>
<td>40mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>2mW</td>
<td>250kbps</td>
<td>PCB</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10416-01_l_th.jpg" alt="[S2RPSMA]" /><a title="XBee 2mW RPSMA – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-2mw-rpsma-series-2-zigbee-mesh/" target="_blank">XBee 2mW RPSMA &#8211; Series 2</a></td>
<td>400 Ft</td>
<td>40mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>2mW</td>
<td>250kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10417-03-L_l_th.jpg" alt="[S2UFL]" /><a title="XBee 2mW U.FL Connection – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-2mw-u-fl-connection-series-2-zigbee-mesh/" target="_blank">XBee 2mW U.FL Connection &#8211; Series 2</a></td>
<td>400 Ft</td>
<td>40mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>2mW</td>
<td>250kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10414-01_l_th.jpg" alt="[S2wire]" /><a title="XBee 2mW Wire Antenna – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-2mw-wire-antenna-series-2-zigbee-mesh/" target="_blank">XBee 2mW Wire Antenna &#8211; Series 2</a></td>
<td>400 Ft</td>
<td>40mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>2mW</td>
<td>250kbps</td>
<td>Wire</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10418-01_l_th.jpg" alt="[ProPCB]" /><a title="XBee Pro 50mW PCB Antenna – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-pro-50mw-pcb-antenna-series-2-zigbee-mesh/" target="_blank">XBee Pro 50mW PCB Antenna &#8211; Series 2</a></td>
<td>1 Mile</td>
<td>295mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>50mW</td>
<td>250kbps</td>
<td>PCB</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10419-01_l_th.jpg" alt="[ProRPSMA]" /><a title="XBee Pro 50mW RPSMA – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-pro-50mw-rpsma-series-2-zigbee-mesh/" target="_blank">XBee Pro 50mW RPSMA &#8211; Series 2</a></td>
<td>1 Mile</td>
<td>295mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>50mW</td>
<td>250kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10420-03-L_l_th.jpg" alt="[ProUFL]" /><a title="XBee Pro 50mW U.FL Connection – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-pro-50mw-u-fl-connection-series-2-zigbee-mesh/" target="_blank">XBee Pro 50mW U.FL Connection &#8211; Series 2</a></td>
<td>1 Mile</td>
<td>295mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>50mW</td>
<td>250kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10421-01_l_th.jpg" alt="[ProWire]" /><a title="XBee Pro 50mW Wire Antenna – Series 2 (ZigBee Mesh)" href="http://www.karlssonrobotics.com/shop/xbee-pro-50mw-wire-antenna-series-2-zigbee-mesh/" target="_blank">XBee Pro 50mW Wire Antenna &#8211; Series 2</a></td>
<td>1 Mile</td>
<td>295mA @ 3.3v</td>
<td>2.4GHz</td>
<td>ZigBee Mesh</td>
<td>50mW</td>
<td>250kbps</td>
<td>Wire</td>
</tr>
<tr>
<td><img src="https://dlnmh9ip6v2uc.cloudfront.net/images/products/1/1/2/1/6/11216-01a_small.jpg" alt="[S1ProPCB]" /><a title="XBee Pro 60mW PCB Antenna – Series 1 (802.15.4)" href="http://www.karlssonrobotics.com/shop/xbee-pro-60mw-pcb-antenna-series-1-802-15-4/" target="_blank">XBee Pro 60mW PCB Antenna &#8211; Series 1</a></td>
<td>1 Mile</td>
<td>215mA @ 3.3v</td>
<td>2.4GHz</td>
<td>802.15.4</td>
<td>60mW</td>
<td>250kbps</td>
<td>PCB</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/08710-03-L_l_th.jpg" alt="[S1ProUFL]" /><a title="XBee Pro 60mW U.FL Connection – Series 1 (802.15.4)" href="http://www.karlssonrobotics.com/shop/xbee-pro-60mw-u-fl-connection-series-1-802-15-4/" target="_blank">XBee Pro 60mW U.FL Connection &#8211; Series 1</a></td>
<td>1 Mile</td>
<td>215mA @ 3.3v</td>
<td>2.4GHz</td>
<td>802.15.4</td>
<td>60mW</td>
<td>250kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/08742-03-L_l_th.jpg" alt="[S1ProWire]" /><a title="XBee Pro 60mW Wire Antenna – Series 1 (802.15.4)" href="http://www.karlssonrobotics.com/shop/xbee-pro-60mw-wire-antenna-series-1-802-15-4/" target="_blank">XBee Pro 60mW Wire Antenna &#8211; Series 1</a></td>
<td>1 Mile</td>
<td>215mA @ 3.3v</td>
<td>2.4GHz</td>
<td>802.15.4</td>
<td>60mW</td>
<td>250kbps</td>
<td>Wire</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/09099-03-L_l_th.jpg" alt="[Pro9RPSMA]" /><a title="XBee Pro 900 RPSMA" href="http://www.karlssonrobotics.com/shop/xbee-pro-900-rpsma/" target="_blank">XBee Pro 900 RPSMA</a></td>
<td>6 Miles</td>
<td>210mA @ 3.3v</td>
<td>900MHz</td>
<td>Multi-Point</td>
<td>50mW</td>
<td>156kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/09098-03-L_l_th.jpg" alt="[Pro9UFL]" /><a title="XBee Pro 900 U.FL Connection" href="http://www.karlssonrobotics.com/shop/xbee-pro-900-u-fl-connection/" target="_blank">XBee Pro 900 U.FL Connection</a></td>
<td>6 Miles</td>
<td>210mA @ 3.3v</td>
<td>900MHz</td>
<td>Multi-Point</td>
<td>50mW</td>
<td>156kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/09097-03-L_l_th.jpg" alt="[Pro9Wire]" /><a title="XBee Pro 900 Wire Antenna" href="http://www.karlssonrobotics.com/shop/xbee-pro-900-wire-antenna/" target="_blank">XBee Pro 900 Wire Antenna</a></td>
<td>6 Miles</td>
<td>210mA @ 3.3v</td>
<td>900MHz</td>
<td>Multi-Point</td>
<td>50mW</td>
<td>156kbps</td>
<td>Wire</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/09087-03-L_l_th.jpg" alt="XSCRPSMA" /><a title="XBee Pro 900 XSC RPSMA" href="http://www.karlssonrobotics.com/shop/xbee-pro-900-xsc-rpsma/" target="_blank">XBee Pro 900 XSC RPSMA</a></td>
<td>15 Miles</td>
<td>256mA @ 3.3v</td>
<td>900MHz</td>
<td>Multi-Point</td>
<td>100mW</td>
<td>9.6kbps</td>
<td>Ext./Not Included</td>
</tr>
<tr>
<td><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/09085-03-L_l_th.jpg" alt="[XSCWire]" /><a title="XBee Pro 900 XSC Wire" href="http://www.karlssonrobotics.com/shop/xbee-pro-900-xsc-wire/" target="_blank">XBee Pro 900 XSC Wire</a></td>
<td>15 Miles</td>
<td>256mA @ 3.3v</td>
<td>900MHz</td>
<td>Multi-Point</td>
<td>100mW</td>
<td>9.6kbps</td>
<td>Wire</td>
</tr>
</tbody>
</table>
</div>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/tutorials/guides/xbee-buying-guide/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arduino Selection Guide</title>
		<link>http://www.karlssonrobotics.com/tutorials/guides/arduino-selection-guide/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=arduino-selection-guide</link>
		<comments>http://www.karlssonrobotics.com/tutorials/guides/arduino-selection-guide/#comments</comments>
		<pubDate>Wed, 01 May 2013 00:37:03 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[arduino]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4852</guid>
		<description><![CDATA[Which board do I need? Let&#8217;s face it, there are a a lot of different Arduino boards out there. How do you decide which one you need for your project? With this table, you can not only compare features between all the different Arduino boards we carry, but you can also see why these differences [...]]]></description>
				<content:encoded><![CDATA[<h2>Which board do I need?</h2>
<p>Let&#8217;s face it, there are a a lot of different Arduino boards out there. How do you decide which one you need for your project? With this table, you can not only compare features between all the different Arduino boards we carry, but you can also see why these differences are important.</p>
<h2>What is an Arduino?</h2>
<p>Let&#8217;s first talk about what an Arduino really is. Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It&#8217;s intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments. Or more simply, you load on some code and it can read sensors, perform actions based on inputs from buttons, control motors, and accept shields to further expand it&#8217;s capabilities. Really, you can do almost anything.</p>
<p>All Arduino boards have one thing in common: they are programmed through the <a href="http://arduino.cc/en/Main/Software">Arduino IDE</a>. This is the software that allows you to write and upload code. Beyond that, there can be a lot of differences. The number of inputs and outputs (how many sensors, LEDs, and buttons you can use on a single board), speed, operating voltage, and form factor are just a few of the variables.</p>
<h2>Why are they different?</h2>
<p>Some boards are designed to be embedded and have no programming interface (hardware) which you would need to buy separately. Some can run directly from a 3.7V battery, others need at least 5V. Check the chart below to find the right Arduino for your project. Be sure to read the glossary below as well for a discussion of terms. If you are still confused and need more help, feel free to contact our technical support department by emailing support@karlssonrobotics.com.</p>
<table class="arduino-bg" border="0" cellspacing="0" cellpadding="0">
<thead>
<tr valign="top">
<th style="width: 100px;">Item</th>
<th style="width: 87px;">µC</th>
<th style="width: 57px;">Input Voltage</th>
<th style="width: 57px;">System Voltage</th>
<th style="width: 46px;">Clock Speed</th>
<th style="width: 50px;">Digital I/O</th>
<th style="width: 50px;">Analog Inputs</th>
<th style="width: 40px;">PWM</th>
<th style="width: 45px;">UART</th>
<th style="width: 83px;">Bootloader</th>
<th style="width: 182px;">Programming Interface</th>
</tr>
</thead>
<tbody>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/11286-01_l_th.jpg" alt="[Leo]" /><br />
<a title="Arduino Leonardo (with headers)" href="http://www.karlssonrobotics.com/shop/arduino-leonardo-with-headers/" target="_blank">Arduino Leonardo</a></td>
<td style="width: 87px;">ATmega32U4</td>
<td style="width: 57px;">7-12V</td>
<td style="width: 57px;">5V</td>
<td style="width: 46px;">16MHz</td>
<td style="width: 50px;">20*</td>
<td style="width: 50px;">12</td>
<td style="width: 40px;">7</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">Leonardo</td>
<td style="width: 182px;">USB native</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/11021-01a_l_th.jpg" alt="[UnoR3]" /><a title="Arduino Uno – R3" href="http://www.karlssonrobotics.com/shop/arduino-uno-r3/" target="_blank">Arduino Uno &#8211; R3</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">7-12V</td>
<td style="width: 57px;">5V</td>
<td style="width: 46px;">16MHz</td>
<td style="width: 50px;">14</td>
<td style="width: 50px;">6</td>
<td style="width: 40px;">6</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">Optiboot</td>
<td style="width: 182px;">USB via ATMega16U2</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10914-01_l_th.jpg" alt="[Pro 3V]" /><a title="Arduino Pro 328 – 3.3V/8MHz" href="http://www.karlssonrobotics.com/shop/arduino-pro-328-3-3v8mhz/" target="_blank">Arduino Pro 3.3V/8MHz</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">3.35 -12V</td>
<td style="width: 57px;">3.3V</td>
<td style="width: 46px;">8MHz</td>
<td style="width: 50px;">14</td>
<td style="width: 50px;">6</td>
<td style="width: 40px;">6</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">AtmegaBOOT</td>
<td style="width: 182px;">FTDI-Compatible Header</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10915-01_l_th.jpg" alt="[Pro 5V]" /><a title="Arduino Pro 328 – 5V/16MHz" href="http://www.karlssonrobotics.com/shop/arduino-pro-328-5v16mhz/" target="_blank">Arduino Pro 5V/16MHz</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">5 &#8211; 12V</td>
<td style="width: 57px;">5V</td>
<td style="width: 46px;">16MHz</td>
<td style="width: 50px;">14</td>
<td style="width: 50px;">6</td>
<td style="width: 40px;">6</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">AtmegaBOOT</td>
<td style="width: 182px;">FTDI-Compatible Header</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/11061-01a_l_th.jpg" alt="[2560R3]" /><a title="Arduino Mega 2560 R3" href="http://www.karlssonrobotics.com/shop/arduino-mega-2560-r3/" target="_blank">Arduino Mega 2560 R3</a></td>
<td style="width: 87px;">ATmega2560</td>
<td style="width: 57px;">7-12V</td>
<td style="width: 57px;">5V</td>
<td style="width: 46px;">16MHz</td>
<td style="width: 50px;">54</td>
<td style="width: 50px;">16</td>
<td style="width: 40px;">14</td>
<td style="width: 45px;">4</td>
<td style="width: 83px;">STK500v2</td>
<td style="width: 182px;">USB via ATMega16U2</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10744-01_l_th.jpg" alt="[MegaPro3]" /><a title="Mega Pro 3.3V" href="http://www.karlssonrobotics.com/shop/mega-pro-3-3v/" target="_blank">Mega Pro 3.3V</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">3.3-12V</td>
<td style="width: 57px;">3.3V</td>
<td style="width: 46px;">8MHz</td>
<td style="width: 50px;">54</td>
<td style="width: 50px;">16</td>
<td style="width: 40px;">14</td>
<td style="width: 45px;">4</td>
<td style="width: 83px;">STK500v2</td>
<td style="width: 182px;">FTDI-Compatible Header</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/11007-Error-01_l_th.jpg" alt="[MegaPro5]" /><a title="Mega Pro 5V" href="http://www.karlssonrobotics.com/shop/mega-pro-5v/" target="_blank">Mega Pro 5V</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">5-12V</td>
<td style="width: 57px;">5V</td>
<td style="width: 46px;">16MHz</td>
<td style="width: 50px;">54</td>
<td style="width: 50px;">16</td>
<td style="width: 40px;">14</td>
<td style="width: 45px;">4</td>
<td style="width: 83px;">STK500v2</td>
<td style="width: 182px;">FTDI-Compatible Header</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="https://dlnmh9ip6v2uc.cloudfront.net/images/products/11303-01a_l_th.jpg" alt="[Mini05]" /><a title="Arduino Mini 05" href="http://www.karlssonrobotics.com/shop/arduino-mini-05/" target="_blank">Arduino Mini 05</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">7-9V</td>
<td style="width: 57px;">5V</td>
<td style="width: 46px;">16MHz</td>
<td style="width: 50px;">14</td>
<td style="width: 50px;">6</td>
<td style="width: 40px;">8</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">AtmegaBOOT</td>
<td style="width: 182px;">Serial Header</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10116-01_l_th.jpg" alt="[Fio]" /><a title="Arduino Fio" href="http://www.karlssonrobotics.com/shop/arduino-fio/" target="_blank">Arduino Fio</a></td>
<td style="width: 87px;">ATmega328P</td>
<td style="width: 57px;">3.35 -12V</td>
<td style="width: 57px;">3.3V</td>
<td style="width: 46px;">8MHz</td>
<td style="width: 50px;">14</td>
<td style="width: 50px;">8</td>
<td style="width: 40px;">6</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">AtmegaBOOT</td>
<td style="width: 182px;">FTDI-Compatible Header or Wirelessly via XBee<sup>1</sup></td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10743-01_l_th.jpg" alt="[MegaProMini]" /><a title="Mega Pro Mini – 3.3V" href="http://www.karlssonrobotics.com/shop/mega-pro-mini-3-3v/" target="_blank">Mega Pro Mini 3.3V</a></td>
<td style="width: 87px;">ATmega2560</td>
<td style="width: 57px;">3.3-12V</td>
<td style="width: 57px;">3.3V</td>
<td style="width: 46px;">8MHz</td>
<td style="width: 50px;">54</td>
<td style="width: 50px;">16</td>
<td style="width: 40px;">14</td>
<td style="width: 45px;">4</td>
<td style="width: 83px;">STK500v2</td>
<td style="width: 182px;">FTDI-Compatible Header</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/11098-01a_l_th.jpg" alt="[ProMicro5]" /><a title="Pro Micro – 5V/16MHz" href="http://www.karlssonrobotics.com/shop/pro-micro-5v16mhz/" target="_blank">Pro Micro 5V/16MHz</a></td>
<td style="width: 87px;">ATmega32U4</td>
<td style="width: 57px;">5 &#8211; 12V</td>
<td style="width: 57px;">5V</td>
<td style="width: 46px;">16MHz</td>
<td style="width: 50px;">12</td>
<td style="width: 50px;">4</td>
<td style="width: 40px;">5</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">DiskLoader</td>
<td style="width: 182px;">Native USB</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10999-01_l_th.jpg" alt="[ProMicro3]" /><a title="Pro Micro – 3.3V/8MHz" href="http://www.karlssonrobotics.com/shop/pro-micro-3-3v8mhz/" target="_blank">Pro Micro 3.3V/8MHz</a></td>
<td style="width: 87px;">ATmega32U4</td>
<td style="width: 57px;">3.35 &#8211; 12V</td>
<td style="width: 57px;">3.3V</td>
<td style="width: 46px;">8MHz</td>
<td style="width: 50px;">12</td>
<td style="width: 50px;">4</td>
<td style="width: 40px;">5</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">DiskLoader</td>
<td style="width: 182px;">Native USB</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/09266-01_l_th.jpg" alt="[LilyMain]" /><a title="LilyPad Arduino 328 Main Board" href="http://www.karlssonrobotics.com/shop/lilypad-arduino-328-main-board/" target="_blank">LilyPad Arduino 328 Main Board</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">2.7-5.5V</td>
<td style="width: 57px;">3.3V</td>
<td style="width: 46px;">8MHz</td>
<td style="width: 50px;">14</td>
<td style="width: 50px;">6</td>
<td style="width: 40px;">6</td>
<td style="width: 45px;">1</td>
<td style="width: 83px;">AtmegaBOOT</td>
<td style="width: 182px;">FTDI-Compatible Header</td>
</tr>
<tr>
<td class="arduino-bg-1" style="width: 100px;"><img src="http://dlnmh9ip6v2uc.cloudfront.net/images/products/10274-01c_l_th.jpg" alt="[LilySimp]" /><a title="LilyPad Arduino Simple Board" href="http://www.karlssonrobotics.com/shop/lilypad-arduino-simple-board/" target="_blank">LilyPad Arduino Simple Board</a></td>
<td style="width: 87px;">ATmega328</td>
<td style="width: 57px;">2.7-5.5V</td>
<td style="width: 57px;">3.3V</td>
<td style="width: 46px;">8MHz</td>
<td style="width: 50px;">9</td>
<td style="width: 50px;">4</td>
<td style="width: 40px;">5</td>
<td style="width: 45px;">0<sup>2</sup></td>
<td style="width: 83px;">AtmegaBOOT</td>
<td style="width: 182px;">FTDI-Compatible Header</td>
</tr>
</tbody>
</table>
<p><sup>1</sup>The miniUSB connector on the Arduino Fio is used for battery charging only. An Xbee module is not included with this board.<br />
<sup>2</sup>The LilyPad Simple Board does have one UART but the pins aren&#8217;t broken out to pads. Serial communication can be achieved through the FTDI header.<br />
*The Arduino Leonardo has the same GPIO pin-count as the other &#8220;Uno&#8221; style boards but more of the pins play &#8220;double duty&#8221; as both analog and digital pins, thus the higher numbers.</p>
<h2>Glossary of Terms:</h2>
<p><strong>µC (Microcontroller):</strong> The microcontroller is the heart (or, more appropriately, the brain) of the Arduino board. The Arduino development board is based on AVR microcontrollers of different types, each of which have different functions and features.</p>
<p><strong>Input Voltage:</strong> This is the suggested input voltage range for the board. The board may be rated for a slightly higher maximum voltage but this is the safe operating range. A handy thing to keep in mind is that many of the Li-Po batteries that we carry are 3.7V meaning that any board with an input voltage including 3.7V can be powered directly from one of our Li-Po battery packs.</p>
<p><strong>System Voltage:</strong> This is the system voltage of the board, i.e. the voltage that the microcontroller is actually running at. This is an important factor for shield-compatibility since the logic level is now 3.3V instead of 5V. You always want to be sure that whatever outside system with which you&#8217;re trying to communicate is able to match the logic level of your controller.</p>
<p><strong>Clock Speed:</strong> This is the operating frequency of the microcontroller and is related to the speed at which it can execute commands. Although there are rare exceptions, most ATMega microcontrollers running at 3V will be clocked at 8MHz whereas most running at 5V will be clocked at 16MHz. The clock speed of the Arduino can be divided down for power savings with a few tricks if you know what you&#8217;re doing.</p>
<p><strong>Digital I/O:</strong> This is the number of digital input/output pins that are broken out on the Arduino board. Each of these can be configured as either an input or an output, some are capable of PWM and some double as serial communication pins.</p>
<p><strong>Analog Inputs:</strong> This is the number of analog input pins that are available on the Arduino board. Analog pins are labeled &#8220;A&#8221; followed by their number, they allow you to read analog values using the analog-to-digital converter (ADC) in the ATMega chip. Analog inputs can also be configured as more digital I/O if you need it!</p>
<p><strong>PWM:</strong> This is the number of digital I/O pins that are capable of producing a PWM signal. A PWM signal is like an analog output, it allows your Arduino to &#8220;fake&#8221; an analog voltage between zero and the system voltage.</p>
<p><strong>UART:</strong> This is the number of separate serial communication lines your Arduino board can support. On most Arduino boards, digital I/O pins 1&amp;2 double as your serial send and receive pins and are shared with the serial programming port. Some Arduino boards have multiple UARTs and can support multiple serial ports at once. All Arduino boards have at least one UART for programming, but some aren&#8217;t broken out to pins that are accessible.</p>
<p><strong>Flash Space:</strong> This is the amount of program memory that the chip has available for your to store your sketch. Not all of this memory is available as a very small portion is taken up by the bootloader (usually between 0.5 and 2KB).</p>
<p><strong>Bootloader:</strong> If the microcontroller is the brain of the Arduino board, then the bootloader is its personality. Without the bootloader, it just wouldn&#8217;t be an Arduino. The bootloader lives on the ATMega chip and allows you to load programs through the serial port instead of having to use a hardware programmer. Because different Arduino board use different microcontrollers and programming interfaces, there are different bootloader programs on each. The source code for the bootloaders can be found in your Arduino distribution. All Arduino bootloaders will allow you to load code from the Arduino IDE.</p>
<p><strong>Programming Interface:</strong> This is how you hook up the Arduino board to your computer for programming. Some boards have a USB jack on-board so that all you need to do is plug them into a USB cable, others have a header available so that you can plug in an FTDI Basic breakout or FTDI Cable. Other boards, like the Mini, break out the serial pins for programming but aren&#8217;t pin-compatible with the FTDI header. Any Arduino board that has a USB jack on-board also has some other hardware that enables the serial to USB conversion. Some boards, however, don&#8217;t need additional hardware because their microncontrollers have built-in support for USB.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/tutorials/guides/arduino-selection-guide/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Its been a busy morning!</title>
		<link>http://www.karlssonrobotics.com/blog/its-been-a-busy-morning/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=its-been-a-busy-morning</link>
		<comments>http://www.karlssonrobotics.com/blog/its-been-a-busy-morning/#comments</comments>
		<pubDate>Tue, 22 Jan 2013 16:50:36 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4691</guid>
		<description><![CDATA[We received a number of shipments this morning. Among the goodies we received have been: Raspberry Pi&#8217;s: Adafruit Pi Boxes:]]></description>
				<content:encoded><![CDATA[<p>We received a number of shipments this morning. Among the goodies we received have been:</p>
<p>Raspberry Pi&#8217;s:</p>
<div class="wp-caption alignnone" style="width: 610px"><a href="http://www.karlssonrobotics.com/cart/raspberry-pi-single-board-linux-computer-model-b/"><img class=" " alt="" src="http://www.karlssonrobotics.com/cart/prodimages/998_LRG.jpg" width="600" /></a><p class="wp-caption-text">Raspberry Pi</p></div>
<p>Adafruit Pi Boxes:</p>
<div class="wp-caption alignnone" style="width: 610px"><a href="http://www.karlssonrobotics.com/cart/adafruit-pi-box-enclosure-for-raspberry-pi-computers/"><img class=" " alt="" src="http://www.karlssonrobotics.com/cart/prodimages/ID859_LRG.jpg" width="600" /></a><p class="wp-caption-text">Adafruit Pi Box</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/blog/its-been-a-busy-morning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Workaround for Servo Jitter on Arduino</title>
		<link>http://www.karlssonrobotics.com/tutorials/arduino/workaround-for-servo-jitter-on-arduino/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=workaround-for-servo-jitter-on-arduino</link>
		<comments>http://www.karlssonrobotics.com/tutorials/arduino/workaround-for-servo-jitter-on-arduino/#comments</comments>
		<pubDate>Wed, 12 Dec 2012 16:48:27 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[servo jitter]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4600</guid>
		<description><![CDATA[A customer of ours, Bart Borghuis, is using an Arduino to control a servo that controls a shutter on a microscope. While using the servo.h he discovered that he was getting jitter on his servo. The jitter was noticeable to the point that he was not able to proceed with his project. He tried a [...]]]></description>
				<content:encoded><![CDATA[<p>A customer of ours, Bart Borghuis, is using an Arduino to control a servo that controls a shutter on a microscope.</p>
<p>While using the servo.h he discovered that he was getting jitter on his servo. The jitter was noticeable to the point that he was not able to proceed with his project. He tried a number of workarounds to resolve the jitter issues but discovered that the best solution would be to create his own code to control the servo.</p>
<p>He has kindly shared this, very well documented, code with us for the benefit of anyone else that may run into the same issue.</p>
<p>A description of the code and operation can be found in the code sample below.</p>
<p></p><pre class="crayon-plain-tag">//Code example for Arduino Uno by Bart Borghuis
//This program drives a servo motor using timer0 interrupts at 50kHz.
//Receipt of character '0' through the serial port sets the motor in the 'closed' position
//defined by motorstate0. Receipt of '1' sets the motor in the 'open' position defined by motorstate1.

//storage variables
boolean motorstate = 0, motorenabled=0;
int ledstate, ledcount=0, ledontime=10000, ledofftime=60000;
int motorcount=0, motortick=0, motorstate0=49, motorstate1=99, motormax=999;
int startbyte;
byte ledPin=13;

void setup(){
  Serial.begin(115200); 
  //set pins as outputs
  pinMode(8, OUTPUT);
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, HIGH);
  ledstate=1;
  ledcount=ledontime;

  cli();//stop interrupts

  //set timer0 interrupt at 2kHz
  TCCR0A = 0;// set entire TCCR2A register to 0
  TCCR0B = 0;// same for TCCR2B
  TCNT0  = 0;//initialize counter value to 0
  // set compare match register for 50khz increments
  OCR0A = 4;// = (16*10^6) / (50000*64) - 1 (must be &lt;256)
  // turn on CTC mode
  TCCR0A |= (1 &lt;&lt; WGM01);
  // Set CS11 and CS10 bits for 64 prescaler
  TCCR0B |= (1 &lt;&lt; CS11) | (1 &lt;&lt; CS10);   
  // enable timer compare interrupt
  TIMSK0 |= (1 &lt;&lt; OCIE0A);
  
  sei();//allow interrupts
}//end setup

void loop(){
  if (Serial.available() &gt; 0) {
      startbyte = Serial.read();
      switch (startbyte){
          case 48:
            motorenabled=1;
            digitalWrite(ledPin, LOW);
            motorstate=0;
            break;  
          case 49: 
            motorenabled=1;
            digitalWrite(ledPin, HIGH);
            motorstate=1;
            break;
     }     
   }
}


ISR(TIMER0_COMPA_vect){
//timer0 interrupt 50kHz to drive servo motor connect to pin 8
// pulse width is 1 ms in motor state '0' and 2 ms in motor state '1'
switch(motorenabled){
  case 1:
    motorcount++;
    switch(motorstate){
      case 0:
           if(motorcount&gt;motorstate0){
             digitalWrite(8,LOW);
           }
           if(motorcount&gt;motormax){
             motorcount=0;
             digitalWrite(8,HIGH);
           }
       break;
       case 1:
           if(motorcount&gt;motorstate1){
             digitalWrite(8,LOW);
           }
           if(motorcount&gt;motormax){
              motorcount=0;
              digitalWrite(8,HIGH);
           }
       break;
    }
    break;
  case 0:
    ledcount--;
     if(ledcount==0){
       switch(ledstate){
         case 0:
         ledstate=1;
         digitalWrite(ledPin, HIGH);
        ledcount=ledontime;
        break;
        case 1:
             ledstate=0;
         digitalWrite(ledPin, LOW);
        ledcount=ledofftime;
        break;
      }
    }
  }
}</pre><p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/tutorials/arduino/workaround-for-servo-jitter-on-arduino/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Just received a shipment of Raspberry Pi&#8217;s</title>
		<link>http://www.karlssonrobotics.com/blog/just-received-a-shipment-of-raspberry-pis/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=just-received-a-shipment-of-raspberry-pis</link>
		<comments>http://www.karlssonrobotics.com/blog/just-received-a-shipment-of-raspberry-pis/#comments</comments>
		<pubDate>Thu, 06 Dec 2012 17:31:40 +0000</pubDate>
		<dc:creator>gkarlsson</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.karlssonrobotics.com/?p=4576</guid>
		<description><![CDATA[We have fulfilled our back-orders and will be making the rest available during the day. Note these will go fast. If you missed getting one don&#8217;t worry, we will post another notification when we get our next shipment in the next few weeks. As we have cleared our backlog &#8211; we will allow back-orders for the next [...]]]></description>
				<content:encoded><![CDATA[<p>We have fulfilled our back-orders and will be making the rest available during the day.</p>
<p>Note these will go fast. If you missed getting one don&#8217;t worry, we will post another notification when we get our next shipment in the next few weeks.</p>
<p>As we have cleared our backlog &#8211; we will allow back-orders for the next quantity in the next few days.</p>
<p><img class="alignnone" title="Raspberry Pi" src="http://www.karlssonrobotics.com/cart/prodimages/998_LRG.jpg" alt="" width="600" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.karlssonrobotics.com/blog/just-received-a-shipment-of-raspberry-pis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
