<?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>Crash Space &#187; How To</title>
	<atom:link href="http://blog.crashspace.org/category/how-to/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.crashspace.org</link>
	<description></description>
	<lastBuildDate>Tue, 13 Jul 2010 03:18:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Take Apart Tuesday No. 8: Saw III Digital Voice Recorder &amp; LOST Homage</title>
		<link>http://blog.crashspace.org/2010/05/take-apart-tuesday-no-8/</link>
		<comments>http://blog.crashspace.org/2010/05/take-apart-tuesday-no-8/#comments</comments>
		<pubDate>Tue, 18 May 2010 08:00:12 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=669</guid>
		<description><![CDATA[Yay! Another Take-Apart-Tuesday write up! I&#8217;ve been distracted by CRASH Space meta, but here&#8217;s one of the several dismantlings we&#8217;ve done since the last time I posted. I&#8217;ve written about how nice it is to be able to buy electronics supplies locally a few times.  All Electronics is one of those LA vendors. Tom brought [...]]]></description>
			<content:encoded><![CDATA[<p><a title="SAW III Digital Voice Recorder Circuit Board, all spilling out by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4607542242/"><img class="alignleft" style="margin: 5px" src="http://farm4.static.flickr.com/3329/4607542242_ff089259de_m.jpg" alt="SAW III Digital Voice Recorder Circuit Board, all spilling out" width="240" height="180" /></a>Yay! Another Take-Apart-Tuesday write up! I&#8217;ve been distracted by CRASH Space meta, but here&#8217;s one of the several dismantlings we&#8217;ve done since the last time I posted.</p>
<p>I&#8217;ve written about how nice it is to be able to buy electronics supplies locally a few times. <a href="http://www.allelectronics.com/"> All Electronics</a> is one of those LA vendors. Tom brought in one of the <a href="http://www.allelectronics.com/make-a-store/item/SAW-3/SAW-3-DIGITAL-VOICE-RECORDER/1.html">SAW III digital voice recorders</a> they sell for around 2 bucks in January, but, lets face it, it creeped me out. So what better to do than to Take it Apart!</p>
<p>Toys and random schwag are great resources for hacking projects. Frequently you can get whole working circuits for cheaper than an IC alone.  I tried to source comparable boards / chips and the next cheapest thing I found in a board was $6.95 (What looks like the <a href="http://www.aplusinc.com.tw/pro-recording.htm#">Aplus APR9301</a> at  <a href="http://bit.ly/d8Jwlu">Electronics123</a>). I found a chip alone at <a href="http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&amp;name=ISD1730PY-ND">Digikey</a> for $3.84 (<a href="http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/ConsumerElectronicsIC/ISDVoiceIC/ISDChipCorder/Pages/default.aspx">The Nuvoton ISD1700 ChipCorder® Series</a>)</p>
<p>As <a href="http://blog.makezine.com/archive/2008/07/how_to_circuitbend_a_chea.html">Make Magazine</a> pointed out back in 2008, <a href="http://www.getlofi.com/?p=1152">GetLoFi</a> has a write up showing what resistor to replace with a potentiometer for pitch control (R4) how to add a phono jack, etc.  Briefly mentioned is hooking one of these up to an Arduino board via transistors, so that&#8217;s what I&#8217;m going to show in this article.</p>
<p><span id="more-669"></span></p>
<h2>A word (or two) on transistors</h2>
<p>Ahh transistors. Transistors are the electrical components making the information age possible. For example, they are what<a href="http://en.wikipedia.org/wiki/Moore%27s_law"> Moore&#8217;s Law</a> is all about. Computer chip manufacturers keep figuring out  ways to double the number of transistors fitting on the same surface area every 18/20 months. This means exponential leaps in memory, sensor accuracy, processor speed, etc.  In other words, it is how we get so much fun obsolete-6-months-after-purchase stuff to take apart.</p>
<p>What can transistors do that make them vital to the cause? Well,  in the beginning, there was the button. And the button had to be pushed by a person in order to make anything happen.  And that was bad because we&#8217;re a slow and distractable sort of species with more fun stuff to do than pushing buttons and flipping switches. Do you watch LOST? Do you know how they spent season two pressing a button every 108 minutes? Well, if they had had an Arduino board and a transistor they could have written a quick little program and the darn hatch never would have blown up and maybe we could have had at least another season and I wouldn&#8217;t be so sad this week&#8230; But I digress.</p>
<p>So the magic of a transistor is that you can have one circuit &#8220;press a button&#8221; in a separate circuit which may have different voltages, current flows and other properties with no human actively involved.</p>
<table align="center">
<tbody>
<tr>
<td><a title="Sad Button Presser by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4607229905/"><img src="http://farm5.static.flickr.com/4018/4607229905_103f928b82_m.jpg" alt="Sad Button Presser" width="240" height="215" /></a></td>
<td><a title="Happy Chip by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4607229957/"><img src="http://farm5.static.flickr.com/4024/4607229957_95c3bfd86b_m.jpg" alt="Happy Chip" width="240" height="215" /></a></td>
</tr>
</tbody>
</table>
<p>Transistors are made by combining semiconducting materials.  Semiconductors come in two flavors. The N type and the P type. N type semiconductors tend to have extra electrons that they are happy to give away. They get the extra electrons because the silicon used to make them has been &#8220;doped&#8221; with phosphorous or arsenic.</p>
<p>In P type semiconductors boron or gallium are added to the silicon. Those additives cause cozy little holes in the silicon lattice. These holes make great homes for the overcrowded electrons in N type semiconductors.</p>
<p>When you put a layer of N-type next to a layer of P-type and apply current in the correct direction, the electrons will move from the N Type to the P type. Many diodes are made this way.  Think of them as taking advantage of a kind of electrical <a href="http://www.boingboing.net/2009/07/20/ink-calendar-paper-t.html">capillary action</a>.  When you slap on an extra N-type layer you get an NPN transistor.  One N-layer is connected to a pin called an Emitter. Another N-layer is connected to a pin called a Collector. The P-layer is connected to the pin commonly known as the Base.</p>
<p>When you apply a current via a positive voltage to the P-type layer through the Base of an NPN transistor you&#8217;re basically flooding the porous P-type material so it is electrically-wet enough to allow electrons to pass from the Emitter N-layer to the Collector N-layer. If it sound weird for electrons to go in the Emitter and out the Collector, remember <a href="http://www.rare-earth-magnets.com/t-conventional-vs-electron-flow.aspx">the direction of electrons is the opposite of how we talk about current</a>.</p>
<p style="text-align: left">Here is an example schematic of how you might wire something up. The gray circuit controls the teal circuit.<br />
<a title="Using an NPN transistor with a microcontroller by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4607112855/"><img class="aligncenter" style="margin: 5px" src="http://farm2.static.flickr.com/1329/4607112855_a54c4cf8c8_o.png" alt="Using an NPN transistor with a microcontroller" width="394" height="323" /></a><br />
What does all this actually look like in a pretending-to-be-practical application?</p>
<h2>Back to Our Saw Doll</h2>
<h3>Step 1: Take It Apart</h3>
<p><object width="500" height="600"><param name="flashvars" value="offsite=true&#038;lang=en-us&#038;page_show_url=%2Fphotos%2Fcarlynorama%2Fsets%2F72157624061380850%2Fshow%2F&#038;page_show_back_url=%2Fphotos%2Fcarlynorama%2Fsets%2F72157624061380850%2F&#038;set_id=72157624061380850&#038;jump_to="></param><param name="movie" value="http://www.flickr.com/apps/slideshow/show.swf?v=71649"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/slideshow/show.swf?v=71649" allowFullScreen="true" flashvars="offsite=true&#038;lang=en-us&#038;page_show_url=%2Fphotos%2Fcarlynorama%2Fsets%2F72157624061380850%2Fshow%2F&#038;page_show_back_url=%2Fphotos%2Fcarlynorama%2Fsets%2F72157624061380850%2F&#038;set_id=72157624061380850&#038;jump_to=" width="500" height="600"></embed></object></p>
<p>The circuit board for the the digital recorder has a few things coming off of it:</p>
<p>- a Microphone<br />
- a speaker<br />
- Leads to the power supply</p>
<p>A heads up: all of the leads are very fragile. I had to replace/re-solder a few several times while I was mucking about with it.</p>
<p>Additionally there are two buttons: S1 for record and S2 for playback</p>
<h3>Step 2: Prep for Use with Arduino</h3>
<p>So there are a few things that need to be done if you want to pirate a battery powered device with switches for use with a microcontroller.</p>
<ul>
<li>Step 2a: <a href="http://www.hardwaresecrets.com/article/164">Desolder the buttons</a> and replace with wire leads (shown below already attached to breadboard)</li>
</ul>
<p style="padding-left: 30px"><a title="Inside SAW III digital voice recorder wired to Arduino by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4606930481/"><img src="http://farm5.static.flickr.com/4011/4606930481_ab7f3e8e66_m.jpg" alt="Inside SAW III digital voice recorder wired to Arduino" width="240" height="180" /></a></p>
<ul>
<li>Step 2b: Remove the power supply and either replace the existing leads with 22 AWG wire or solder the existing wires to headers.</li>
</ul>
<p style="padding-left: 30px"><a title="Power leads soldered to headers by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4606931305/"><img src="http://farm5.static.flickr.com/4015/4606931305_6f4287816d_m.jpg" alt="Power leads soldered to headers" width="180" height="240" /></a><br />
If you wanted to you could also replace R4 with a potentiometer like in the GetLoFi example, but I didn&#8217;t do that.</p>
<h3>Step 3: Wire it up</h3>
<p>Here is an illustration of the basic wiring.</p>
<p><a title="Schematic of SAW III Recorder w/ Arduino by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4569941022/"><img src="http://farm4.static.flickr.com/3511/4569941022_9aae688e39.jpg" alt="Schematic of SAW III Recorder w/ Arduino" width="500" height="261" /></a></p>
<p>The big things to notice:</p>
<p>- Power to the breadboard is from the Arduino 3.3 V supply</p>
<p>- When having one circuit communicate with another circuit, the most important thing is that they agree on where ground is. There are two wires going to the SAW III board from the breadboard to make that common ground connection. The first is part of the power supply hook up. The second is an extra wire that is wired into the ground plane at a separate position. I made it dark green in the picture. This wire could be used to create the common ground while using the original battery supply to drive the digital recording circuit if you want to go that route instead.</p>
<p>- There is a 1k current limiting resistor connecting the signal lines from the Arduino to the base of the PN2222 transistors.</p>
<h3>Step 4: Code it Up</h3>
<p>Here is the most basic code that records a sample, then plays it, records, then plays, records than plays, etc.  It is suuuuuuuper annoying. Just so you know. And here is the video to prove it!</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/lvtTitu86uM&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/lvtTitu86uM&#038;fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a href="http://23longacre.com/sharedFiles/code/arduino/TakeApartTuesdays/0008_sawDoll/sawDoll_loopedControl">Get Code Here</a></p>
<h3>Homage to LOST project</h3>
<p>Because I&#8217;m going to miss LOST so much, I went ahead and wrote a little program that will play a recorded clip every 108 minutes.  Thrown in is  record-on-button-release functionality to reset the message meant for use with a the same wiring as above with a momentary switch added to pin 2. I suggest &#8220;DON&#8217;T DO IT JACK&#8221;</p>
<p><a href="http://23longacre.com/sharedFiles/code/arduino/TakeApartTuesdays/0008_sawDoll/_108Minutes">Get Code Here</a></p>
<p>If people have their own projects that they&#8217;ve done with these things, I&#8217;d love to see them.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/05/take-apart-tuesday-no-8/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Home Depot Rocket Science</title>
		<link>http://blog.crashspace.org/2010/05/home-depot-rocket-science/</link>
		<comments>http://blog.crashspace.org/2010/05/home-depot-rocket-science/#comments</comments>
		<pubDate>Fri, 07 May 2010 19:51:21 +0000</pubDate>
		<dc:creator>Sean Bonner</dc:creator>
				<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=667</guid>
		<description><![CDATA[In this clip, Crash Space member and founder of Acceleren, Clive shows how to make a basic rocket out of under $100 worth of parts from Home Depot. As you can see he&#8217;s doing a lot of this at the space and we&#8217;ll likely have some kind of a rocket night in the very near [...]]]></description>
			<content:encoded><![CDATA[<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/fVhQ1fvDb04&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/fVhQ1fvDb04&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
<p>In this clip, Crash Space member and founder of <a href="http://www.acceleren.com/">Acceleren</a>, Clive shows how to make a basic rocket out of under $100 worth of parts from Home Depot. As you can see he&#8217;s doing a lot of this at the space and we&#8217;ll likely have some kind of a rocket night in the very near future. Check out the <a href="http://www.youtube.com/user/AccelerenKinetics">Acceleren YouTube channel</a> for more vlogs and updates.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/05/home-depot-rocket-science/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Take Apart Tuesday No. 7: Keypad from Canon MP27D</title>
		<link>http://blog.crashspace.org/2010/03/take-apart-tuesday-no-7/</link>
		<comments>http://blog.crashspace.org/2010/03/take-apart-tuesday-no-7/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 06:48:32 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=433</guid>
		<description><![CDATA[Running way behind, but I think y&#8217;all will forgive me. We&#8217;ve been doing some great Put-Together-Tuesdays since the last time I posted with a SpeedMake on March 2nd and BrushBot assembling on the 9th. If you&#8217;ll look waaaay back with me to February 23rd, though, I&#8217;ll tell you about the Canon MP27D. While there is [...]]]></description>
			<content:encoded><![CDATA[<p>Running way behind, but I think y&#8217;all will forgive me. We&#8217;ve been doing some great Put-Together-Tuesdays since the last time I posted with a SpeedMake on March 2nd and BrushBot assembling on the 9th. If you&#8217;ll look waaaay back with me to February 23rd, though, I&#8217;ll tell you about the Canon MP27D.</p>
<table>
<tbody>
<tr>
<td><a title="IMG_5831 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4439261375/"><img src="http://farm5.static.flickr.com/4034/4439261375_ae572bb6b5_m.jpg" alt="IMG_5831" width="180" height="240" /></a></td>
<td><a title="IMG_5857 copy by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4402960742/"><img style="margin: 5px" src="http://farm3.static.flickr.com/2693/4402960742_5d9db28eee_m.jpg" alt="Image of the parts of an adding machine" width="180" height="240" /></a></td>
</tr>
</tbody>
</table>
<p>While there is some fabulous motor fun in this machine, there is also a keypad that uses something called row column scanning to do it&#8217;s business. I bring this up because it is pretty common to want more buttons in your project than your micro-controller has pins.    Also, the board they&#8217;re using is one of the easiest circuit boards to completely reverse engineer that I&#8217;ve seen in awhile because it has no parts on it.   So for keypad circuit stealing, keep reading.</p>
<p><span id="more-433"></span></p>
<h2>How did I know it was Row Column Scanning?</h2>
<p>There are 3 general sections to the circuitry in this machine. The first chunk is the main circuit board with the logic chip and display on it. The second unit is the printer. The third is the keypad.</p>
<p>The adding machine keypad holds 37 momentary buttons. Additionally there are 6 switches that have a total of 20 possible positions between them.  This means there are 57 input readings the micro-controller needs to collect at any given moment .  The gray cable wire between the keypad board and the main logic board only has 30 wires, almost half of what you&#8217;d need to transmit the key/switch information directly.  There are no mysterious black-box ICs anywhere on the keypad board to do any compression, so something else has to be happening.  The most likely candidate: Row Column Scanning</p>
<h2>What is Row Column Scanning?</h2>
<p>Row Column Scanning basically takes any group of information and gives each item in the group a unique identifier by combining a row coordinate with a column coordinate.  For those of you who remember, this is exactly how you play the game Battleships.</p>
<p>To review: lets say you have 16 items and want to represent them row-column style using a 4&#215;4 matrix</p>
<pre>     <strong>1     2     3     4</strong>
<strong>A</strong>    A1    A2    A3    A4
<strong>B</strong>    B1    B2    B3    B4
<strong>C</strong>    C1    C2    C3    C4
<strong>D</strong>    D1    D2    D3    D4</pre>
<p>In other words 1 = A1, 2 = A2, etc.</p>
<p>1       2       3       4       5      6      7       8       9     …    16<br />
A1    A2    A3    A4    B1    B2    B3    B4    C1    …    D4</p>
<p>This can seem pretty overwrought, but it means getting 16 digital inputs (or outputs) while only using up 8 pins on your micro-controller.</p>
<p>How&#8217;s that you say?</p>
<p>Instead of thinking &#8220;rows&#8221; think output pins. Instead of thinking &#8220;columns&#8221; think input pins. In other words, each row is attached to a different pin on the micro controller and each column has it&#8217;s own pin, too.</p>
<p>So if you wanted to see if button B3 was being pressed you&#8217;d light up row B and listen on the pin attached to column 3. If you get a reading, the switch at that intersection is closed.</p>
<pre>     1     2     <span style="color: #ff0000">3</span>     4
A    A1    A2    <span style="color: #ff0000">A3</span>    A4
<span style="color: #00ccff">B    B1    B2    <span style="color: #cc99ff">B3</span>    B4</span>
C    C1    C2    <span style="color: #ff0000">C3</span>    C4
D    D1    D2    <span style="color: #ff0000">D3</span>    D4</pre>
<p>The process is called Row-Column-Scanning because it&#8217;s more typical to scan through all the inputs at once rather than to check each button individually.  Programmaticly this requires one to:</p>
<ul>
<li>set the pin attached to Row A high,</li>
<li>then sweep through a check all the columns</li>
<li>set Row A back to low</li>
<li>set Row B high</li>
<li>and then check all the columns again, etc.</li>
</ul>
<h2>Identifying Rows and Columns in Real Hardware</h2>
<p>To steal this key pad, I needed to identify the rows and columns electrically.  The physical buttons are in a nice little grid pattern, but the underlying circuit doesn&#8217;t have to follow the same layout.</p>
<p>The mechanical engineering for the buttons on the adding machine follows a typical formula for keypads by using 3 three layers: a hard outer shell, a flexible layer with conductive material selectively applied and a circuit board with contacts exposed.   Pressing the button deforms the flexible layer, mushing the conductive material into the contacts on the board, thereby closing the circuit.</p>
<table border="0">
<tbody>
<tr>
<td><a title="IMG_5842 copy by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4402964132/"><img src="http://farm5.static.flickr.com/4035/4402964132_1b2b36abf0_t.jpg" alt="IMG_5842 copy" width="75" height="100" /></a></td>
<td><a title="IMG_5859 copy by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4402963170/"><img src="http://farm5.static.flickr.com/4041/4402963170_ce4fa85e91_t.jpg" alt="IMG_5859 copy" width="75" height="100" /></a></td>
<td><a title="IMG_5892 copy by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4402200823/"><img src="http://farm3.static.flickr.com/2782/4402200823_f719b895ed_t.jpg" alt="IMG_5892 copy" width="100" height="75" /></a></td>
<td><a title="IMG_5871 copy by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4402962548/"><img src="http://farm3.static.flickr.com/2766/4402962548_09d5d7823c_t.jpg" alt="IMG_5871 copy" width="100" height="75" /></a></td>
<td><a title="IMG_5875 copy by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4402198789/"><img src="http://farm5.static.flickr.com/4043/4402198789_9a5165e365_t.jpg" alt="IMG_5875 copy" width="100" height="75" /></a></td>
</tr>
</tbody>
</table>
<p>To properly map out the board I needed to test continuity between each exposed contact and the pins across the top.  What I did was place one probe of my multimeter on a contact and then run the other across the top.</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/-S7ja6RCkxg&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/-S7ja6RCkxg&#038;fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>This is the board numbered out:</p>
<p><a title="IMG_5893 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4439537221/"><img src="http://farm5.static.flickr.com/4042/4439537221_95e50deb7b.jpg" alt="IMG_5893" width="500" height="353" /></a></p>
<p>Once I had that done all that I put my pin info in a spread sheet that looked like this:<br />
<a title="Pin Data TAT 0007 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4440342218/"><img src="http://farm3.static.flickr.com/2743/4440342218_0f87c72032_m.jpg" alt="Pin Data TAT 0007" width="177" height="240" /></a></p>
<p>And then it looked like this:</p>
<table border="0">
<tbody>
<tr>
<td><a title="buttons_TAT0007_leftSort by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4440336190/"><img src="http://farm5.static.flickr.com/4001/4440336190_1ceabf3b60_m.jpg" alt="buttons_TAT0007_leftSort" width="240" height="185" /></a></td>
<td><a title="buttons_TAT0007_mixed2 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4439558867/"><img src="http://farm5.static.flickr.com/4059/4439558867_23d7a48bb9_m.jpg" alt="buttons_TAT0007_mixed2" width="240" height="185" /></a></td>
</tr>
<tr>
<td><a title="buttons_TAT0007__rightsort by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4439558701/"><img src="http://farm5.static.flickr.com/4018/4439558701_104bc18381_m.jpg" alt="buttons_TAT0007__rightsort" width="240" height="185" /></a></td>
<td><a title="buttons_TAT0007_mixedSort by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4439558533/"><img src="http://farm5.static.flickr.com/4072/4439558533_58451b9570_m.jpg" alt="buttons_TAT0007_mixedSort" width="240" height="185" /></a></td>
</tr>
</tbody>
</table>
<p>And then I fiddled around with it until it looked like this:</p>
<p><a title="buttons_TAT0007_myCodeSort by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4440361914/"><img src="http://farm5.static.flickr.com/4049/4440361914_be47ea6417.jpg" alt="buttons_TAT0007_myCodeSort" width="500" height="386" /></a></p>
<p>Doing this helped me see relationships between the pins and make decisions as to what the most effective way to code a scan would be.</p>
<p>To do the wiring I desoldered the ribbon cable and soldered in 22 AWG solid-core wire which is easier to use with a breadboard. I didn&#8217;t solder up all the leads, just the ones I thought I might use in the code. I used yellow for &#8220;Rows&#8221; and red for &#8220;Columns&#8221;</p>
<p>I wrote up two Arduino code examples. One that prints out a &#8220;picture&#8221; of the rows and columns via a serial connection, Sending a 0 when there is no button press found and 1 when there is a press detected.</p>
<table border="0">
<tbody>
<tr>
<td><a title="IMG_5902 copy by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4402969656/"><img src="http://farm5.static.flickr.com/4034/4402969656_7e88e55552_m.jpg" alt="IMG_5902 copy" width="240" height="180" /></a></td>
<td><a href="http://www.flickr.com/photos/carlynorama/4402969904/" title="TAT_0007_screenshotArduino by carlynorama, on Flickr"><img src="http://farm5.static.flickr.com/4027/4402969904_718e721596_m.jpg" width="240" height="167" alt="TAT_0007_screenshotArduino" /></a></td>
</tr>
</tbody>
</table>
<p>The other is a quick example of how you might integrate Row Column Scanning with a switch / case statement. The CS column in the last table I included are what the case statement numbers would be for each button if I had finished writing it out.</p>
<p>They both use nested for loops where the outer loop is the one that sets the Row/Output pins high and the inner loop sweeps the columns.</p>
<p>Just a reminder, to use this code you&#8217;ll have to put up with yet another layer of abstraction.  Each button now has yet another set of coordinates &#8211; which ARDUINO pins they map to. Circuit boards pins 1, 2, 3, 4 are Arduino pins 10, 11, 12, 13 for example.  Pins 10, 11, 12, 13, 18, 19, 20 and 21 on the keypad board are attached to pins 9, 8, 7, 6, 5, 4, 3 ,2 respectively.</p>
<p>Good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/03/take-apart-tuesday-no-7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Take Apart Tuesday No. 6 &#8211; HP 1120C</title>
		<link>http://blog.crashspace.org/2010/02/take-apart-tuesday-no-6/</link>
		<comments>http://blog.crashspace.org/2010/02/take-apart-tuesday-no-6/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 23:27:00 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[dc]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[motor]]></category>
		<category><![CDATA[printer]]></category>
		<category><![CDATA[smoke]]></category>
		<category><![CDATA[TakeApartTuesday]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=373</guid>
		<description><![CDATA[So a bit of a rewind on Take Apart Tuesday. This is the write up for February 9th. I was going to skip it and just go straight for hard drive we dismantled on the 16th, but a potentiometer actually smoked (sorry, no flames). It seemed like a requirement to share what that happened. So [...]]]></description>
			<content:encoded><![CDATA[<p>So a bit of a rewind on Take Apart Tuesday. This is the write up for February 9th. I was going to skip it and just go straight for hard drive we dismantled on the 16th, but a potentiometer actually smoked (sorry, no flames). It seemed like a requirement to share what that happened.</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/pWwsG2Ddd2A&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/pWwsG2Ddd2A&#038;fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>So this week a bit on optical encoding, then some on stall torque and how it relates to component power ratings.  Just for giggles I threw in some DC Motor code on the Arduino at the end. So keep reading… The Case of the Smoking Potentiometer</p>
<p><span id="more-373"></span></p>
<h2><strong>Encoding Speed and Location with a DC Motor</strong></h2>
<p>So the original plan for for the HP DeskJet 1120C was to crack it open, swap out the ink cartridge for a pen and then control the stepper motors based on sensor data to create a custom output device that actually gives you an instant hard copy datalog like a seismograph or lie detector.  It is a fun thing to do with old printers.</p>
<p>The tricky part is that once the 1120C was open it wasn&#8217;t actually a stepper motor controlling the horizontal location of the print head. Instead this printer uses a method called <a href="http://mechatronics.mech.northwestern.edu/design_ref/sensors/encoders.html">optical encoding</a> and a plain old DC motor to determine where the print head should be.</p>
<p>http://www.flickr.com/photos/carlynorama/sets/72157623489291976/</p>
<p>A strip of plastic with fine lines feeds past an IC called the <a href="http://groups.google.mw/group/sci.electronics.components/browse_thread/thread/a8555b7e3eba7652">Q9864</a>, a quadrature decoder. This chip has two outputs that each use sensors to detect the black lines on the strip as they zip past.  The spacing between the sensors is such that the readings from outputs are offset, 90° out of phase, apparently.  This allows the processor receiving the data to determine which direction the print head is moving.  The output is TTL compliant. (TTL: Transistor to Transistor Logic, it means this IC can directly talk to other similar integrated circuits with the understanding that &#8220;1&#8243; is conveyed by generating a voltage level somewhere between 2V and 5.25V and &#8220;0&#8243; is represented by any voltage under 0.8V)</p>
<p>Now to attempt hacking into this chip it would be best to have an Oscilloscope, etc, but I haven&#8217;t even covered basic DC motor stuff and we have a smoking potentiometer to get to.  I&#8217;m going to take the dodge and point people to a project that was just in Issue 20 of MAKE called the <a href="http://makezine.com/20/autophena/">Autophenakistoscope</a>.</p>
<p><a href="http://www.retro-tronics.com/Phenakistoscope/Phenakistoscope.mov">Video on Retro-Tronics</a></p>
<p>Why point to this project you ask? Well the Autophenakistoscope is a phenakistoscope (early moving-picture device) that uses an<a href="http://www.sparkfun.com/commerce/product_info.php?products_id=241"> infrared emitter and detector pair</a> in conjunction with regularly placed slits in a moving cardboard wheel  in order to control the speed of a motor. The Q9864 with it&#8217;s strip is essentially an advanced version of this setup so looking at the code MAKE has published is a good way to figure out what to do with the data once you&#8217;ve gotten it anyway.</p>
<p>But the thing I haven&#8217;t covered is, &#8220;Why would HP do this to me and ruin my fabulous quick project idea?&#8221; Um, I mean, &#8220;What are the advantages of using encoded motor control over a basic stepper motor?&#8221; Simply stated, motors sometimes slip so it is good to have an independent outside source confirming that the motor is where you think it is. Many <a href="http://en.wikipedia.org/wiki/Numerical_control">CNC</a> routers, printers, etc. opt for this type of encoding rather than taking on faith that a stepper will always be on it&#8217;s best behavior.</p>
<p><strong> </strong></p>
<h2><strong>Direct DC Motor Control And What can Go Wrong</strong></h2>
<p><strong> </strong></p>
<p>So instead of just hijacking another stepper, like we could do <a href="http://www.youtube.com/watch?v=y9cA1NFqR9w">with the paper feed stepper</a>, we needed to build a circuit for this new motor. If you remember, the motor in our toothbrush was a DC motor and the circuit consisted of a battery, a switch and the motor.  This is the most basic circuit and it is the one we recreated to verify that the motor worked and what voltage it needed to move.   Following the advice I gave in <a href="http://blog.crashspace.org/2010/02/take-apart-tuesday-no-5-electric-toothbrushes/">TAT0005</a> I started with my lowest available voltage &#8211; 5V from an Arduino board powered from am external power supply. When that failed to move the motor at all, the next available power source was a 9V battery. A straight from the package 9V moved the motor hesitantly.  The problem here may actually have been a current/torque issue since the motor was still attached to the rubber belt and the print head. What finally worked cleanly was a 12V/1Amp supply.</p>
<p>Video Recreation:</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/plS_dCzcBaM&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/plS_dCzcBaM&#038;fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a title="IMG_5795 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4380559380/"><img src="http://farm5.static.flickr.com/4006/4380559380_59f14829da_m.jpg" alt="IMG_5795" width="240" height="180" /></a></p>
<h2><strong>The Best Laid Plans</strong></h2>
<p>Off and on isn&#8217;t always fun enough, though.  The way to change the behavior of a motor is to change the way it&#8217;s getting its power.  To change direction &#8211; swap the position of the leads. To change speed &#8211; change the amount of voltage across the leads.  To provide more torque &#8211; increase the current available.</p>
<p>I wanted to quickly demonstrate speed control. To change the voltage available to the motor with a fixed voltage power supply you can <a href="http://www.allaboutcircuits.com/vol_1/chpt_5/1.html">add a resistor in series</a> with the motor. This resistor will burn off some of the potential energy/voltage as heat, decreasing what is available to the motor.  How much energy it steals from the circuit is related to how big of a resistor it is; a 100 Ohm resistor will drop the voltage a lot less than a 10k Ohm resistor.  You can calculate all this with <a href="http://www.allaboutcircuits.com/vol_1/chpt_2/1.html">Ohm&#8217;s Law</a> which I&#8217;ll use again later…</p>
<p>If you want to change the speed as you go the fixed resistor can be replaced by a variable resistor or rheostat.   <a href="http://www.allaboutcircuits.com/vol_6/chpt_3/7.html">All About Circuits</a> has a very good explanation of how this is done using a potentiometer.</p>
<p>And…. well, if you watched the video at the top of the post, you know what happened.</p>
<h2><strong>Pot Smoking</strong></h2>
<p>So, why did the potentiometer smoke? A few things, but the most important was that <strong>I failed to know my component.</strong> What do I mean by that? I mean that I grabbed a potentiometer out of my kit and ignored its power rating because I thought for a couple of seconds it wouldn&#8217;t matter. Wrong!</p>
<p>The three things I should have had in mind:</p>
<ul>
<li>Resistors dissipate energy as heat</li>
<li>Resistors/Potentiometers are given <a href="http://www.electronics-tutorials.ws/resistor/res_7.html">power ratings</a> based on the combination of voltage and current they can handle before they get immensely hot and fail. This is given in Watts (Watts = Volts * Amps)</li>
<li>Most of my pots are cheap 1/4 to 1/2 Watt jobs meant for use with a micro-controller</li>
<li>Motors draw A LOT of current when they are stalled.  Their resistance drops because no <a href="http://en.wikipedia.org/wiki/Counter-electromotive_force">counter EMF</a> is being generated to push against the current supplied by the power supply and <a href="http://www.the12volt.com/ohm/ohmslaw.asp">Ohm&#8217;s Law</a> tells us a drop in resistance at a a steady voltage will lead to a rise in the current. (V=I*R)   (<a href="http://www.combots.net/wiki/index.php/Stall_current">How much current are we talking about?</a>)</li>
<li>I was forcing the motor to stall. Repeatedly.</li>
<li>Plastic burns.</li>
</ul>
<p>So as the resistance in the potentiometer increased, the voltage to the motor dropped, and its speed dropped. The motor&#8217;s resistance plummeted faster than the resistance in the pot increased. The whole system started drawing more current.  This current was being pulled through the increased resistance of the pot… well to sum up it is entirely possible I was dragging a full amp at 12 V through a 1/4 W resistor set to its maximum resistance &#8211; hence smoke…</p>
<p><strong> </strong></p>
<h2><strong>So how do all those cheap electronics work?</strong></h2>
<p>A potentiometer that can handle 12.5 W can run between $15.00 to $30.00, depending on the quantity ordered.  Additionally, dropping voltage to a motor through resistance wastes a lot of energy and creates a lot of heat.  For these and other reasons a rheostat directly in series with a DC motor of any strength is not the method of choice for controlling speed.  What frequently gets used instead is something called <a href="http://www.tigoe.net/pcomp/code/input-output/analog-output">Pulse Width Modulation</a>.  This involves separating your control circuit (microcontroller/other pulsing IC) from your load circuit (motor) and <a href="http://itp.nyu.edu/physcomp/Tutorials/HighCurrentLoads">using a microcontroller</a> or something like a <a href="http://www.dprg.org/tutorials/2005-11a/index.html"> 555 timer</a> to turn the load on and off very fast. The ratio of on time to off time controls the speed. More on, faster. More off, slower.</p>
<p><strong> </strong></p>
<p>FYI &#8211; separating the logic from the load makes <a href="http://itp.nyu.edu/physcomp/Labs/DCMotorControl">switching directions easier</a> because power and ground aren&#8217;t hardwired to the leads of the motor directly.  For the sake of symmetry with TAT0004 I&#8217;ve duplicated the Stepper Motor Random Motion program as an example.</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/byN14xb9JSY&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/byN14xb9JSY&#038;fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Circuit Board:</p>
<p><a title="IMG_5804 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4379793479/"><img src="http://farm3.static.flickr.com/2748/4379793479_e83c121e9f_m.jpg" alt="IMG_5804" width="180" height="240" /></a></p>
<p><a href="http://23longacre.com/sharedFiles/code/arduino/motors/DCMotor_RandomMotion.txt">Code Here</a></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/02/take-apart-tuesday-no-6/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
<enclosure url="http://www.retro-tronics.com/Phenakistoscope/Phenakistoscope.mov" length="9671970" type="video/quicktime" />
		</item>
		<item>
		<title>Take Apart Tuesday No. 5: Electric Toothbrushes</title>
		<link>http://blog.crashspace.org/2010/02/take-apart-tuesday-no-5-electric-toothbrushes/</link>
		<comments>http://blog.crashspace.org/2010/02/take-apart-tuesday-no-5-electric-toothbrushes/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 21:15:24 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[motor]]></category>
		<category><![CDATA[TakeApartTuesday]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=337</guid>
		<description><![CDATA[This week&#8217;s Take Apart Tuesday is going to be a little light because we really spent the time after the meeting watching LOST.  LOVED IT. I had dismantled two electric toothbrushes over the weekend preparing for an Introduction To Electronics class I&#8217;m teaching at Machine Project in March. I pretty much threw the parts on [...]]]></description>
			<content:encoded><![CDATA[<p>This week&#8217;s Take Apart Tuesday is going to be a little light because we really spent the time after the meeting watching LOST.  LOVED IT.</p>
<p>I had dismantled two electric toothbrushes over the weekend preparing for an <a href="http://machineproject.com/events/2010/03/21/intro-to-electronics/">Introduction To Electronics</a> class I&#8217;m teaching at <a href="http://machineproject.com/">Machine Project</a> in March. I pretty much threw the parts on the table like chum saying &#8220;keep the talking to the commercials people.&#8221;</p>
<p>That said I have written up a little bit about the nature of DC motors and provided links.</p>
<p><a title="Brushes by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4328957457/"><img src="http://farm5.static.flickr.com/4045/4328957457_cbdc816678.jpg" alt="Brushes" width="500" height="375" /></a></p>
<p><span id="more-337"></span>DC motors are pretty much a piece of cake compared to stepper motors. No multiple leads attached to separate coils, no microcontrollers necessary.  In fact the most basic circuit is just a motor, a power source and maybe a switch.  This motor is a very low-current, low-voltage motor that isn&#8217;t going to face a lot of resistance as it runs.  In higher voltage/current situations you&#8217;ll likely see diodes and capacitors thrown into the mix to improve performance and stability. You might also see ways to change the motor&#8217;s speed or direction.  I&#8217;ll talk about that stuff during the class.</p>
<p>Just like steppers, however, DC motors move because of the joys of electromagnetism.  Perhaps the best way to really get a handle on that is to build you own motor from scratch by either follow directions like <a href="http://www.exploratorium.edu/snacks/motor_effect/">the ones on the Exploratorium site</a> and using materials you scavenge up yourself or by <a href="http://astore.amazon.com/wwwcrashspace-20/detail/B001DI8OBU">buying a kit</a>. It can make a big difference to see the effect in action.</p>
<p>Commercial toy motors are commonly configured with 2 stationary magnets of opposite orientations (field magnets) jammed up against an the outside of the housing (stator). In the center is an electromagnet created by running current through coils wound about an armature (sometimes called a rotor). This armature is attached to the axle.  The current comes to the electromagnet through contacts on the axle which are rubbing against two brushes on the casing. In the toothbrush circuit each brush is attached to a different end of the battery.</p>
<p><a title="The brush contacts / commutator by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4328957781/"><img src="http://farm5.static.flickr.com/4032/4328957781_f2d5d0129e_m.jpg" alt="The brush contacts / commutator" width="240" height="180" /></a></p>
<p><a title="Coils soldered to brush contacts by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4329693774/"><img src="http://farm5.static.flickr.com/4044/4329693774_c0fca40306_m.jpg" alt="Coils soldered to brush contacts" width="180" height="240" /></a></p>
<p>The commutator (fancy name for axle contacts) allows the axle to spin freely unfettered by wires that would twist and snap while still allowing power to flow to the electromagnet. Because of the way the separate contacts on the axle are configured, the axle spinning translates into a change in the direction of the current through the coil windings of the electromagnet. The change in the direction of the current means the poles of the electromagnet invert. That flip happens at just the right time to prevent the magnets from getting comfortable with each other and reaching a stasis. The constant change keeps the motor agitated and in motion.</p>
<p>A lot of the &#8220;build your own motor&#8221; examples and basic <a href="http://electronics.howstuffworks.com/motor1.htm">&#8220;how motors work&#8221;</a> illustrations show an armature shaped like a bar with only two coils.  While that keeps things simple when explaining the concept, once you crack open a real motor there are going to be at least three windings. Having three makes for much smoother motion and the <a href="http://www.solarbotics.net/starting/200111_dcmotor/200111_dcmotor2.html">Solarbotics site</a> has a nice animation of how that works.</p>
<p>This motor is pretty straight forward and will run off a 1.5 AA battery.  But what if I gave it more juice? Different motors will have different strength magnets, have their wires wrapped around the armature more or less times, simply be bigger or smaller, etc. Therefore, each motor has different current and voltage requirements, and limitations. I found one article that talked about what to do if you get a motor and <a href="http://www.rcgroups.com/forums/showthread.php?t=185271">don&#8217;t know how much power it needs</a>. It presumes quite a bit of knowledge and a way to detect RPM, but is super handy if you buy surplus motors. It is even handy if you pull a motor out a known circuit as the manufacturer might be starving or pushing the motor too hard.</p>
<p>The next time we have a surplus DC motor with no basic information to be found I&#8217;ll break down/illustrate his instructions the best I can. The more low-tech way to do things is to simply apply a low courrent/voltage source to the motor and slowly increase power to it until there is movement.</p>
<p>Happy motoring!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/02/take-apart-tuesday-no-5-electric-toothbrushes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Take Apart Tuesday No. 4: Apple StyleWriter 1200</title>
		<link>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-4-apple-stylewriter-1200/</link>
		<comments>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-4-apple-stylewriter-1200/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 08:32:17 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=297</guid>
		<description><![CDATA[This week we ripped apart an Apple StyleWriter 1200 and got one of its stepper motors working! See, we don&#8217;t just kill things. Once again How Stuff Works comes to the rescue with a great article on inkjet printers. Give it a quick glance, especially the Inside an InkJet Printer, before you look at the [...]]]></description>
			<content:encoded><![CDATA[<p>This week we ripped apart an Apple StyleWriter 1200 and got one of its stepper motors working! See, we don&#8217;t just kill things.</p>
<p>Once again <a href="http://www.howstuffworks.com/">How Stuff Works</a> comes to the rescue with a <a href="http://computer.howstuffworks.com/inkjet-printer.htm/printable">great article</a> on inkjet printers. Give it a quick glance, especially the <a href="http://computer.howstuffworks.com/inkjet-printer2.htm">Inside an InkJet Printer</a>, before you look at the dismantle porn on flickr so you can get a sense of what you&#8217;re looking at.</p>
<p>This poor printer had clearly been languishing in a garage somewhere, with bugs and dirt and stray pennies&#8230; we&#8217;re happy it&#8217;s now in a better place.</p>
<p>Here&#8217;s the flickr set: <a href="http://www.flickr.com/photos/carlynorama/sets/72157623309152076/">http://www.flickr.com/photos/carlynorama/sets/72157623309152076/</a><br />
<a title="StyleWriter 1200 Set by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/sets/72157623309152076/"><img src="http://farm5.static.flickr.com/4016/4314720656_76c4629c56.jpg" alt="IMG_5377" width="500" height="375" /></a></p>
<p>Last week we had a motor in our circuit inducing current for an LED so now we have the perfect segue for looking at a motor, well, being a motor.  We captured two stepper motors from the StyleWriter 1200 and got a 4 phase 5 wire unipolar stepping motor to do its thing.</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/dpEgjLb2MkM&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/dpEgjLb2MkM&#038;fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><span id="more-297"></span></p>
<h2>Salvaging a Stepper Motor</h2>
<h3>A basic summary</h3>
<p>There are many very good write ups on stepper motors online.</p>
<ul>
<li>The frequently sited <a href="http://www.cs.uiowa.edu/~jones/step/">Control of Stepping Motors</a> by      <a href="http://www.cs.uiowa.edu/%7Ejones/">Douglas W. Jones</a> <a href="http://www.uiowa.edu/">THE UNIVERSITY OF IOWA</a> <a href="http://www.cs.uiowa.edu/">Department of Computer Science</a></li>
<li><a href="http://www.doc.ic.ac.uk/~ih/doc/stepper/">Stepper Motors</a> by <a href="http://www.doc.ic.ac.uk/%7Eih">Ian Harries</a></li>
<li><a href="http://www.tigoe.net/intro.shtml">Tom Igoe</a>&#8216;s <a href="http://www.tigoe.net/pcomp/code/category/arduinowiring/51">Stepper Motor Control</a></li>
<li>And if you want some take-apart-extreme, Duck Tape Engineering has posted <a href="http://www.ducttapeeng.com/smd/smd1.htm">pictures of the inside of a stepper</a>.</li>
</ul>
<p>Stepper motors are the go-to motors when precise movement is more important than weight, torque or energy efficiency.   Their axles move in discrete steps, hence the name. So, for example, the motor I&#8217;m writing up here can be moved in 7.5° increments, dividing a full 360° turn into 48 discrete steps.</p>
<p>Unlike a DC motor that just spins freely in one or two directions, stepper motors need precise commands to each lead wire to get any kind of interesting behavior.  The motor will just sit there, shudder and try to elicit sympathy if you get it wrong. It is not a pretty sight. Which is why <a href="http://en.wikipedia.org/wiki/Microcontroller">microcontrollers</a>, like the <a href="http://www.arduino.cc/">Arduino</a>, are used to control them.</p>
<p>Motors generally have different power requirements than microcontrollers, and since they use changing currents and magnetism to generate motion they make for very electrically noisy additions to the circuit neighborhood.  As a result keeping the motor&#8217;s power and the microcontroller&#8217;s power separate becomes necessary. You can accomplish that separation <a href="http://www.tigoe.net/pcomp/code/input-output/controlling-high-current-circuits">with transistors</a>. However, transistors are bulky so various electronics companies have made integrated circuits that cram a whole bunch of transistors into one cute tiny little package. Well maybe not that cute, perhaps more black and svelte.</p>
<p><a href="http://www.jameco.com/webapp/wcs/stores/servlet/ProductDisplay?langId=-1&amp;storeId=10001&amp;catalogId=10001&amp;productId=1147194"><img src="http://www.jameco.com/Jameco/Products/ProdImag/1147194.jpg" alt="" width="150" height="150" /> </a></p>
<p><a href="http://www.jameco.com/webapp/wcs/stores/servlet/ProductDisplay?langId=-1&amp;storeId=10001&amp;catalogId=10001&amp;productId=1147194"><img src="http://www.jameco.com/Jameco/images/mfr/TEXASINSTRUMENTS.jpg" alt="TEXAS INSTRUMENTS" /></a></p>
<table>
<tbody>
<tr>
<th colspan="2">Part no. 1147194</th>
</tr>
<tr>
<td>Manufacturer</td>
<td>TEXAS INSTRUMENTS</td>
</tr>
<tr>
<td>Manufacturer no.</td>
<td>ULN2003ANE4</td>
</tr>
</tbody>
</table>
<p><a href="http://www.jameco.com/webapp/wcs/stores/servlet/ProductDisplay?langId=-1&amp;storeId=10001&amp;catalogId=10001&amp;productId=1147194"></a></p>
<p>You can generally nab anything called an H-Bridge, Darlington Transistor Array, Quadruple Half-H Drivers, etc. The L293,  SN75441, ULN2003 are all chips you might notice in examples and they all do the trick. Important caveat: they do not have identical wiring diagrams, i.e. they get integrated into circuits differently because how each pin on the IC behaves is different from chip to chip. It is best to use the same chip as the example you are copying unless you are comfortable reading a <a href="http://en.wikipedia.org/wiki/Datasheet">datasheet</a>.</p>
<p>For us that night,  I knew where there was a link to <a href="http://itp.nyu.edu/physcomp/Tutorials/StepperL293HBridge">pictures of a L293 online</a> and I had a L293 in my kit. So that is where we started.</p>
<h3>What Happened That Night</h3>
<p>So while I was starting to wire up the board, Justin jumped in to find out what kind of stepper we were dealing with. My old stepper example used a 4 wire bipolar stepper and this one had 5 wires sticking off it.</p>
<p>The motor&#8217;s label told us it was a <a href="http://www.mitsumi.co.jp/latest/Catalog/compo/motor/m42sp7_e.html">Mitsumi  M42SP-7</a>. According to the datasheet it is a 4-phase unipolar stepper motor. Mitsumi motors are fairly common and here is a link to their full <a href="http://www.mitsumi.co.jp/latest/Catalog/compo/motor/index_e.html">motor products list</a>. The other motor in the printer was the M42SP-4N.</p>
<p>Justin discovered the <a href="http://www.arduino.cc/en/Tutorial/StepperUnipolar">example on the Arduino site</a> using a 5 wired stepper and we decided to follow that.</p>
<p>Since wire colors on salvaged motors are fairly arbitrary we had to figure out what each wire was connected to. Ian Harris&#8217; site has the <a href="http://www.doc.ic.ac.uk/~ih/doc/stepper/others/">clearest explanation</a> on how to do that.</p>
<h3>Find the common wire</h3>
<p>In a 5 wire 4 Phase Unipolar Stepper Motor four of the wires are attached to coils in the motor and the fifth is a common source of power.</p>
<p>The first thing we had to do after extracting the motor was attach lead wires to it so we could use it with a <a href="http://en.wikipedia.org/wiki/Breadboard">breadboard</a>. The white connector at the end of the motor&#8217;s soldered on lead wires is not the same spacing as the spacing on a breadboard so we couldn&#8217;t just use the <a href="http://www.jameco.com/webapp/wcs/stores/servlet/ProductDisplay?langId=-1&amp;productId=68339&amp;catalogId=10001&amp;freeText=68339&amp;app.products.maxperpage=15&amp;storeId=10001&amp;search_type=jamecoall&amp;ddkey=http:StoreCatalogDrillDownView">0.100&#8243; breakaway male headers</a> that fit into breadboards. The <a href="http://www.jameco.com/webapp/wcs/stores/servlet/ProductDisplay?langId=-1&amp;storeId=10001&amp;catalogId=null&amp;productId=36792">22 gauge wire</a> I had on hand also seemed to be a bit thick, but we managed to squish its ends a bit with pliers and get the wire into the motor&#8217;s interconnect.</p>
<p><a title="IMG_5520 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4314275927/"><img src="http://farm3.static.flickr.com/2705/4314275927_5c5cb1ca70.jpg" alt="IMG_5520" width="500" height="375" /></a></p>
<p>Once those wires were attached, Justin tested resistance between all the leads on the wire.  Most of the wires had a reading around 150 Ohms between them, but the black wire in the center read 75 ohms to each of the other wires.</p>
<p>My recreation:<br />
<a title="IMG_5510 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4315012022/"><img src="http://farm3.static.flickr.com/2729/4315012022_c71cd39453.jpg" alt="IMG_5510" width="375" height="500" /></a></p>
<p>As Ian Hayes Says:</p>
<blockquote><p>The Common Power wire will be the one with only half as much resistance between it and all the others. This is because the Common Power wire only has one coil between it and each other wire, whereas each of the other wires have two coils between them. Hence half the resistance.</p></blockquote>
<p>We had some debate about whether that wire was really supposed to go to power or ground since it was black, but to power it goes.</p>
<h3>Hitching up the Arduino</h3>
<p>With the board finally wired up (a bit sloppily I will admit), Thereon lent his Arduino to the cause and we connected it up to the motor as indicated in the <a href="http://www.arduino.cc/en/Tutorial/StepperUnipolar">example on the Arduino site</a>. We did the best we could given that we were using a different chip and a different motor. Basically, I guessed. After loading in David Cuartielles&#8217; easy code we got stuttering but no real movement from the motor. (if you have no Arduino experience you can <a href="http://arduino.cc/en/Guide/HomePage">start here</a>). No biggie. Swapping which wires were two and three got us motion! Yay! (I&#8217;ll explain why this worked later)</p>
<p><a title="IMG_5494 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4315010922/"><img src="http://farm3.static.flickr.com/2731/4315010922_6027b3eb40.jpg" alt="IMG_5494" width="500" height="375" /></a></p>
<h3>And the next day&#8230;</h3>
<p>So the next day I come in and not so much with the working motor. Not that unusual with a Physical Computing project, so I took it as a chance to really figure out which wire was which following <a href="http://www.doc.ic.ac.uk/~ih/doc/stepper/others/">Ian Hayes directions</a> which I mentioned before.  He shows a clear way to figure out the order of your coils on a 4-phase unipolar stepper. After running the common power into a supply voltage you pick any of the remaining wires and connect it to ground. He calls it &#8220;wire 4&#8243; arbitrarily. By tying each successive wire to ground and seeing how the motor behaves you can ferret out which wire is tied to which coil.</p>
<p>The results:</p>
<ul>
<li><span style="color: #ff9900">Wire 1 &#8211; Yellow</span></li>
<li>Wire 2- White</li>
<li><span style="color: #ff0000">Wire 3 &#8211; Red</span></li>
<li><span style="color: #dbc4bc">Wire 4- Brown on motor</span> / <span style="color: #99cc00">Green on lead wire<br />
</span></li>
</ul>
<p>There were <a href="http://www.piclist.com/techref/io/stepper/wires.htm">other tips</a> on how to figure this out on a pic chip (type of microcontroller) reference site, but it was better for motors with a different number of leads than our 5 wire unipolar motor.</p>
<p>Hayes goes on to explain how to <a href="http://www.doc.ic.ac.uk/~ih/doc/stepper/control2/sequence.html">find the right sequences</a> for a 5 wire / 4 phase unipolar motor. <a href="http://www.arduino.cc/en/Tutorial/StepperUnipolar">Cuartielles&#8217; code</a> matches up with Hayes recommendation with the following wiring (via the L293 in the middle)</p>
<ul>
<li>Arduino pin 8 -&gt; wire 1 / A / Yellow</li>
<li>Arduino pin 9 -&gt; wire 2 / B / White</li>
<li>Arduino pin 10 -&gt; wire 3 / A&#8217; / Red</li>
<li>Arduino pin 11 -&gt; wire 4 / B&#8217; / Brown-Green</li>
</ul>
<p>Notice I added the A/B/A&#8217;/B&#8217;  to this list. Many discussions of stepper motors talk about wires in terms of pairs: A/A&#8217; or 1a/1b,  etc. In our motor what are being called wires 1 and  3 are a pair and wires 2 and 4 are a pair. The reason swapping the wires the night before worked is because what I had done was to wire two wires relating to the same pair in succession when really the key to stepper motor control is making sure that all the different coils are properly interleaved.  So, for example, <a href="http://www.cs.uiowa.edu/~jones/step/types.html#unipolar">Jones&#8217; representation</a> of what what your microcontroller pins need to do to create motion (version below) looks way fancier than the simple step through that Curtielles is doing in his Arduino code even though they are doing the same thing. Again, this is because Jones is grouping his wires by pair rather than by the coil sequence.</p>
<pre>  Winding 1a 1000100010001... (our yellow wire)
  Winding 1b 0010001000100... (our red wire)
  Winding 2a 0100010001000... (our white wire)
  Winding 2b 0001000100010... (our brown/green wire)
              time ---&gt;</pre>
<h3>Not the problem.</h3>
<p>So now confident in the fact that the wires were all lined up correctly, I was still facing a stuttering motor.  My next guess was the power supply. Because in the Arduino example we were copying they had gotten away with using 5 V from the USB port I had cheated and done the same thing by tying the motor power supply pin of L293 into Arduino board&#8217;s 5V pin-out.  The M24SP-7 is a 12V-24V motor, and while, for what ever reason, it had decided to humor us the night before it was no longer in any mood to make do with a paltry 5 volts.  I now suspect that this was because my computer that night was plugged in and the next day I was running off a battery. It&#8217;s an untested theory. Adding a 12v external supply into the mix solved the problem. (See the note in <a href="http://www.flickr.com/photos/pcomp/104968959/in/set-72057594070996918/">this picture</a> for where that 12 V supply went into the breadboard)</p>
<h3>More fun with code</h3>
<p>So back to the video at the top of the post.</p>
<p>I have a longer history with Tom Igoe&#8217;s <a href="http://itp.nyu.edu/physcomp/Tutorials/StepperL293HBridge">bipolar stepper motor code</a> and decided to make it work with this motor. It lets you control how many steps you are moving and at what speed. His code is for a different type of motor and moved that motor 100 steps forward and 100 steps back.  I wanted something that was a little more fun to watch so I made the number of steps random and speed variable based on the number of random steps.</p>
<p>Those modifications are in the code <a href="http://23longacre.com/sharedFiles/code/arduino/motors/Stepper_RandomMotion.txt">here</a> and below, salient changes marked. Enjoy!</p>
<pre>/*
 Random Stepper Motor Motion
 by Carlyn Maw based on 2005 code by Tom Igoe

 This program moves a 4 phase unipolar stepper motor a random number of
 steps in one direction, then a different number of steps in the opposite
 direction, indefinitely. Speed of the motor is increased with the size of
 the random number.

 Created 28 January 2010
 Updated 

 */

int motorStep[4];        // array to hold the stepping sequence
int thisStep = 0;        // which step of the sequence we're on
<span style="color: #ccffff">long randomNumber;      // random muber that will be the number of steps the motor will move
int mySpeed;            // the delay interval between steps. The smaller the faster.
</span>
//  function prototypes:
void stepMotor(int whatStep, int speed);
void blink(int howManyTimes);

void setup() {
  /*
     save values for the 4 possible states of the stepper motor leads
   in a 4-byte array.  the stepMotor method will step through
   these four states to move the motor. This is a way to set the
   value on four pins at once.  The  digital pins 8 through 13 are
   represented in memory as a byte called PORTB. We will set
   PORTB to each  of the values of the array in order to set
   digital pins 8, 9, 10, and 11 at once with each step.

   We're representing the numbers as hexadecimal values below, but
   it'd be nicer to represent them as binary numbers, so that the
   representation shows us visually which pins of PORTB we're
   affecting.
   */
<span style="color: #ccffff">  motorStep[0] = B00001000;
  motorStep[1] = B00000100;
  motorStep[2] = B00000010;
  motorStep[3] = B00000001;</span>

 <span style="color: #ccffff"> /*
  //alternate step array with 1/2 steps
  motorStep[0] = B00001000;
  motorStep[1] = B00001100;
  motorStep[2] = B00000100;
  motorStep[3] = B00000110;
  motorStep[4] = B00000010;
  motorStep[5] = B00000011;
  motorStep[6] = B00000001;
  motorStep[7] = B00001001;
  */</span>

  /*
   The DDRB register is the Data Direction Register.  It sets whether
   the pins of PORTB are inputs or outputs. a 1 in a given position
   makes that pin an output.  A 0 makes it an input.
   */

  // set the last 4 pins of port b to output:
  DDRB = 0x0F; //0b0000_1111;

  // set all the pins of port b low:
  PORTB = 0; //0b0000_0000;

  // start  program with a half-second delay:
  delay(500);  

  // blink the reset LED 3 times:
  blink(3);

<span style="color: #ccffff">  //seed random from analog pin so pattern is different everytime
  randomSeed(analogRead(0));</span>
}

void loop() {

  /*
  move motor forward a random number of steps.
   note: by doing a modulo operation on i (i % 4),
   we can let i go as high as we want, and thisStep
   will equal 0,1,2,3,0,1,2,3, etc. until the end
   of the for-next loop.
   */

<span style="color: #ccffff">  // the max is higher than the number of steps it takes for
  // the small gear head to turn b/c it is attached to a larger
  // gearhead.
  randomNumber = random(5,100);
  mySpeed = 1000/randomNumber;</span>
  for (int i = 1; i&lt;= 100; i++) {
    thisStep = i % 4;
    stepMotor(thisStep, <span style="color: #ccffff">mySpeed</span>);
  }

  // move motor backward
<span style="color: #ccffff">  randomNumber = random(5,100);
  mySpeed = 1000/randomNumber;</span>
  for (int i = 100; i &gt;=1; i--) {
    thisStep = i % 4;
    stepMotor(thisStep, <span style="color: #ccffff">mySpeed</span>);
  }
}

//Step the motor forward one step:
void stepMotor(int whatStep, int speed) {
  // sets the value of the eight pins of port c to whatStep
  PORTB = motorStep[whatStep];

 // vary this delay as needed to make your stepper step:
  delay(speed);
}

// Blink the reset LED:
void blink(int howManyTimes) {
  int i;
  for (i=0; i&lt; howManyTimes; i++) {
    digitalWrite(13, HIGH);
    delay(200);
    digitalWrite(13, LOW);
    delay(200);
  }
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-4-apple-stylewriter-1200/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Take Apart Tuesday No 3. : Crank Flashlight</title>
		<link>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-3-crank-flashlight/</link>
		<comments>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-3-crank-flashlight/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 21:43:29 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=264</guid>
		<description><![CDATA[Okay, it seems I&#8217;m obsessed with power. We took apart quite a few things Tuesday night: a massive HD projector from 1996, a little bit of a laptop, an antenna, and various miscellaneous items including a hand crank LED flashlight that Tom brought in. That little flashlight was fun. Below is a video showing Sean [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.crashspace.org/wp-content/uploads/2010/01/LED-Crank-Flashlight-brought-in-by-Tom.jpg" alt="Stand in for link to video" width="300" height="225" /></p>
<p>Okay, it seems I&#8217;m obsessed with power.</p>
<p>We took apart quite a few things Tuesday night: a massive HD projector from 1996, a little bit of a laptop, an antenna, and various miscellaneous items including a hand crank LED flashlight that Tom brought in.</p>
<p>That little flashlight was fun. Below is a video showing Sean having way too much fun twirling it around.</p>
<p><object width="500" height="400"><param name="movie" value="http://www.youtube.com/v/tV8_brbHC-4&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/tV8_brbHC-4&#038;fs=1" type="application/x-shockwave-flash" width="500" height="400" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p> Conveniently this little device also represents yet another example of AC to DC power generation&#8230; the saga continues.<br />
<span id="more-264"></span></p>
<h2>Overview</h2>
<p>Not a lot of parts to this one so this time my overview is simply a link to the photo gallery on flickr:<br />
<a href="http://www.flickr.com/photos/carlynorama/sets/72157623252086618">http://www.flickr.com/photos/carlynorama/sets/72157623252086618</a></p>
<p>I&#8217;m afraid we don&#8217;t have a plug-in for this yet.</p>
<h2>Electromagnetism</h2>
<p>Moving electricity creates magnets. Moving magnets create electricity. This is what the <a href="http://www.magnet.fsu.edu/education/tutorials/java/handrules/index.html">right hand rule</a> is all about.  This is what creates <a href="http://en.wikipedia.org/wiki/Electromagnet">electromagnets</a>. This especially gets us <a href="http://www.allaboutcircuits.com/vol_2/chpt_13/1.html">motors</a>.</p>
<p>Two very different reviews of this are the <a href="http://www.physics4kids.com/files/elec_field.html">kid&#8217;s version</a> or the <a href="http://ocw.mit.edu/OcwWeb/Physics/8-022Fall-2004/CourseHome/index.htm">semester at MIT version</a>. </p>
<p>My vast simplification is this: Remember how if you have two magnets lining them up one way they attract, the other way they repulse? Motors use this property of magnets to create motion from electricity by having one permanent magnet (like a fridge magnet that is always a magnet) which gets shoved away from the electromagnet created when you turn on the switch and let current flow from the power source. </p>
<p>The crank flashlight flips the motor dynamic entirely around. When the handle of the flashllight gets pumped, it cranks a gear that spins a magnet. That moving magnet then induces an electric current in the wire. Since it would be impractical for a flashlight to have a giant magnet bigger than the size of a building continuously moving in one direction next to the wire, the whole unit spins in a circle. This spinning creates an alternating current that, with a little magic, then puts the charge into a capacitor. </p>
<h2>Insert Magic Here</h2>
<p>So, you can probably guess what that magic is&#8230; full wave rectification using diodes! I knew you had it.  In order to get more bang for the buck the inductor they&#8217;ve chosen seems to be 3 phase &#8211; 3 pole which means we see 3 leads from it to the circuit rather than the 2 from that would come from a basic DC motor.</p>
<p>Looking at the parts and testing some continuity between them, this is my guess to how this circuit is working.</p>
<p><a href="http://www.flickr.com/photos/carlynorama/4292010784/" title="Schematic of Crank Flashlight by carlynorama, on Flickr"><img src="http://farm3.static.flickr.com/2210/4292010784_082f058d51_o.png" width="667" height="405" alt="Schematic of Crank Flashlight" /></a></p>
<p>A very good resource I found on battery charging circuits is a project write up for a <a href="http://www.amphibike.org/index.cgi?page=pages/3_bikes/monocog/unregCharge">bike-powered generator</a>.</p>
<h2>Is it a battery or a capacitor?</h2>
<p>Another great thing about this circuit is it brings up our safety lecture again. Capacitors hold charge and will slowly release it over time. That ability to store power can hurt you or help you. In this circuit it means a person can give their hand a rest!</p>
<p>It is important to note that the capacitor is not a battery. A battery uses a chemical reaction to create free electrons that will move from one end of the battery (the one labeled &#8211; ) to the other (the one labeled + ) when given a path through a circuit. A capacitor will store electrons that have been given to it and release them slowly over time. </p>
<p>We created moving electrons with the moving magnet and are storing them in the capacitor.  The capacitor then safely discharges over time lighting the LED even after we stop cranking.</p>
<p>And this is where I stop cranking. Hope you enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-3-crank-flashlight/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Take Apart Tuesday No. 2: Emerson VCR</title>
		<link>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-2-emerson-vcr/</link>
		<comments>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-2-emerson-vcr/#comments</comments>
		<pubDate>Sun, 17 Jan 2010 21:56:04 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[TakeApartTuesday]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=220</guid>
		<description><![CDATA[This week for Take Apart Tuesday we dismantled both a VCR and a DVR. The VCR definitely wins for me hands down in terms of fun. More gears and motors and opportunities to take video… although it was pointed out by Gabriel that I shouldn&#8217;t be so hard on the DVR. It does have a [...]]]></description>
			<content:encoded><![CDATA[<p>This week for Take Apart Tuesday we dismantled both a VCR and a DVR.  The VCR definitely wins for me hands down in terms of fun. More gears and motors and opportunities to take video… although it was pointed out by Gabriel that I shouldn&#8217;t be so hard on the DVR. It does have a fan motor and a motor in the hard drive. Okay, okay, fine.</p>
<p>But look at this! DVRs don&#8217;t do this!</p>
<p><a href='http://www.youtube.com/watch?v=klpZm9V38-4'>Link to VCR Video on YouTube. <br /><img src="http://farm5.static.flickr.com/4041/4277483748_4a1a07a66d.jpg" width="500" height="375" alt="Everyting comes out together" /></a></p>
<p><span id="more-220"></span><br />
I&#8217;m going to spend a little more time on power sources again because last week I sort of glazed over some details on how not to kill yourself.</p>
<p>But you can always skip that and go look at the VCR cat feeder they made over at <a href="http://vimeo.com/2615624">Make</a> or the toaster on <a href="http://www.instructables.com/id/How_to_make_a_VHS_video_toaster/">Instructibles</a>.</p>
<h2>Anatomy of a VCR</h2>
<p>There is a nice article on how VCRs work at <a href="http://www.howstuffworks.com/vcr.htm/printable">How Stuff Works</a> which covers the basic anatomy.  It should be pretty easy to identify the major players on the photos posted on <a href="http://www.flickr.com/photos/carlynorama/collections/72157623092412847/">Flickr</a>. I&#8217;ve tried to do some commenting there.</p>
<p>There is also<a href="http://crashspace.pbworks.com/TAT0002%3A-Emerson-EWV603A-VCR">the wiki page</a> where I&#8217;ve broken down sections that other people should feel free write up.</p>
<p>•	the Video Processing<br />
•	the Motors<br />
•	the Power Supply<br />
•	the UI (buttons and how they look to the people vs the circuit)<br />
•	the Tape Verification (there are some nifty tricks with diodes &amp; beam breaks going on…)<br />
•	the Magnetic Tape Readers (Think <a href="http://www.wired.com/culture/lifestyle/news/2006/01/70003">Sonic Fabric</a> )</p>
<h2>The Power Supply</h2>
<p>Compared to last week, this power supply was different in a few ways. For starters it isn&#8217;t on a separate board, so it would be harder to harvest (but not impossible &#8211; think jewelers saw, a dust mask and goggles). Also, it uses 4 separate diodes in its AC to DC conversion rather than a pre-packaged rectifier.</p>
<p>It is cheaper and more space efficient to have all the electronics on one board. Because the power requirements of a VCR are so much less than the monitor&#8217;s it is easier to get away with doing that. A VCR pulls less juice out of the wall so it needs a less robust power management circuit.</p>
<p>Before you get out the sharpie and the saw these are the things you&#8217;ll want to do:</p>
<p>1: Uplug (Switch off all switches, unplug the unit, remove batteries)<br />
2: Check Fuse  (check continuity across the component)<br />
3: Discharge Capacitor (Create a safe short across the leads)<br />
4: Check the AC -&gt; DC conversion (hello high power)<br />
5: Check the DC -&gt; DC voltage drops (making it usable)</p>
<h3>Unplug and Fuse Check</h3>
<p>I&#8217;m going to assume steps 1 &amp; 2 are pretty clear.  If step two isn&#8217;t here is a great tutorial on <a href="http://www.allaboutcircuits.com/vol_1/chpt_3/9.html">How To Use a Multimeter</a></p>
<h3>Discharging A Capacitor</h3>
<p>Step 3 can be a little controversial. I apparently created shock and awe by using a rubber handled screwdriver to rapidly discharging the main cap with a spark because I felt reasonably comfortable doing that with a capacitor the size used on the VCR board. Not really recommended. (Understatement.)</p>
<p>Ideally what you&#8217;d want to do is put something between the two ends of the capacitor the represents some kind of load relative to the voltage potential of the capacitor.  A small lightbulb (not really an LED), a small motor or even just a big enough resistor.</p>
<p>The more voltage that the capacitor could have potentially stored, the more work you want to require of it to escape… but there is a balance between safety and speed: too much resistance and you&#8217;ll be waiting all day, too little and there is sparking.  I got the ratio 5 to 50 Ohms / V rating of Cap from <a href="http://www.repairfaq.org/REPAIR/F_captest.html">repairfaq.org</a>.</p>
<p>Here is a way I could have done it better:<br />
<a title="Discharge 82 Uf / 200 V cap by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4282275163/"><img src="http://farm3.static.flickr.com/2565/4282275163_89c0c3f107.jpg" alt="Discharge 82 Uf / 200 V cap" width="500" height="375" /></a></p>
<p>Shown is a 1k resistor (brown-black-red), the smallest recommended for a 200V capacitor.</p>
<h3>AC to DC conversion</h3>
<p>Honestly, the Wikipedia article on this one is pretty darn good. It is called <a href="http://en.wikipedia.org/wiki/Rectifier">Rectifier</a></p>
<p>Brief summary:</p>
<p>AC stands for Alternating Current, DC for Direct Current.  AC oscillates. It buzzes in two directions. If your circuit is a DC circuit, you need it all to move in one direction.</p>
<p>Those of you who know about diodes are instantly thinking &#8211; oh, lets just put a super sturdy diode in there and then we&#8217;ll just get the power going one way &#8211; which is true but that would be wasteful (you&#8217;d only ever use half of whats available to you) and stuttery (Your circuit would only be receiving power half the time).</p>
<p>However, you can use 4 diodes in a bridge rectifier to get a smoother more efficient conversion called Full Wave Rectification. Here is an image from wikipedia to which I&#8217;ve added some additional labels so we can compare it to our actual circuit.</p>
<p><a title="Bridge Rectifier 2 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4277761441/"><img src="http://farm3.static.flickr.com/2531/4277761441_f0ef1a705e_o.png" alt="Bridge Rectifier 2" width="562" height="170" /></a></p>
<p>The R is technically a resistor, but it serves as a stand-in for whatever work you need that circuit to do; in our case that&#8217;s &#8220;insert VCR here.&#8221;  Sometimes you might see it drawn more like this.</p>
<p><a title="Bridge Rectifier by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4277758145/"><img src="http://farm3.static.flickr.com/2742/4277758145_506743d3b0_o.png" alt="Bridge Rectifier" width="501" height="304" /></a></p>
<p>Notice that I&#8217;ve added a capacitor across the B wire to the D wire to ground.  That cap is the big cap we talked about discharging. It looks like a short, but it only acts like one when there is a flood of power into the circuit. The size of this capacitor is determined by how much power would be considered a &#8220;flood&#8221; by the electronics downstream: Too small and the circuit after it could end up starved for juice, too large and the circuit will end up inundated before the capacitor has a chance to do its job.</p>
<p>So, when looking at the actual circuit board where do you put the probes to check the DC voltage drop? The following image is of our board, with the same labels as the two circuit diagrams.</p>
<p><a title="Bottom of Bridge Rectifier by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4277827899/"><img src="http://farm5.static.flickr.com/4070/4277827899_ace50a2d41_m.jpg" alt="Bottom of Bridge Rectifier" width="190" height="240" /></a></p>
<p>So to see the full voltage drop, check between D and B. On this circuit you&#8217;ll get around 160 V. Between any two consecutive points (A to B, B to C…) you&#8217;ll see around 55 to 60 V.</p>
<p><a title="IMG_5321 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4276741297/"><img src="http://farm3.static.flickr.com/2727/4276741297_c84c6f0d90.jpg" alt="IMG_5321" width="500" height="375" /></a></p>
<p>This is all in comparison to last week where the manufacturers used an integrated circuit with a heat sink attached to do the same thing partially because that board pulls much more current.</p>
<table border="0">
<tbody>
<tr>
<td><a title="What the bridge rectifier looks like by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255974296/"><img src="http://farm5.static.flickr.com/4067/4255974296_f93f48a396_m.jpg" alt="What the bridge rectifier looks like" width="240" height="180" /></a></td>
<td><a title="Rectifier pads close up by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255973486/"><img src="http://farm3.static.flickr.com/2791/4255973486_f6cfbc1d97_m.jpg" alt="Rectifier pads close up" width="180" height="240" /></a></td>
</tr>
</tbody>
</table>
<h3>DC stepping down</h3>
<p>Now, most parts don&#8217;t want 160 V &#8211; a low power Arduino, for example, needs about only about 3.3V.  Many modern devices combine multiple circuits all prefering different amounts of voltage.</p>
<p>That is what that big blue boxy-looking part is  &#8211; a transformer to step the power down to useable voltages.</p>
<p>The thing is, <a href="http://wiki.answers.com/Q/Why_doesn't_a_transformer_work_on_a_DC_supply">transformers don&#8217;t work with DC voltages</a>. The section of the circuit between the bridge rectifier and the transformer makes the DC voltage pulse at a rate much higher than AC out of the wall does.</p>
<p>I&#8217;m not going to dwell on this part expect to say that the usable voltage doesn&#8217;t really show up until after the second set of diodes, where on this circuit you get readings of around 12V, around 5V and around 40V. These supply lines probably get split/regulated/filtered, etc further into the circuit, but for stealing power this is where you could stop.</p>
<p>Stop!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-2-emerson-vcr/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Take Apart Tuesday No. 1: Samsung Flat Screen Monitor</title>
		<link>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-1/</link>
		<comments>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-1/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 06:12:46 +0000</pubDate>
		<dc:creator>carlyn</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[LCD]]></category>
		<category><![CDATA[TakeApartTuesday]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=171</guid>
		<description><![CDATA[On Monday one of our members brought in some spare flat-screen monitors. They had gotten that droopy syndrome pivoting monitors sometimes come down with. Most of them work just fine for our purposes, but one of them popped and didn&#8217;t light up when it was tested that night. The next day, with the sun shining, [...]]]></description>
			<content:encoded><![CDATA[<p><a title="The whole thing by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4256007376/"><img class="alignleft" style="margin: 5px 7px" src="http://farm5.static.flickr.com/4013/4256007376_f9fffc6cc8_m.jpg" alt="The whole thing" width="180" height="240" /></a>On Monday one of our members brought in some spare flat-screen monitors. They had gotten that droopy syndrome pivoting monitors sometimes come down with.</p>
<p>Most of them work just fine for our purposes, but one of them popped and didn&#8217;t light up when it was tested that night.</p>
<p>The next day, with the sun shining, no internet, and a cable guy on the roof, ripping it to pieces seemed the only thing to do. Take it Apart Tuesday was born.</p>
<p><span id="more-171"></span></p>
<h2>Hardware Hacking Basics</h2>
<p>If you are going to start hacking things to pieces here are some good tools have:</p>
<ul>
<li> Assorted screw drivers (the computer sets are nice, but really just a regular flat head and basic Phillips is enough to start. They’re all we used for this)</li>
<li> A knife (just in case)</li>
<li> Blue masking tape (to tape down screws)</li>
<li> A sharpie (to label the blue tape, if needed)</li>
<li> A camera (so you know where things went)</li>
<li> Small led flash light (makes part numbers easier to read)</li>
</ul>
<p>Once you want to start seeing what does or does not work, rather than just an anatomy lesson add:</p>
<ul>
<li> A fused multimeter</li>
<li> Internet access to look up part numbers</li>
</ul>
<p>Super Basic safety:</p>
<ul>
<li> Be unplugged. (Not having things plugged into the wall is obvious, but remove internal batteries, too. )</li>
<li> Check that all switches are in the off position.</li>
<li> DO NOT touch large capacitors.</li>
<li> Wear safety glasses if you are prying anything apart. (TIP: if you are near sighted, you’ll want to be wearing your glasses anyway to make reading part numbers easier)</li>
<li> Wearing rubber soled shoes never hurts.</li>
</ul>
<p>If you are going to take on a more radical parts harvesting than we’re doing here , i.e. desoldering individual items to use in a different circuit, be really really careful about fumes.  Solder has a number of chemicals that are incredibly harmful to breathe, so, bare minimum, have a fan and a window open, please.</p>
<p>Here is an Instructable on just that:<br />
<a href="http://http://www.instructables.com/id/Recycle-old-PCB-components/" target="_blank">http://www.instructables.com/id/Recycle-old-PCB-components/</a></p>
<h2>Our Victim: The Samsung LCD Monitor Model 244T S</h2>
<p>The easiest part to salvage is the AC -&gt; DC power converter, but the basic parts overview for the whole system is:</p>
<ul>
<li> 8 Circuit Boards
<ol>
<li>PCB 1 The buttons for the front, connected to the video board [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623162681904/">Flickr</a>]</li>
<li>PCB 2 The USB hub: BN41-00663A (SMSC USB2504-JT) [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623162798224/">Flickr</a>]</li>
<li>PCB 3 Power converter: PSLF101401A, connected to the Board 4 in two places [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623164001164/">Flickr</a>]</li>
<li>PCB 4 Video In / Processing: BN41-00659B [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623038504817/">Flickr</a>]</li>
<li>PCB 5 LCD power supply: LCD Inverter board GH151A [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623038577935/">Flickr</a>]</li>
<li>PCB 6 Logic Board: 240WUC4LV0.5 [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623038766039/">Flickr</a>]</li>
<li>PCB 7 240M1S6LV0.4: No Google results but was connected to Logic board/long edge of LCD and has Rail-to-Rail Input-Output Op Amps (5420CRZ) [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623164400570/">Flickr</a>]</li>
<li>PCB 8 240M1L01G_2LV0.1: Again no Google results, connected to short edge of LCD from logic board [<a href="http://www.flickr.com/photos/carlynorama/sets/72157623164400570/">Flickr</a>]</li>
</ol>
</li>
<li> LCD</li>
<li> Back Light &amp; Filters</li>
<li> Various pieces for the housing</li>
</ul>
<p>There is now a section on the WIKI dedicated to <a href="http://crashspace.pbworks.com/TAT0001%3A-Samsung-244T-S-LCD-Monitor">Take Apart Tuesday</a> so as people play with the different parts we can all keep learning. If you want to help identifying parts and aren&#8217;t sure where to start here are some good sites to start with:</p>
<p>To know what you’re looking at:<br />
<a href="http://www.uchobby.com/index.php/2007/07/15/identifying-electronic-components/" target="_blank">http://www.uchobby.com/index.php/2007/07/15/identifying-electronic-components/</a></p>
<p>To figure out what an IC is you can stick the part number into Google or find some help at the following two sites:<br />
<a href="http://www.chipdocs.com/">http://www.chipdocs.com/</a><br />
<a href="http://www.educypedia.be/electronics/datacomponent.htm">http://www.educypedia.be/electronics/datacomponent.htm</a></p>
<p>We didn’t really think we’d be documenting this when we started so there are gaps and stuff, but here is the general overview.</p>
<p><a href="http://www.flickr.com/photos/carlynorama/sets/72157623164028170/detail/">http://www.flickr.com/photos/carlynorama/sets/72157623164028170/detail/</a></p>
<p>(we don&#8217;t have the flickr plugin yet&#8230; coming)</p>
<h2>Harvesting the Power Supply</h2>
<p>What popped during testing was probably one of the tubes in the back light.  If we were um, actually trying to fix it, we’d go through part by part seeing what broke. The first thing to check would be the power supply.</p>
<p>The power supply converts AC voltage into usable DC voltage.  Here are the steps we took to see if it was working. Tom took the lead on this part.</p>
<p>Notice in the images of the back area that the &#8220;HOT&#8221; or high voltage/AC area is marked off in black. This is the part that can hurt you so be careful working with components in this area.</p>
<p><strong>Step 1:</strong> Unplugged it, made sure the switch is was off.</p>
<p><strong>Step 2:</strong> Checked for continuity across the fuse (most likely thing to be broken)</p>
<table border="0">
<tbody>
<tr>
<td><a title="Fuse by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255205961/"><img src="http://farm5.static.flickr.com/4037/4255205961_bb7585aa2f_t.jpg" alt="Fuse" width="75" height="100" /></a></td>
<td><a title="Underside of fuse by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255206921/"><img src="http://farm3.static.flickr.com/2691/4255206921_9dfa00f2ff_t.jpg" alt="Underside of fuse" width="100" height="75" /></a></td>
</tr>
</tbody>
</table>
<p><strong>Step 3: </strong>Checked the main capacitor for charge build up</p>
<p>These large capacitors can hold on to a charge for a long time and zap you.</p>
<table border="0">
<tbody>
<tr>
<td><a title="The Large Cap by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255207863/"><img src="http://farm5.static.flickr.com/4002/4255207863_fa6b88f969_t.jpg" alt="The Large Cap" width="75" height="100" /></a></td>
<td><a title="Large Cap Pads by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255208889/"><img src="http://farm5.static.flickr.com/4062/4255208889_91511a7d6c_t.jpg" alt="Large Cap Pads" width="100" height="75" /></a></td>
</tr>
</tbody>
</table>
<p><strong>Step 4:</strong> Plugged it in, turned it on, tested DC outputs</p>
<table border="0">
<tbody>
<tr>
<td><a title="Testing the Low Voltage Contacts 1 by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255209415/"><img src="http://farm5.static.flickr.com/4038/4255209415_32dc887303_t.jpg" alt="Testing the Low Voltage Contacts 1" width="100" height="75" /></a></td>
<td><a title="Close up of low voltage contacts by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255972250/"><img src="http://farm5.static.flickr.com/4063/4255972250_282ab96cd3_t.jpg" alt="Close up of low voltage contacts" width="100" height="75" /></a></td>
</tr>
</tbody>
</table>
<p>The low DC voltage pads read true, but no love on the 24 V connection, so to see if the problem was somewhere in the AC -&gt; DC conversion we&#8230;</p>
<p><strong>Step 5: </strong>Checked across the Bridge Rectifier</p>
<table border="0">
<tbody>
<tr>
<td><a title="Checking the rectifier by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255972726/"><img src="http://farm5.static.flickr.com/4028/4255972726_fe48bb7521_t.jpg" alt="Checking the rectifier" width="75" height="100" /></a></td>
<td><a title="Rectifier pads close up by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255973486/"><img src="http://farm3.static.flickr.com/2791/4255973486_f6cfbc1d97_t.jpg" alt="Rectifier pads close up" width="75" height="100" /></a></td>
<td><a title="What the bridge rectifier looks like by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255974296/"><img src="http://farm5.static.flickr.com/4067/4255974296_f93f48a396_t.jpg" alt="What the bridge rectifier looks like" width="100" height="75" /></a></td>
</tr>
</tbody>
</table>
<p>Everything looked good, in excess of 100 V there! HOT!</p>
<p><strong>Step 6:</strong> Plugged it back into PCB 4 to check if there was something extra going on.</p>
<p><a title="Testing again... by carlynorama, on Flickr" href="http://www.flickr.com/photos/carlynorama/4255213589/"><img class="alignleft" style="margin: 5px" src="http://farm5.static.flickr.com/4014/4255213589_fb0383ac84_t.jpg" alt="Testing again..." width="75" height="100" /></a>If you noticed, one of the pads in the low voltage part is labeled on/off.  We plugged that connector back into PCB 4 and let the power flow into that board, too. We got back a 3.3 V signal on the On/Off pad and then found that the 24 V pads lit up, too.  IC502 on PCB 4 is a 3.3 V regulator. A little more checking could find out if PCB 4 is just passing voltage straight back or if there is a system check happening in some other part of the circuit which gives the all clear.</p>
<p><strong>The End:</strong> So now at the very least we have a 6V and multiple 24 V AC to DC power supply that we can use in other projects.Yay!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2010/01/take-apart-tuesday-no-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Too Much RFID</title>
		<link>http://blog.crashspace.org/2009/11/too-much-rfid/</link>
		<comments>http://blog.crashspace.org/2009/11/too-much-rfid/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 03:06:13 +0000</pubDate>
		<dc:creator>todbot</dc:creator>
				<category><![CDATA[How To]]></category>

		<guid isPermaLink="false">http://blog.crashspace.org/?p=45</guid>
		<description><![CDATA[[this was part of the mailing list discussion on the "proximity t-shirt" idea] Okay so I&#8217;m a big RFID nerd, did a lot of consulting work using it.  So here&#8217;s a quick brain dump. Regular passive RFID is designed for identification not localization.  The RFID tags can be reliably read only to within a few [...]]]></description>
			<content:encoded><![CDATA[<p><em>[this was part of the mailing list discussion on the "proximity t-shirt" idea]</em></p>
<p>Okay so I&#8217;m a big RFID nerd, did a lot of consulting work using it.  So here&#8217;s a quick brain dump.</p>
<p><span id="more-45"></span></p>
<p>Regular passive RFID is designed for identification not localization.  The RFID tags can be reliably read only to within a few centimeters.  But the readers are cheap.  You can get 128kHz (LF) and 13.56MHz (HF) RFID readers for $20-40 and the reader chips themselves for under $2.  RFID tags that work with these systems are around $1.  These systems typically cannot handle multiple tags in the reader&#8217;s field at a time.</p>
<p>UHF (900MHz-2.4GHz) passive RFID readers can read up to a few meters, and the tags can be a $0.05 in large quantities.  The readers can get pretty expensive though: &gt;$1000.  These are the systems used by Walmart et al to read a palette of Mach3 razors as they transit the warehouse.  And by the marathon race timers. The standard is called EPC, if you&#8217;re interested.  These systems can handle a few hundred tags in the reader&#8217;s field, but read time goes down exponentially with tag count.</p>
<p>&#8220;Active RFID&#8221; has ranges up to hundreds of meters.  The term &#8220;active RFID&#8221; is a bit loose, since one can describe a WiFi laptop or a cellphone as active RFID tag.  Really it just means an RF radio system that transmits a unique ID using its own power source.  There are active RFID versions of all the above technologies.  Eric&#8217;s suggested use of the RF Link boards is essentially an active RFID beacon.  One of my favorite active RFID designs is OpenBeacon (http://www.openbeacon.org/ ).  It uses the ubiquitous Nordic RF chips (used in almost every wireless keyboard &amp; mouse)  Sparkfun has a ton of Nordic boards to play with.</p>
<p>&#8220;Localization&#8221; of RFID tags can mean two things.  For normal passive RFID, the tag is &#8220;located&#8221; when a reader sees it.  It&#8217;s a boolean: sees it / doesn&#8217;t see it.  This is often called &#8220;proximity detecton&#8221;.  So one way to approach localization is to just have a lot of readers.  True localization (knowing where in a reader&#8217;s field-of-view a tag is) is pretty tricky.  The main issue is just finding how far away an RF source is.  The simplest is signal-strength (&#8220;the louder you are the closer you are&#8221;), but that falls prey to the non-homogeneity of the environment: in free space it would work; in a room full of RF-absorbing humans, it fails.  If you&#8217;re really savvy, you can do time-of-flight calculation.  The reader sends out a ping and measures the time it takes to receive the tag&#8217;s echo ping. This requires nanosecond-accurate clocks on the reader (speed of light is very fast) and falls prey to multipath distortion (reflections off the environment).  And then you need multiple antennae for a single region to do triangulation.  It&#8217;s hard, but RFID vendors are starting to release stuff.</p>
<p>If there&#8217;s interest in a RFID show-n-tell, I&#8217;ve got examples of pretty much all this  tech I could bring in.  I&#8217;d be happy to let folks borrow some of it if they want to test out some ideas.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.crashspace.org/2009/11/too-much-rfid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
