<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>EngBlaze</title>
	
	<link>http://www.engblaze.com</link>
	<description>Arduino, AVR, and hardware hacks, oh my.</description>
	<lastBuildDate>Mon, 14 Jan 2013 02:31:47 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/engblaze" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="engblaze" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Remote GPS tracking system – the one location platform to rule them all?</title>
		<link>http://www.engblaze.com/gps-tracking-system-one-location-platform-to-rule-them-all/</link>
		<comments>http://www.engblaze.com/gps-tracking-system-one-location-platform-to-rule-them-all/#comments</comments>
		<pubDate>Tue, 08 Jan 2013 21:51:14 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[AVR]]></category>
		<category><![CDATA[Cellular]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[cellular]]></category>
		<category><![CDATA[crowdfunding]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[gsm]]></category>
		<category><![CDATA[internet of things]]></category>
		<category><![CDATA[kickstarter]]></category>
		<category><![CDATA[lbs]]></category>
		<category><![CDATA[location based services]]></category>
		<category><![CDATA[m2m]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[OSS]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[tracking]]></category>
		<category><![CDATA[web platform]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=1063</guid>
		<description><![CDATA[GPS trackers are always interesting because they&#8217;re so versatile. Location-based services have exploded in the last couple of years, and are poised for more growth as we get further into the 2010&#8242;s. At the heart of all of these services &#8230; <a href="http://www.engblaze.com/gps-tracking-system-one-location-platform-to-rule-them-all/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><iframe src="http://www.kickstarter.com/projects/385904042/remote-gps-tracking/widget/video.html" height="360" width="480" frameborder="0"></iframe></p>
<p>GPS trackers are always interesting because they&#8217;re so versatile. Location-based services have exploded in the last couple of years, and are poised for more growth as we get further into the 2010&#8242;s. At the heart of all of these services is a GPS tracker, and a method of transmitting position data to a server, where a provider (or hacker) can do something useful with it.</p>
<p><span id="more-1063"></span>In the same vein as the previous <a title="Arduino open source tracking device leverages Kickstarter" href="http://www.engblaze.com/arduino-open-source-tracking-device/">open source tracker</a> from DSS Circuits (which seems to have <a title="DSS Circuits - Geogram One product page" href="http://dsscircuits.com/geogram-one.html" target="_blank">shipped </a>and <a title="Github - Geogram One source code and schematics" href="https://github.com/DSSCircuits/GeogramONE" target="_blank">posted source code</a> on GitHub, hurray for successful Kickstarter projects), there is a new kid on the block looking to create an entire open source tracking platform.</p>
<p>The <a title="Kickstarter - i.AM Remote GPS tracking platform" href="http://www.kickstarter.com/projects/385904042/remote-gps-tracking/" target="_blank">i.AM (Intelligent Asset Management) GPS tracking system</a> from WRD Systems is also looking for some crowdfunding love. It includes plans for an open source tracking device, a desktop application and mobile apps to aggregate and organize tracker data. The company needs a healthy chunk of change to finish hardware and software development, plus do an initial production run.</p>
<p>The hardware looks small and clean, with an integrated GSM/GPS module and not a lot of extraneous components. It&#8217;s powered by an ATTiny 2313 and a SIMCOM SIM908C for tracking and transmitting. The software we have some questions about &#8211; why make a desktop app when you could accomplish the same thing with a web service? Hosting costs wouldn&#8217;t be too high, and it&#8217;s much more accessible, easier to integrate the data with other applications, or incorporate community improvements. Desktop just feels rather&#8230; 2004-ish. Also, while not unique to this project, we&#8217;d like to see these creators open up more of their development <em>before</em> the project gets made. It&#8217;s always difficult to show off a work in progress, but by taking feedback early and often, the end result is a product that is more aligned with users&#8217; needs and wants.</p>
<p>The team and project seem to have a solid technical foundation, so it&#8217;s reasonable to assume that the core rewards will get filled. Interestingly, the Kickstarter page mentions collaboration with other makers of OSS trackers, including the DSS product. A unified platform for all manner of tracking devices would be a very interesting play, something a la <a title="Electric Imp" href="http://electricimp.com/" target="_blank">Electric Imp</a> or <a title="Cosm - Where the Internet of Things is being built." href="https://cosm.com/" target="_blank">Cosm</a> for the GPS world. Again, that would seem to necessitate a web platform, but we&#8217;ll be watching to see how this one turns out.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=bGObYXSTDCA:KtQ8qL8lbNw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=bGObYXSTDCA:KtQ8qL8lbNw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=bGObYXSTDCA:KtQ8qL8lbNw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=bGObYXSTDCA:KtQ8qL8lbNw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=bGObYXSTDCA:KtQ8qL8lbNw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=bGObYXSTDCA:KtQ8qL8lbNw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=bGObYXSTDCA:KtQ8qL8lbNw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=bGObYXSTDCA:KtQ8qL8lbNw:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/gps-tracking-system-one-location-platform-to-rule-them-all/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Take your prototyping to a new level with the ODROID-U2 dev platform</title>
		<link>http://www.engblaze.com/take-prototyping-to-new-level-with-odroid-u2-dev-platform/</link>
		<comments>http://www.engblaze.com/take-prototyping-to-new-level-with-odroid-u2-dev-platform/#comments</comments>
		<pubDate>Fri, 04 Jan 2013 05:10:05 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Media]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Prototyping]]></category>
		<category><![CDATA[Showcase]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[development platform]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[media center]]></category>
		<category><![CDATA[SoC]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=1035</guid>
		<description><![CDATA[The Raspberry-Pi has been a media darling as of late, and deservedly so. It&#8217;s a full computing platform that can do many wonderful things, all for less than a few day&#8217;s worth of Starbucks lattes. But what if you simply &#8230; <a href="http://www.engblaze.com/take-prototyping-to-new-level-with-odroid-u2-dev-platform/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><img class="size-full wp-image-1036 alignnone" title="Hardkernel ODROID-U2 quad-core development platform" alt="Pi, meet your new daddy." src="http://www.engblaze.com/wp/wp-content/uploads/odroid-u2.jpg" width="350" height="286" /></p>
<p>The Raspberry-Pi has been a media darling as of late, and deservedly so. It&#8217;s a full computing platform that can do many wonderful things, all for less than a few day&#8217;s worth of Starbucks lattes. But what if you simply need <em><a href="http://www.hark.com/clips/bqsbsjzftx-given-er-all-shes-got-captain" target="_blank">moah powah</a></em>?</p>
<p><span id="more-1035"></span>In that case, you need the <a title="Hardkernel ODROID-U2 Android quad-core development platform" href="http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G135341370451" target="_blank">ODROID-U2 from Hardkernel</a>. How does a 1.7Ghz quad-core strike you? 2GB of RAM, perhaps? With 10/100 ethernet, 2 USB ports, and micro HDMI, ll for less than $90? I can feel your burning stare of disbelief. Go ahead, check out the link for yourself. I&#8217;ll wait.</p>
<p>Aha, so you&#8217;ve seen it with your own eyes. Now that stare has turned into a soft mad-scientist chuckle, eh? It&#8217;s ok, we had the same reaction ourselves. ODROID is short for &#8220;Open Android&#8221;, and apparently Hardkernel has developed an entire ODROID product line in the past. Previous models have advertised development applications from e-book readers to internet TV.</p>
<p>The U2 runs either Android 4 or Ubuntu Linux (and perhaps other Linux flavors as well, though we&#8217;re not sure). It features a Samsung Exynos 4412 Prime SoC, which includes an ARM Cortex-A9 as the central processor. Unlike the Pi, you&#8217;ll need some accessories to get it running out of the box, as you must power it with an external adapter and not via USB.</p>
<p>Since the Raspberry-Pi is <a href="http://www.howtogeek.com/119924/build-a-35-media-center-with-raspbmc-and-raspberry-pi/" target="_blank">reportedly a little sluggish</a> for media-intense applications, it would be interesting to see how this little bugger performs as a media center or car-PC. Either way, low cost hardware like the ODROID is a huge win for the hacking community, and we can&#8217;t wait to see what comes down the pipeline next.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=fbGTruxTyb8:SgOub0DILBc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=fbGTruxTyb8:SgOub0DILBc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=fbGTruxTyb8:SgOub0DILBc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=fbGTruxTyb8:SgOub0DILBc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=fbGTruxTyb8:SgOub0DILBc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=fbGTruxTyb8:SgOub0DILBc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=fbGTruxTyb8:SgOub0DILBc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=fbGTruxTyb8:SgOub0DILBc:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/take-prototyping-to-new-level-with-odroid-u2-dev-platform/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial: Using Atmel Studio 6 with Arduino projects</title>
		<link>http://www.engblaze.com/tutorial-using-atmel-studio-6-with-arduino-projects/</link>
		<comments>http://www.engblaze.com/tutorial-using-atmel-studio-6-with-arduino-projects/#comments</comments>
		<pubDate>Tue, 11 Sep 2012 03:41:29 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[AVR]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[atmel studio]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=1005</guid>
		<description><![CDATA[In our previous Atmel tutorial, we talked about how to set up the powerful AVR Studio 5 IDE to incorporate Arduino libraries and projects. As flexible as AVR Studio 5 is, it had a few issues, and Atmel has been &#8230; <a href="http://www.engblaze.com/tutorial-using-atmel-studio-6-with-arduino-projects/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1006" title="atmel-studio-6" src="http://www.engblaze.com/wp/wp-content/uploads/Fullscreen-capture-862012-105226-PM-001.jpg" alt="The Atmel Studio 6 start screen." width="640" height="188" /></p>
<p>In our <a title="Tutorial: Using AVR Studio 5 with Arduino projects" href="http://www.engblaze.com/tutorial-using-avr-studio-5-with-arduino-projects/">previous Atmel tutorial</a>, we talked about how to set up the powerful AVR Studio 5 IDE to incorporate Arduino libraries and projects. As flexible as AVR Studio 5 is, it had a few issues, and Atmel has been hard at work hustling the next major version out the door. Now, rebranded as <a title="Atmel Studio 6" href="http://www.atmel.com/microsite/atmel_studio6/default.aspx" target="_blank">Atmel Studio 6</a> (no longer just for AVRs!), the new version promises to be better, faster, and easier to use. Here, we&#8217;ll show you the quickest way to get up and running if you want to use Arduino code with all of the new features.</p>
<p>Note: This article explains how to set up the <a title="Atmel Studio 6" href="http://www.atmel.com/microsite/atmel_studio6/default.aspx" target="_blank">Atmel Studio 6 IDE</a> for use with Arduino projects, step-by-step.  It also notes on general setup for working with Atmel devices, background on the pros/cons of working with AVR Studio, and a few other tips.  A table of contents is below; feel free to skip to any section that interests you.<br />
<span id="more-1005"></span></p>
<ul>
<li><strong> <a href="#intro">Introduction</a></strong></li>
<li><strong> <a href="#prepare">Preparing AVR Studio and the Arduino core library</a></strong></li>
<li><strong> <a href="#setup">Compiler and linker setup</a></strong></li>
<li><strong> <a href="#build">Build your project</a></strong></li>
<li><strong> <a href="#flash">Flash!</a></strong></li>
<li><strong> <a href="#final">Final notes</a></strong></li>
<li><strong> <a href="#further">Further reading</a></strong></li>
</ul>
<h2>Introduction</h2>
<p>Atmel Studio 6 delivers a lot of the value that <a title="Atmel AVR Studio 5" href="www.atmel.com/microsite/avr_studio_5/default.asp" target="_blank">AVR Studio 5</a> promised but never quite gave.  Released in 2011 and based on Microsoft Visual Studio, Studio 5 was a large change from AVR Studio 4, which was based on the tried and true Eclipse IDE.  Studio 4 is seriously showing its age these days, so a refresh was welcome. However, version 5 came with a long list of bugs and didn&#8217;t deliver on a lot of the feature list, which left a lot of people wondering whether they should upgrade. The new version appears to have addressed a lot of those bugs, and gets higher marks from us in our initial testing.</p>
<h2>Why should I switch?</h2>
<p>Atmel Studio is a great choice for users that have outgrown the integrated Arduino IDE.  The Arduino IDE does so much under the hood that it can actually be quite limiting for experienced programmers.  As we discussed in our previous tutorial, the lack of compiler warnings and debugging capabilities (Serial.println() after every statement doesn&#8217;t count), make life hard when working on advanced projects.</p>
<p>AVR Studio is a huge step up from those limitations, but for many, making the switch cold turkey is just that: a huge step.  If you have a big project, porting the entire thing to pure C can be a daunting task.  Plus, some of those Arduino libraries are just so darn <em>convenient</em>. Software serial, anyone?  Ethernet capability?  Aw yeah.</p>
<p>So why not have the best of both worlds?  Arduino is basically a wrapper on top of C/C++ anyway, so technically, it&#8217;s possible to combine any Arduino sketch or library with your own custom code.  The trick is in setting up your project properly.  Here are the steps to create a fully functional Arduino project in AVR Studio 6.  Once accomplished, you can keep access to the huge Arduino user-contributed code library, but enjoy all the features of advanced AVR and a real IDE.<br />
<a name="prepare"></a></p>
<h2>Preparing AVR Studio and the Arduino core library</h2>
<ol>
<li>First, a few preparation steps.  This tutorial assumes you have AVR Studio installed already.  Unlike the last version, Studio 6 comes with full C++ support out of the box, so we don&#8217;t need to install anything extra.</li>
<li>In order to build Arduino projects, we need to grab the Arduino core library. Normally, the Arduino IDE compiles this for us whenever we compile a sketch. To use it in Atmel Studio, we&#8217;ll compile it first, then grab the compiled version and include it in our project. Open the Arduino IDE and turn on verbose output (<strong>&#8220;File&#8221; -&gt; &#8220;Preferences&#8221; -&gt; check &#8220;Show verbose output during compilation&#8221;</strong>). On Windows Vista or 7, the path should look like this:  <strong>C:/Users/&lt;MyUser&gt;/AppData/Local/Temp/</strong></li>
<li>Make sure the Arduino IDE is set for whichever chip you want to use with Atmel Studio, and compile any example sketch, such as the included blink example. In your output window at the bottom of the IDE window, you should see information on where the IDE put the temporary build output. It will look something like <strong>&#8220;C:Users\{Your User}\AppData\Local\Temp\build3173545040878149377.tmp&#8221;</strong>.</li>
<li>Before you open it, go to your Atmel Studio working directory. This is the folder that stores all of your projects &#8211; by default, it&#8217;s <strong>&#8220;..\My Documents\Atmel Studio\&#8221;</strong>. Create a new directory here to store your Arduino core files, and name it something appropriate (<strong>&#8220;arduinoCore&#8221;</strong> or similar).</li>
<li>Copy and paste the temporary directory from the Arduino IDE into Windows Explorer to open it. You&#8217;ll see a bunch of files, including one called <strong>core.a</strong>. Copy that file and paste it into your arduinoCore directory. Rename it from <strong>&#8220;core.a&#8221;</strong> to <strong>&#8220;libcore.a&#8221; </strong>so Atmel Studio recognizes it as a standard library. Now that it&#8217;s there, you can reuse it for any Atmel Studio project as long as you&#8217;re using the same type of AVR.</li>
<li>If you&#8217;re converting an existing sketch called <strong>&lt;sketch name&gt;</strong>, open the <strong>&lt;project_name&gt;.cpp</strong> file from the bldxxx.tmp directory in a text editor.  You can simply copy and paste this code into your AVR Studio project to speed things up in a minute.</li>
<li>Sweet, we&#8217;re ready to switch environments.  Open AVR Studio and create a new AVR Studio C++ executable project.  Remember to name it in the wizard that pops up, because it&#8217;s a pain to rename a project later.</li>
<li>Choose your chip type. Many Arduino boards use the ATMega328 or 328P, which you&#8217;ll find under the <strong>megaAVR, 8-bit</strong> device family. Older Arduinos use the ATMega168, while the newer Leonardo uses the ATMega32U4. Look closely at the chip on your board for the model # if you&#8217;re unsure what chip you have.</li>
<li>Copy and paste the source code from the compiled .cpp file you opened earlier into the project&#8217;s main .cpp file.  You can also copy/paste the source from your Arduino .pde sketch.  The first option is easier because it includes necessary function prototypes that the Arduino IDE automatically generates, while in the latter case you must add them yourself.  In either case, you have to have these prototypes, or else the compiler will complain that every single function is &#8220;not declared in this scope&#8221; when you try to build your project.  This is one of those things that the Arduino IDE hides from you.  Adding your own prototypes is a no brainer once you&#8217;re used to it, and it can actually save headache because automatic generation can cause problems in more advanced projects. Remember to include prototypes for setup() and loop() &#8211; those aren&#8217;t default CPP functions, and the AVR compiler sees them as your own additions just like anything else.</li>
<li>Add <code>#include Arduino.h".</code> to the very beginning of your source code.</li>
</ol>
<p><a name="setup"></a></p>
<h2>Compiler and linker setup</h2>
<p><img class="alignnone size-full wp-image-1012" title="C++ Compiler Directories" src="http://www.engblaze.com/wp/wp-content/uploads/Fullscreen-capture-9102012-101527-PM.jpg" alt="C++ Compiler Directories tab screenshot" width="640" height="261" /></p>
<ol>
<li>Now we have to tackle proper compiler setup and linking.  Go to <strong>&#8220;Project&#8221;-&gt;&#8221;&lt;ProjectName&gt; Properties&#8221;</strong> (or press <strong>Alt-F7</strong>), then click on <strong>&#8220;Toolchain&#8221;</strong>.  We need to setup a bunch of compiler options here. By default, this will only edit your <strong>&#8220;Debug&#8221;</strong> build configuration, so select <strong>“All Configurations”</strong> from the Configuration drop-down menu if you want to modify both release and debug configurations at the same time.</li>
<li>First, click on <strong>&#8220;Symbols&#8221;</strong>, in the left-hand <strong>&#8220;AVR/GNU C++ Compiler&#8221;</strong> dropdown menu. We need to add a symbol to tell the compiler the speed of our chip: for example, click the green plus icon, then enter <code>"F_CPU=16000000L"</code> for a 16Mhz chip. Most 5V Arduinos are running at 16Mhz, hence 16000000 (L stands for long integer). If you have a 3.3V Arduino, it will likely be set at 8Mhz, so use <code>F_CPU=8000000L</code> instead.  Next, add another symbol to define your Arduino software version: <code>"ARDUINO=100"</code> for v1.0, <code>"ARDUINO=101"</code> for v1.01, etc.</li>
<li>Click on to <strong>&#8220;Directories&#8221;</strong> in the same C++ Compiler menu. We need to add the directories that contain our Arduino core code and libraries, so the compiler can string it all together for us. For any Arduino project, we&#8217;ll need to tell the compiler where to find <strong>&#8220;Arduino.h&#8221;</strong> and <strong>&#8220;pins_arduino.h&#8221;</strong>. Starting in your Arduino installation directory, add the folders &#8220;./hardware/arduino/cores/arduino&#8221; and &#8220;./hardware/arduino/variants/standard&#8221;.</li>
<li>You&#8217;ll need to add the directories of any extra Arduino libraries you&#8217;re using. For example, if you include the SoftwareSerial library, go ahead and add that directory to this section so the compiler knows where to find it. If you forget anything, the compiler will tell you when you try to build, with a message such as &#8220;SoftwareSerial.h: No such file or directory&#8221;. You should also add the home directory of your project, so the compiler can find source files there.
<li>You&#8217;ll also need to add the .cpp source files for those same linked libraries to your actual Atmel Studio project. Add a directory to your project (<strong>“Project”->”New Folder”</strong>) and name it &#8220;libraries&#8221;, to keep things organized. Then, go to <strong>“Project”->”Add Existing Item”</strong> (or <strong>Shift+Alt+A</strong>), and find the source directories for your included libraries (usually in &#8220;<YourArduinoInstall>/libraries&#8221;, unless you have a custom setup).  Select the source files, but instead of clicking the “Add” button, click the small arrow next to it, and click “Add as link”.  You’ll notice the file show up in your Solution Explorer with a small shortcut icon next to it.</li>
<p><img title="C++ Compiler - Optimization setup" src="http://www.engblaze.com/wp/wp-content/uploads/Fullscreen-capture-9102012-101542-PM.jpg" alt="C++ Compiler - Optimization setup screenshot" width="640" height="250" /></li>
<li>Click on <strong>&#8220;Optimization&#8221;</strong> immediately under <strong>&#8220;Directories&#8221;</strong>.  Choose <strong>&#8220;Optimize for size&#8221;</strong> under <strong>&#8220;Optimization Level</strong>&#8220;.  Add <code>"-fdata-sections"</code> under &#8220;other optimization flags&#8221;, and check the box for &#8220;prepare functions for garbage collection&#8221;.  Next, click on <strong>&#8220;Miscellaneous&#8221;</strong> in the same list, and add <code>"-fno-exceptions"</code> to the <strong>&#8220;Other flags&#8221; </strong>field.  Keep in mind that the Arduino IDE keeps all other optimization flags off &#8211; feel free to leave the other default boxes in &#8220;Optimization&#8221; checked as they may improve program size, but if you&#8217;re having build problems, try turning them off.</li>
<li>Now we&#8217;ll move on to the linker. In the left-hand menu, click on <strong>&#8220;AVR/GNU Linker&#8221;-&gt;&#8221;Libraries&#8221;</strong>. In the top Libraries section, you should already see an entry for &#8220;m&#8221;, which is the AVR math library. Add an entry called &#8220;core&#8221;, which is our libcore.a file that we grabbed earlier.</li>
<li>We also need to tell it where to find libcore.a, so add our earlier &#8220;arduinoCore&#8221; directory under <strong>&#8220;Library search path</strong>&#8220;.</li>
<li>Click on <strong><strong>&#8220;AVR/GNU C++ Linker&#8221;-&gt;</strong>&#8220;Optimization&#8221;</strong>, and check the box for  <strong>&#8220;Garbage Collect unused sections (-Wl, &#8211;gc-sections)&#8221;</strong>.  This tells the linker to leave out unused portions of each library, which reduces final code size.</li>
<li>Awesome, we&#8217;re done with the project setup. Save your settings, and we can get back to the code.</li>
</ol>
<p><a name="build"></a></p>
<h2>Build your project</h2>
<ol>
<li>At this point, your environment should be completely set up.  Hit <strong>F7</strong> to build your solution and watch the output window.  Is it successful?  If so, great.  If not, take a look at the errors to see if there&#8217;s a problem with the code or if it&#8217;s likely a problem with the linked files.  Also take a look at the beautiful new world of compiler warnings you&#8217;ve uncovered.  If your project is at all complex and you&#8217;ve only compiled using the Arduino IDE previously, you&#8217;ll have at least a few warnings.  These warnings won&#8217;t necessarily break your program, but they could.  Eliminating them usually means you&#8217;re following best practices.  There are a few warnings generated by the Arduino core libraries &#8211; if you&#8217;re feeling adventurous you can alter that code, but everything will work fine if you leave them alone.</li>
</ol>
<h2>Configure AVRDude to flash your compiled code</h2>
<p><img class="alignnone size-full wp-image-1018" title="external-tools-setup" src="http://www.engblaze.com/wp/wp-content/uploads/Fullscreen-capture-9102012-113735-PM-001.jpg" alt="AVR Dude - External Tools setup screenshot" width="469" height="459" /></p>
<ol>
<li>Once you&#8217;ve built your project successfully, you need to upload it to your device.  Fortunately, you can do this using the exact same method as the Arduino IDE.  Arduino uses the avrdude utility to flash via serial, and we&#8217;ll do the same.  We just need to tell AVR Studio what options to use.  Click on <strong>&#8220;Tools&#8221;-&gt;&#8221;External Tools&#8230;&#8221;</strong>, then click <strong>&#8220;Add&#8221;</strong> in the window that pops up.</li>
<li>If you&#8217;re using a USB to Serial cable like most Arduino boards do, note which COM port it uses and make the title something like &#8220;Usb to Serial Programmer: COM10&#8243; for easy identification.</li>
<li>In the <strong>&#8220;Command&#8221;</strong> field, put the path to avrdude.exe in your Arduino installation.  For example: <code>"C:/arduino-1.0.1/hardware/tools/avr/bin/avrdude.exe"</code> (quotes removed).</li>
<li>In &#8220;Arguments&#8221;, paste this line: <code>-CC:\dev\arduino-1.0.1\hardware/tools/avr/etc/avrdude.conf -v -v -patmega328p -carduino -P\\.\COM10 -b57600 -D -Uflash:w:"$(ProjectDir)Debug\$(ItemFileName).hex":i </code>  Edit the path to your Arduino installation and change the COM port, chip target, and baud rate if necessary (ATMega328&#8242;s normally need 57600 baud, older ATMega168&#8242;s flash at 19200. One of our commenters pointed out that the Arduino Ethernet uses 115200 by default, so check what the Arduino IDE is using and copy that for your model).  The rest of the flags are the exact same as the Arduino IDE uses.  The &#8220;-v&#8221; flags control the level of verbosity &#8211; feel free to play with this parameter.  You can include up to four &#8220;-v&#8221;s (which logs every serial byte transmitted, woohoo!), but we&#8217;ve found that two flags provide enough information without being overwhelming.  Note: if you have any trouble with this step, go back to the Arduino IDE and flash a project in verbose mode by holding Shift while you press the &#8220;Upload&#8221; button.  This will display all of the command line output in the bottom status window, and you can see exactly what command your system is using to call avrdude.exe.  Edit accordingly for the AVR Studio options.  You may also want to check the <strong>&#8220;Use Output window&#8221;</strong> box so you can see the results of the flash; otherwise AVRDude will open a command window and close it the moment it&#8217;s done.</li>
</ol>
<p><a name="flash"></a></p>
<h2>Flash!</h2>
<ol>
<li>Boo yah.  Go back to your project and click on the <strong>&#8220;Tools</strong>&#8221; menu; there should now be a new menu item for your <strong>&#8220;USB to Serial Programmer&#8221;</strong>.  Make sure you have the main .cpp source file open in your IDE window &#8211; the serial programmer will try to access a .hex file for whatever tab is open, so this is the only one that will work. Ensure your Arduino is connected to your computer, then click the Programmer menu item.  You should see AVRDude open up in your output window, then a progress bar showing flash status.  Look for the &#8220;AVRDude is done.  Thank you!&#8221; message after a successful flash.</li>
</ol>
<p>A lot of this prep work only needs to be done once.  You&#8217;ll need to set up the toolchain properly for each project you create, but now that you have the Arduino core library and some practice, things go much quicker the 2nd time.  The AVRDude setup is universal and can be reused for every project.</p>
<p>You&#8217;re done!  You now have an Arduino with a fully working project, and a huge amount of new development possibilities ahead of you.  Explore AVR Studio and everything it has to offer, you&#8217;ll be impressed.  The AVR Simulator and step-through debugging are absolutely priceless when you&#8217;re working on a complex project, and you can now mix Arduino and avr-libc code to your hearts content.<br />
<a name="final"></a></p>
<h2>Final Notes:</h2>
<ol>
<li>In some cases, your build may produce &#8216;cxa_pure_virtual()&#8217; errors.  This is due to a missing error handling function for pure virtuals in C++, but we can provide it ourselves:  add
<pre>extern "C" void __cxa_pure_virtual() { while (1); }</pre>
<p>to your main source file.  This function doesn&#8217;t do much, but from what we&#8217;ve read these errors can safely be ignored, so we just provide a dummy function to make the compiler happy.  You could also place this in a <code>"pure_virtual.cpp"</code> file and then include it in every new project.</li>
<li>Are you looking for a cross platform solution?  You won&#8217;t find it here, as AVR Studio is Windows only.  If that&#8217;s alright with you, full steam ahead, but otherwise, you may want to look at <a title="Eclipse" href="http://www.eclipse.org/" target="_blank">Eclipse </a>as a full-featured, cross-platform IDE.  AVR Studio has some features that Eclipse doesn&#8217;t (the AVR Simulator is huge, among other things), but the latter is no slouch.  The Eclipse setup process is similar and is outlined in great detail on the <a title="AVR/GCC toolchain setup with Eclipse for Arduino" href="http://www.arduino.cc/playground/Code/Eclipse#AVR_GCC_toolchain" target="_blank">Arduino website</a>.</li>
</ol>
<p><a name="further"></a></p>
<h2>Further reading</h2>
<p><a title="Smiley's Workshop" href="http://smileymicros.com/blog/" target="_blank">Smiley&#8217;s Workshop</a>, a site dedicated to AVR programming and projects, has a <a title="Smiley's Workshop - Moving beyond Arduino" href="http://smileymicros.com/blog/2010/10/03/42/" target="_blank">comprehensive article</a> on switching from the Arduino IDE to AVR Studio.  It&#8217;s a bit older and discusses AVR Studio 4 instead of 5, but is excellent background reading if you&#8217;re still trying to wrap your head around everything.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=4j24B5Eonhc:BqS5dRr3Cgs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=4j24B5Eonhc:BqS5dRr3Cgs:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=4j24B5Eonhc:BqS5dRr3Cgs:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=4j24B5Eonhc:BqS5dRr3Cgs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=4j24B5Eonhc:BqS5dRr3Cgs:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=4j24B5Eonhc:BqS5dRr3Cgs:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=4j24B5Eonhc:BqS5dRr3Cgs:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=4j24B5Eonhc:BqS5dRr3Cgs:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/tutorial-using-atmel-studio-6-with-arduino-projects/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>AVR math optimization</title>
		<link>http://www.engblaze.com/avr-math-optimization/</link>
		<comments>http://www.engblaze.com/avr-math-optimization/#comments</comments>
		<pubDate>Tue, 17 Jul 2012 06:30:23 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[AVR]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[algorithms]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=999</guid>
		<description><![CDATA[Following up on our previous post on understanding floating point math and speed of operations on 8-bit AVRs, we ran across an excellent article today on Arduino math optimization. Alan walks through his implementation of an exponential moving average algorithm. &#8230; <a href="http://www.engblaze.com/avr-math-optimization/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.engblaze.com/wp/wp-content/uploads/Fullscreen-capture-7162012-112151-PM.jpg"><img class="alignnone size-full wp-image-1000" title="Fullscreen capture 7162012 112151 PM" src="http://www.engblaze.com/wp/wp-content/uploads/Fullscreen-capture-7162012-112151-PM.jpg" alt="" width="424" height="306" /></a></p>
<p>Following up on our previous post on understanding <a title="Faster code Fridays: Understand division and speed of operations" href="http://www.engblaze.com/faster-code-fridays-understand-division-and-speed-of-operations/">floating point math and speed of operations</a> on 8-bit AVRs, we ran across an excellent article today on <a title="Sensor smoothing and optimised maths on the Arduino" href="http://bleaklow.com/2012/06/20/sensor_smoothing_and_optimised_maths_on_the_arduino.html" target="_blank">Arduino math optimization</a>. Alan walks through his implementation of an exponential moving average algorithm. An exponential moving average normally requires floating point arithmetic, but due to the lack of native support on 8-bit AVRs, Alan worked out a way to do it with fixed point math.</p>
<p>After some experimentation, he was able to get his version running quite a bit faster than the floating point version, and offers a detailed writeup and tips along the way. Just as we found in our brief testing, the easiest AVR math optimization is to avoid division, since these processors don&#8217;t have a native divide instruction. If you&#8217;re looking to squeeze every last drop of performance out of your 8-bit chip and can&#8217;t (or won&#8217;t) upgrade to something more powerful, check this out for some good ideas.</p>
<p><em>Link: <a title="Sensor smoothing and optimised maths on the Arduino" href="http://bleaklow.com/2012/06/20/sensor_smoothing_and_optimised_maths_on_the_arduino.html" target="_blank">Sensor smoothing and optimised maths on the arduino</a></em></p>
<p><em>Original source: <a title="Hackaday - Speeding up AVR division" href="http://hackaday.com/2012/07/15/a-detailed-explanation-on-speeding-up-avr-division/" target="_blank">Hackaday</a></em></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=wpp5tTtIYfg:Yoq7qASfre4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=wpp5tTtIYfg:Yoq7qASfre4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=wpp5tTtIYfg:Yoq7qASfre4:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=wpp5tTtIYfg:Yoq7qASfre4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=wpp5tTtIYfg:Yoq7qASfre4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=wpp5tTtIYfg:Yoq7qASfre4:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=wpp5tTtIYfg:Yoq7qASfre4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=wpp5tTtIYfg:Yoq7qASfre4:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/avr-math-optimization/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Using a CMOS camera to replace conventional light sensors</title>
		<link>http://www.engblaze.com/using-a-cmos-camera-to-replace-conventional-light-sensors/</link>
		<comments>http://www.engblaze.com/using-a-cmos-camera-to-replace-conventional-light-sensors/#comments</comments>
		<pubDate>Tue, 22 May 2012 03:37:38 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Prototyping]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[camera]]></category>
		<category><![CDATA[CMOS]]></category>
		<category><![CDATA[image processing]]></category>
		<category><![CDATA[light]]></category>
		<category><![CDATA[robotics]]></category>
		<category><![CDATA[sensing]]></category>
		<category><![CDATA[sensors]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=991</guid>
		<description><![CDATA[A post on Embedded Lab that discusses using a CMOS camera for sensing applications caught our eye today. Traditionally, to process the output from a CMOS you need some serious number-crunching power, and common lore holds that most 8-bit microcontrollers &#8230; <a href="http://www.engblaze.com/using-a-cmos-camera-to-replace-conventional-light-sensors/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><img src="http://www.engblaze.com/wp/wp-content/uploads/cmos-camera-300x300.jpg" alt="Little did we know, that quarter is the size of a dinner plate." title="cmos-camera" width="300" height="300" class="alignnone size-medium wp-image-993" /></p>
<p>A post on Embedded Lab that discusses <a href="http://embedded-lab.com/blog/?p=4681" title="Using CMOS camera for sensing applications" target="_blank">using a CMOS camera for sensing applications</a> caught our eye today. Traditionally, to process the output from a CMOS you need some serious number-crunching power, and common lore holds that most 8-bit microcontrollers aren&#8217;t up to the task.  However, Ibrahim Kamal from IKALOGIC has written an <a href="http://www.ikalogic.com/image-processing-as-a-sensor/" title="CMOS camera as a sensor" target="_blank">article</a> that explains how you can use a CMOS to replace rudimentary image or light sensors such as photo diodes. </p>
<p>By reducing the captured resolution, discarding color data, and potentially converting the pixel values to binary information, you can still receive useful input but can parse it with a low-cost, low-power processor. In this way, an 8-bit chip can open the door to basic image processing, allowing for lots of possibilities in robotics or other projects.</p>
<p>The article includes an example that hooks up a CMOS available on Sparkfun (the <a href="http://www.sparkfun.com/products/8667" title="CMOS camera - Sparkfun" target="_blank">TCM8230MD</a>) to an AVR XMega.  For $10, you have no excuse not to try it in your next sensing project.</p>
<p><em>Article: <a href="http://www.ikalogic.com/image-processing-as-a-sensor/" title="CMOS camera as a sensor" target="_blank">IKALOGIC</a><br />
Source: <a href="http://embedded-lab.com/blog/?p=4681" title="Using CMOS camera for sensing applications" target="_blank">Embedded Lab</a><br />
Image: <a href="http://www.sparkfun.com/products/8667" title="CMOS camera - Sparkfun" target="_blank">Sparkfun</a></em></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=1t9C09mH3ug:63Sdj6Aoukg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=1t9C09mH3ug:63Sdj6Aoukg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=1t9C09mH3ug:63Sdj6Aoukg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=1t9C09mH3ug:63Sdj6Aoukg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=1t9C09mH3ug:63Sdj6Aoukg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=1t9C09mH3ug:63Sdj6Aoukg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=1t9C09mH3ug:63Sdj6Aoukg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=1t9C09mH3ug:63Sdj6Aoukg:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/using-a-cmos-camera-to-replace-conventional-light-sensors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The best books on electronics</title>
		<link>http://www.engblaze.com/best-books-on-electronics/</link>
		<comments>http://www.engblaze.com/best-books-on-electronics/#comments</comments>
		<pubDate>Sat, 14 Apr 2012 15:44:50 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[circuit design]]></category>
		<category><![CDATA[circuits]]></category>
		<category><![CDATA[eda]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[pcb]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[resources]]></category>
		<category><![CDATA[tutorials]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=763</guid>
		<description><![CDATA[Electronics is relevant to our modern lives like almost no other field of science. On the one hand, we have the physical world, with objects and phenomena that we touch, see, and interact with. On the other, we increasingly spend &#8230; <a href="http://www.engblaze.com/best-books-on-electronics/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><img src="http://www.engblaze.com/wp/wp-content/uploads/electronics-books-e1334416826138.jpg" alt="" title="electronics-books" width="213" height="213" class="alignright size-full wp-image-983" />Electronics is relevant to our modern lives like almost no other field of science.  On the one hand, we have the physical world, with objects and phenomena that we touch, see, and interact with.  On the other, we increasingly spend time with the digital world, where we log data in spreadsheets or apps, solve complex problems with the help of computers, or rely on various devices to make our lives easier.</p>
<p>Sitting in between these two worlds and bridging the divide is electronics. Without it, there would be no microprocessors, no grids of tiny transistors to switch on and off and do our bidding millions of times per second.  No way to power our homes or gadgets, or even manufacture many of the non-technical goods we take for granted.  It has truly revolutionized every facet of our existence.  Much emphasis today is placed on programming and application development, but it is important to remember that these things are abstractions sitting on top of a physical and electrical foundation.</p>
<p>In case all of this talk of revolution has you fired up, we&#8217;ve collected some of the best books to help you learn electronics.  Whether you&#8217;re a total beginner or advanced engineer, check out the resources below to find a learning guide that&#8217;s right for you.</p>
<p><span id="more-763"></span></p>
<h2><a title="The Art of Electronics" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'The Art of Electronics']);" href="http://www.engblaze.com/go/the-art-of-electronics" target="_blank">The Art of Electronics</a></h2>
<h3>Paul Horowitz, Winfield Hill</h3>
<p><img src="http://www.engblaze.com/wp/wp-content/uploads/art-of-electronics.jpg" alt="" title="art-of-electronics" width="185" height="273" class="alignright size-full wp-image-978" />In many fields of study, there is often a &#8220;grand-daddy&#8221; or &#8220;godfather&#8221; textbook.  This is the book that is passed down from generation to generation, the reference that graces every introductory college course on the subject.  Some might even call this book the Bible of it&#8217;s respective topic. <em>The Art of Electronics</em>, published in various forms for over 30 years, is that book for electronics.  </p>
<p>We would write a mini-review of this book as we do for the others, but its history speaks for itself.  If in doubt, check the reviews on its <a target="_blank" href="http://www.engblaze.com/go/getting-started-in-electronics">Amazon page</a>, both from various published sources and Amazon buyers.  When words like &#8220;delightful&#8221;, &#8220;lovely&#8221;, &#8220;refreshingly simple&#8221;, and &#8220;finest book on the subject of electronics&#8221; are thrown around with reckless abandon, you know you&#8217;re dealing with a trusted source.</p>
<p>We should note here that <em>The Art of Electronics</em> is not a quick read, as it clocks in at over 1100 pages.  However, it&#8217;s designed as both a learning resource and a reference, so you can easily keep it handy and look up a particular topic or concept as needed.  It&#8217;s also a bit more expensive than other books here, but most agree the price is well worth it.  If we had to pick one book on electronics to keep on our shelves, this would be it.</p>
<p><strong>Get it here: <a title="The Art of Electronics" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'The Art of Electronics']);" href="http://www.engblaze.com/go/the-art-of-electronics" target="_blank">The Art of Electronics</a></strong></p>
<h2><a title="Getting Started in Electronics" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'Getting Started in Electronics']);" href="http://www.engblaze.com/go/getting-started-in-electronics" target="_blank">Getting Started in Electronics</a></h2>
<h3>Forest M. Mims III</h3>
<p><img src="http://www.engblaze.com/wp/wp-content/uploads/getting-started-in-electronics.jpg" alt="" title="getting-started-in-electronics" width="194" height="260" class="alignright size-full wp-image-979" />Despite the name of another classic book on this list, Getting Started in Electronics is truly about the art of electronics, and is a work of art unto itself.  Each page is hand lettered and each illustration is hand drawn, lending it the comfortable feel of a class notebook.  The painstaking effort is clear in every facet.  In the author&#8217;s own words:</p>
<blockquote><p>The book was developed during a 58-day marathon session of laying out the book and then drawing/printing the pages with a 0.7 mm mechanical pencil. It was then necessary to develop and test each of the 100 circuits. Each circuit was built and tested at least three times to avoid errors. The final round of tests was done directly from the hand-lettered text. The problem with the final testing was that many of the circuits could be built from memory without referring to the circuit diagrams in the book. This, of course, could have allowed errors to slip through. So it was necessary to check off each connection to make sure the book version was correctly reassembled from scratch. </p></blockquote>
<p>Mim&#8217;s personal touch continues throughout the text, and readers unanimously agree that the book is friendly to beginners, easy to follow, and provides a ton of good examples.  Electronics is never an easy subject to master, but if you are a total beginner, this book is a good place to start.</p>
<p><strong>Get the book here: <a title="Getting Started in Electronics" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'Getting Started in Electronics']);" href="http://www.engblaze.com/go/getting-started-in-electronics" target="_blank">Getting Started in Electronics</a></strong></p>
<h2><a title="Make: Electronics (Learning by Discovery)" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'Make: Electronics (Learning by Discovery)']);" href="http://www.engblaze.com/go/make-electronics" target="_blank">Make: Electronics (Learning by Discovery)</a></h2>
<h3>Charles Platt</h3>
<p><img src="http://www.engblaze.com/wp/wp-content/uploads/make-electronics.jpg" alt="" title="make-electronics" width="196" height="240" class="alignright size-full wp-image-977" />Charles Platt is a contributing editor to Make: Magazine and has a long history in electronal hardware and technical writing.  This book emphasizes hands-on learning.  The experiments begin as soon as you crack open the first chapter (with a battery to the tongue, no less) and continue throughout, with little time wasted explaining historical background.  If you are someone that needs to learn by doing, <em>Make: Electronics</em> is the perfect companion.  Although the book does go deeper into theory as you progress, it eases you into it, and chooses the appropriate time to introduce more complex concepts. In the words of one reviewer:</p>
<blockquote><p>I learned more in the first 20 minutes with this book than I did after pouring through several other &#8220;electronics basics&#8221; books for countless hours.
</p></blockquote>
<p>Overall, this is a great introduction to electronics and highly recommended for anyone who wants to get their hands dirty right away.</p>
<p><strong>Find </strong><strong>the book here: <a title="Make: Electronics (Learning by Discovery)" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'Make: Electronics (Learning by Discovery)']);" href="http://www.engblaze.com/go/make-electronics" target="_blank">Make: Electronics (Learning by Discovery)</a></strong></p>
<h2><a title="How to Diagnose and Fix Everything Electronic" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'How to Diagnose and Fix Everything Electronic']);" href="http://www.engblaze.com/go/diagnose-fix-everything-electronic" target="_blank">How to Diagnose and Fix Everything Electronic</a></h2>
<h3>Michael Geier</h3>
<p><img src="http://www.engblaze.com/wp/wp-content/uploads/diagnosis-fix-everything-electronic.jpg" alt="" title="diagnosis-fix-everything-electronic" width="191" height="240" class="alignright size-full wp-image-976" />This guide is the appropriate choice for anyone who absolutely hates textbooks.  Written from an entirely practical perspective, <em>How to Diagnose and Fix Everything Electronic</em> discusses relevant skills for working with electronics in the real world.  </p>
<p>Though you might not gain the same deep understanding as you might from one of the more theoretical texts above, the topics conveyed are extremely valuable.  Michael Gaier covers tool selection and workbench setup, how to disassemble and examine various devices, and how to successfully replace components and button everything up.  The tips on workflow with actual devices is especially valuable, as most electronics books cover circuits from an abstract, laboratory-oriented perspective.</p>
<p><strong>Snag the book here: <a title="How to Diagnose and Fix Everything Electronic" onclick="_gaq.push(['_trackEvent', 'AM', 'Click', 'How to Diagnose and Fix Everything Electronic']);" href="http://www.engblaze.com/go/diagnose-fix-everything-electronic" target="_blank">How to Diagnose and Fix Everything Electronic</a></strong></p>
<p>When you learn the basics of the electrical world, you begin to understand how our advanced technology is shaped.  When your phone battery runs low, you understand what&#8217;s going on.  If your camera breaks, you may know enough to attempt a repair, saving you money.  Even knowing the basics of voltage, current, and power can help you analyze your energy usage and save money on your next electricity bill.  Finally, you have the power to create and modify your own devices, instead of forever wondering how that magical little iPhone does it&#8217;s thing.</p>
<p>Pick up one of these books and start learning.  No matter what your skill level, you&#8217;re bound to find a wealth of fascinating insight and possibilities for exploration.</p>
<p>Do you have suggestions for other books to check out?  Let us know in the comments.  Until then, enjoy discovering the limitless possibilities of electronics.</p>
<p><em>Image credit: <a href="http://www.flickr.com/photos/aresauburnphotos/2984347029/" target="_blank">aresauburn</a></em></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=dHi9ksn8gfo:Uo_4Yq0T_uE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=dHi9ksn8gfo:Uo_4Yq0T_uE:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=dHi9ksn8gfo:Uo_4Yq0T_uE:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=dHi9ksn8gfo:Uo_4Yq0T_uE:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=dHi9ksn8gfo:Uo_4Yq0T_uE:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=dHi9ksn8gfo:Uo_4Yq0T_uE:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=dHi9ksn8gfo:Uo_4Yq0T_uE:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=dHi9ksn8gfo:Uo_4Yq0T_uE:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/best-books-on-electronics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The top 5 Arduino projects for advanced hackers</title>
		<link>http://www.engblaze.com/top-arduino-projects-for-advanced-hackers/</link>
		<comments>http://www.engblaze.com/top-arduino-projects-for-advanced-hackers/#comments</comments>
		<pubDate>Tue, 10 Apr 2012 04:15:20 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[beer]]></category>
		<category><![CDATA[energy]]></category>
		<category><![CDATA[home automation]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[uav]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=674</guid>
		<description><![CDATA[As the Arduino surges in popularity, people keep dreaming up crazier and more complex ways to use it. We&#8217;ve rounded up five of the most impressive Arduino projects on the web to show what&#8217;s possible with such a versatile and &#8230; <a href="http://www.engblaze.com/top-arduino-projects-for-advanced-hackers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>As the Arduino surges in popularity, people keep dreaming up crazier and more complex ways to use it. We&#8217;ve rounded up five of the most impressive Arduino projects on the web to show what&#8217;s possible with such a versatile and inexpensive platform. Be warned &#8211; these projects aren&#8217;t for beginners, but if you&#8217;re looking for a challenge and something to brag about, they could be just the ticket.</p>
<p><span id="more-674"></span>Click any item on the list to jump to the relevant section:</p>
<ol>
<li><a href="#oem">Open Energy Monitor</a> &#8211; Build a home energy monitoring system</li>
<li><a href="#openmoco">OpenMoCo</a> &#8211; Make automated camera control rigs like the pros</li>
<li><a href="#diydrones">DIY Drones</a> &#8211; Fly an unmanned aerial vehicle</li>
<li><a href="#magicmirror">DIY Magic Mirror</a> &#8211; Create a cinema-worthy prop</li>
<li><a href="#beer">Arduino beer brewing</a> &#8211; Get yo&#8217; geeky drink on</li>
</ol>
<p><a name="oem"></a></p>
<h2><a title="Home" href="http://openenergymonitor.org/emon/">Open Energy Monitor</a></h2>
<p><img class="alignnone size-full wp-image-957" title="oem-emon" src="http://www.engblaze.com/wp/wp-content/uploads/oem-emon.png" alt="" width="740" height="397" /></p>
<p><a title="Home" href="http://openenergymonitor.org/emon/">Open Energy Monitor</a> is an open source energy monitor for use throughout your entire house.  Much more than just a quick circuit you slap on your utility meter, OpenEnergyMonitor consists of multiple components that work together to take readings on energy consumption by room or device, room temperature, and more, then feed all of it wirelessly back to a dashboard that can be displayed locally or through a web interface.</p>
<p>We like Open Energy Monitor a lot because it&#8217;s a great introduction to real-world systems. When you build a home monitoring or automation platform, you&#8217;re using your Arduino as part of a larger network rather than just a standalone device.  Learning how to get your microcontroller talking to the outside world is critical as you graduate to more complex projects, and OEM provides a great example of a polished, well designed architecture.</p>
<p><a name="openmoco"></a></p>
<h2><a title="OpenMoCo" href="http://openmoco.org/" target="_blank">OpenMoCo &#8211; The Open-Source Photographic Motion-Control Community</a></h2>
<p><img class="alignnone size-full wp-image-956" title="openmoco-example" src="http://www.engblaze.com/wp/wp-content/uploads/openmoco-example.jpg" alt="" width="600" height="402" /></p>
<p>As described in the expanded title, <a title="OpenMoCo" href="http://openmoco.org/" target="_blank">OpenMoCo</a> is all about enabling motion in photography. Whether shooting video, time-lapse, or panoramic photography, accurate camera motion is often an important consideration. As many photographers know, professional equipment for automating camera movement and activation can be prohibitively expensive. OpenMoCo serves as a repository for community knowledge on how to design and create motion control tools on a budget.</p>
<p>Most OpenMoCo tools start with the <a title="OpenMoCo reference design" href="http://openmoco.org/node/3" target="_blank">OpenMoCo reference design</a>, which is a modular platform that consists of an engine, interfaces, and elements. The Arduino-based engine covers the brains of the operations, interfaces include various UX controls and displays, and elements comprise motion tools such as stepper motors or actuators.</p>
<p><a name="diydrones"></a></p>
<h2><a title="DIY Drones" href="http://diydrones.com/" target="_blank">DIY Drones</a></h2>
<p><img class="alignnone size-full wp-image-950" title="diy-drones-quadcopter" src="http://www.engblaze.com/wp/wp-content/uploads/diy-drones-quadcopter.jpg" alt="" width="640" height="285" /></p>
<p>Have you ever seen Predator drones in the news or watched the robot planes in Terminator movies and thought &#8220;Man, I wish I could build one of those&#8221;? Well, now you can. <a title="DIY Drones" href="http://diydrones.com/" target="_blank">DIY Drones</a> describes themselves as &#8220;the home for everything about amateur Unmanned Aerial Vehicles (UAVs)&#8221;. We don&#8217;t think too many people would argue, as the community has grown to over 20,000 members and is one of the top 100,000 websites in the world.</p>
<p>DIY Drones goal is to create hardware and software for any type of aerial robot, whether it be a helicopter, plane, quadcopter, or blimp. Their site is packed with various user groups, blogs, and forums, all with useful information on starting your own project. The DIY Drones store offers their premier product, the <a title="ArduPilot" href="http://www.diydrones.com/notes/ArduPilot" target="_blank">ArduPilot</a>, a universal autopilot board equipped with an Arduino Mega 2560, 6-axis gyro/accelerometer, and GPS. Depending on what type of vehicle you&#8217;re creating, you can flash appropriate software such as <a title="ArduPlane - Plane autopilot software" href="http://diydrones.com/profiles/blogs/ardupilot-mega-home-page" target="_blank">ArduPlane</a> or <a title="ArduCopter - Helicopter autopilot software" href="http://code.google.com/p/arducopter/wiki/ArduCopter" target="_blank">ArduCopter</a> and be completely ready to fly. If you&#8217;re interested in drones or even radio controlled aircraft of any type, check out the site, because there&#8217;s a wealth of useful experience for any level of hobbyist.</p>
<p><a name="magicmirror"></a></p>
<h2><a title="DIY Magic Mirror and Photobooth" href="http://diymagicmirror.com/" target="_blank">DIY Magic Mirror</a></h2>
<p><iframe width="584" height="438" src="http://www.youtube.com/embed/H-fbEfpo8LU?feature=oembed" frameborder="0" allowfullscreen></iframe></p>
<p>The <a title="DIY Magic Mirror and Photobooth" href="http://diymagicmirror.com/" target="_blank">DIY Magic Mirror</a> is nifty contraption that will turn heads at your Halloween party, theme house, or even a bar. By combining an Arduino-compatible sensor kit with a laptop display and open-source software, you can create a mirror that interacts with visitors and spits out custom messages with text-to-speech. The site is more of a business venture than some of the other communities here, but the code is out there and the prices for the hardware are reasonable. You can get as involved as you want, by building the kit from scratch and even adding a breathalyzer so your mirror can publicly shame friends that overindulge at your holiday party.</p>
<p><a name="beer"></a></p>
<h2>Arduino beer brewing</h2>
<p><iframe width="584" height="438" src="http://www.youtube.com/embed/m4NNgrek8sc?feature=oembed" frameborder="0" allowfullscreen></iframe></p>
<p>Home brewing has gotten increasingly popular recently, as breweries get smaller, equipment gets cheaper, and Portland hipsters get more discerning in their IPA preferences. Luckily, Arduino can make this process easy, and a number of enterprising hackers have posted information on their automated beer brewing journeys.</p>
<p>The best resource we know of for this type of project is the <a title="beer hacks - Hack a Day" href="http://hackaday.com/category/beer-hacks/" target="_blank">HackaDay beer hacks category</a>, which has plentiful examples of homemade mashtuns, kegerators, and automated dispensers, all enhanced with Arduino.</p>
<p>There are also several other noteworthy destinations for Arduino-powered beer projects. First up, <a title="Kegbog Kegerator Project" href="http://kegbot.org/" target="_blank">Kegbot</a> is an impressive and full featured beer tracking and pouring system. As described on their site:</p>
<blockquote><p>Kegbot is a free, open-source project to turn your beer kegerator into a computerized drink tracker. Kegbot is an open source project, intended to beer enthusiasts, DIY hackers, homebrewers, and anyone with an interest in monitoring their beer.</p></blockquote>
<p>Next, homebrewing.com has an <a title="Home Brewing Automation with Arduino" href="http://www.homebrewing.com/articles/home-brewing-automation.php" target="_blank">article on home brewing automation with Arduino</a>, which links to several other projects such as the Halfluck Automated Brewing System (HABS) grain brewing machine.</p>
<h2>Wrap up</h2>
<p>There&#8217;s enough here to keep you tinkering for a while, but we know we&#8217;ve only scratched the surface of great high-level Arduino projects.  Do you have any suggestions that we should add to this list?  Let us know in the comments.  In the meantime, happy hacking&#8230;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=FQ4W4fjeOb8:bBEKUhvsKKo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=FQ4W4fjeOb8:bBEKUhvsKKo:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=FQ4W4fjeOb8:bBEKUhvsKKo:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=FQ4W4fjeOb8:bBEKUhvsKKo:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=FQ4W4fjeOb8:bBEKUhvsKKo:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=FQ4W4fjeOb8:bBEKUhvsKKo:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=FQ4W4fjeOb8:bBEKUhvsKKo:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=FQ4W4fjeOb8:bBEKUhvsKKo:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/top-arduino-projects-for-advanced-hackers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Arduino open source tracking device leverages Kickstarter</title>
		<link>http://www.engblaze.com/arduino-open-source-tracking-device/</link>
		<comments>http://www.engblaze.com/arduino-open-source-tracking-device/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 14:21:29 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Cellular]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[accelerometer]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[cellular]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[kickstarter]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[tracking]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=938</guid>
		<description><![CDATA[A new Kickstarter project aims to provide a low-cost, open source platform for building a GPS tracking device. The author, Wayne Truchsess of DSS Circuits, explains that a few years back, his brother in law had a PS3 stolen during &#8230; <a href="http://www.engblaze.com/arduino-open-source-tracking-device/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><iframe frameborder="0" height="360px" src="http://www.kickstarter.com/projects/dsscircuits/open-source-tracking-device/widget/video.html" width="480px"></iframe></p>
<p>A <a href="http://www.kickstarter.com/projects/dsscircuits/open-source-tracking-device" title="Open Source Tracking Device - Kickstarter" target="_blank">new Kickstarter project</a> aims to provide a low-cost, open source platform for building a GPS tracking device.  The author, Wayne Truchsess of <a href="http://dsscircuits.com/" title="DSS Circuits" target="_blank">DSS Circuits</a>, explains that a few years back, his brother in law had a PS3 stolen during a long power outage in the depths of winter.  Not wanting to repeat history, Wayne bought a fake PS3 case on eBay and developed his own <a href="http://dsscircuits.com/articles/video-game-console-tracker.html" title="Video game console tracker" target="_blank">prototype position tracker</a> to put inside it.  </p>
<p>The tracker consists of a GSM cellular modem, a GPS unit, and an accelerometer, all tied to an Arduino and a LiPo battery to provide brains and power, respectively.  Normally, the device lies in wait, asleep to save power.  If it detects motion, it turns on the modem and alerts a preconfigured phone number via SMS.  The owner can then respond with various commands to turn position tracking on or put the device back to sleep.</p>
<p><span id="more-938"></span>The prototype worked well, but used a lot of different components that were only loosely tied together.  This made it difficult for Wayne to tell others how to replicate the project, and also took up a lot of room inside the case.  After getting a lot of interest in the project, he decided to condense everything down to one board, and thus this Kickstarter project was born.  </p>
<p>If funding goals are met (as of this writing there is 52 days and less than $500 to go), Wayne will complete the project and open source the code, schematics, and board design.  He is offering the bare bones populated board at the $126 backing level, so as long as he isn&#8217;t relying too heavily on volume discounts, it seems likely that others could make their own device around that price point.</p>
<p>As the project writeup mentions, a theft tracking device is just one great idea that this platform enables.  GPS, cellular, and motion detection is a powerful sensing combination, and there&#8217;s really no limit to the projects that could be devised using the same package.</p>
<p>If you like the project, check out the <a href="http://www.kickstarter.com/projects/dsscircuits/open-source-tracking-device" title="Open Source Tracking Device - Kickstarter" target="_blank">Kickstarter page</a> and consider donating so Wayne can bring some Arduino tracker goodness to the masses.  Do you have your own idea for a Kickstarter project?  Let us know!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=etH6x2DYHfY:C34S7Cexi04:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=etH6x2DYHfY:C34S7Cexi04:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=etH6x2DYHfY:C34S7Cexi04:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=etH6x2DYHfY:C34S7Cexi04:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=etH6x2DYHfY:C34S7Cexi04:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=etH6x2DYHfY:C34S7Cexi04:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=etH6x2DYHfY:C34S7Cexi04:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=etH6x2DYHfY:C34S7Cexi04:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/arduino-open-source-tracking-device/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>How to solder like a pro</title>
		<link>http://www.engblaze.com/how-to-solder-like-a-pro/</link>
		<comments>http://www.engblaze.com/how-to-solder-like-a-pro/#comments</comments>
		<pubDate>Sat, 31 Mar 2012 04:23:37 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[circuits]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[pcb]]></category>
		<category><![CDATA[solder]]></category>
		<category><![CDATA[soldering]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=933</guid>
		<description><![CDATA[Soldering is a skill that electronics newbies often find intimidating, but it doesn&#8217;t have to be. Jeff Keyzer, Mitch Altman, and Andy Nordgren put together an excellent guide called Soldering is Easy. It&#8217;s packed with information on how to make &#8230; <a href="http://www.engblaze.com/how-to-solder-like-a-pro/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-934" title="soldering-cover" src="http://www.engblaze.com/wp/wp-content/uploads/soldering-cover.jpg" alt="" width="500" height="632" /></p>
<p>Soldering is a skill that electronics newbies often find intimidating, but it doesn&#8217;t have to be. Jeff Keyzer, Mitch Altman, and Andy Nordgren put together an excellent guide called <a title="Soldering is Easy" href="http://mightyohm.com/blog/2011/04/soldering-is-easy-comic-book/" target="_blank">Soldering is Easy</a>. It&#8217;s packed with information on how to make good solder joints. Better yet, it&#8217;s illustrated in comic book format, so every explanation comes with clear pictures on exactly how to do things.</p>
<p>If you&#8217;re new to electronics and circuits, check out the guide to get up and running in no time. Even if you&#8217;re experienced but feel like you could shake off some rust, give it a glance. Good soldering technique is a lifelong skill that saves time and energy by creating cleaner, more reliable projects.</p>
<p><em>Source: <a title="Soldering is Easy book" href="http://mightyohm.com/blog/2011/04/soldering-is-easy-comic-book/" target="_blank">MightyOhm</a> via <a title="Tinkerlog soldering" href="http://tinkerlog.com/2011/04/11/soldering-is-easy/" target="_blank">Tinkerlog</a></em></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=2u15D66cbjs:iJ2QVQoQFr8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=2u15D66cbjs:iJ2QVQoQFr8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=2u15D66cbjs:iJ2QVQoQFr8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=2u15D66cbjs:iJ2QVQoQFr8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=2u15D66cbjs:iJ2QVQoQFr8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=2u15D66cbjs:iJ2QVQoQFr8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=2u15D66cbjs:iJ2QVQoQFr8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=2u15D66cbjs:iJ2QVQoQFr8:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/how-to-solder-like-a-pro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CircuitLab helps you sketch, simulate, and share schematics</title>
		<link>http://www.engblaze.com/circuitlab-helps-you-sketch-simulate-and-share-schematics/</link>
		<comments>http://www.engblaze.com/circuitlab-helps-you-sketch-simulate-and-share-schematics/#comments</comments>
		<pubDate>Tue, 27 Mar 2012 15:25:51 +0000</pubDate>
		<dc:creator>EngBlaze</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Prototyping]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[circuits]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[eda]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[pcb]]></category>
		<category><![CDATA[pcb layout]]></category>
		<category><![CDATA[schematic]]></category>

		<guid isPermaLink="false">http://www.engblaze.com/?p=921</guid>
		<description><![CDATA[In a previous post, we covered online IDEs for embedded software development. In order to run embedded programs you need to, well, embed them in something, so we also included a paragraph on Upverter, a tool for collaboratively editing and &#8230; <a href="http://www.engblaze.com/circuitlab-helps-you-sketch-simulate-and-share-schematics/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><iframe width="584" height="329" src="http://www.youtube.com/embed/f52GV1IpwVk?feature=oembed" frameborder="0" allowfullscreen></iframe></p>
<p>In a previous post, we covered <a title="Online IDEs for microcontrollers" href="http://www.engblaze.com/online-ides-for-microcontrollers/">online IDEs</a> for embedded software development. In order to run embedded programs you need to, well, embed them in something, so we also included a paragraph on Upverter, a tool for collaboratively editing and sharing circuit schematics.  Hardware design is an area that&#8217;s still relatively untouched by the web application revolution, and we always love to see new innovation.</p>
<p>More recently, we ran across <a title="CircuitLab" href="https://www.circuitlab.com/" target="_blank">CircuitLab</a>, an alternative schematic tool with some unique features. On the surface, the site seems extremely similar to Upverter: fire up an online editor, create your circuit in the browser, then save it to your account. At any point in this process, you can share a link to your circuit to let others view it and collaborate.</p>
<p><span id="more-921"></span>There are a few key differences with CircuitLab when compared to its <a title="Upverter - Our Y-Combinator experience" href="http://blog.upverter.com/our-y-combinator-experience" target="_blank">YC-backed</a> brethren. While Upverter aims to be a GitHub for hardware, with full permissions, multiple user editing, and version control, CircuitLab&#8217;s sharing is less nuanced. You can share a link to your schematic so that others can view it and leave notes, but multiple users can&#8217;t edit the same project. If they save your circuit, CircuitLab will save a separate copy to their account (a bit like forking using version control, but without any advantages of being able to merge changes later).</p>
<p>CircuitLab&#8217;s killer app is the fact that it allows real-time circuit simulation using models similar to SPICE, a popular desktop simulation package. Testing your circuits as you create them is a huge advantage, and if there&#8217;s any other online tool that allows this, we&#8217;re unaware of it.</p>
<p>Finally, CircuitLab is completely free for the time being, another differentiator from Upverter. The site points out that it may charge for premium features in the future, but for now, it&#8217;s all you can eat.</p>
<p>If someone could integrate PCB layout into one of these sites and construct a full EDA suite in the cloud, they would create serious business value.  The fact that Eagle, a 20 year old program that looks every bit its age, still dominates the hobbyist and small business market means that this niche is ripe for disruption.  Entrants like CircuitLab are a step in the right direction, and it will be interesting to watch how they evolve in the coming months.</p>
<p>If you&#8217;ve used CircuitLab before, let us know in the comments, and if not, check them out and tell us what you think.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/engblaze?a=RgRWuaeYdfo:BUP11a0auBg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/engblaze?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=RgRWuaeYdfo:BUP11a0auBg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/engblaze?i=RgRWuaeYdfo:BUP11a0auBg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=RgRWuaeYdfo:BUP11a0auBg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/engblaze?i=RgRWuaeYdfo:BUP11a0auBg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=RgRWuaeYdfo:BUP11a0auBg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/engblaze?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/engblaze?a=RgRWuaeYdfo:BUP11a0auBg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/engblaze?i=RgRWuaeYdfo:BUP11a0auBg:gIN9vFwOqvQ" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.engblaze.com/circuitlab-helps-you-sketch-simulate-and-share-schematics/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
