<?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>Alternet</title>
	<atom:link href="http://www.alternet.us.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.alternet.us.com</link>
	<description>The personal and professional blog of William Dillon</description>
	<lastBuildDate>Sat, 27 Apr 2013 16:01:48 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Google Earth tracks from Garmin G300 flight logs</title>
		<link>http://www.alternet.us.com/?p=1823</link>
		<comments>http://www.alternet.us.com/?p=1823#comments</comments>
		<pubDate>Wed, 02 Jan 2013 22:40:36 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Flying]]></category>
		<category><![CDATA[Cessna]]></category>
		<category><![CDATA[Flight log]]></category>
		<category><![CDATA[G300]]></category>
		<category><![CDATA[Garmin]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Earth]]></category>
		<category><![CDATA[KML]]></category>
		<category><![CDATA[SkyCatcher]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Travel]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1823</guid>
		<description><![CDATA[I&#8217;ve been working on my private pilots license for the last few months.  The primary plane that I&#8217;ve been using is the Cessna SkyCatcher.  I&#8217;ve included a photo of an example of this plane below.  It&#8217;s a fun aircraft, other than the fact that two normal-sized adult males can&#8217;t take full fuel. One of the [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1829" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.26.30-.png" rel='nofollow'><img class="size-large wp-image-1829" alt="Flight log results in Google Earth" src="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.26.30--540x337.png" width="540" height="337" /></a><p class="wp-caption-text">Flight log results in Google Earth</p></div>
<p>I&#8217;ve been working on my private pilots license for the last few months.  The primary plane that I&#8217;ve been using is the Cessna SkyCatcher.  I&#8217;ve included a photo of an example of this plane below.  It&#8217;s a fun aircraft, other than the fact that two normal-sized adult males can&#8217;t take full fuel.<span id="more-1823"></span></p>
<div id="attachment_1830" class="wp-caption aligncenter" style="width: 530px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/1606fca4-65c1-4ef0-b13d-91931a2419c7.jpg" rel='nofollow'><img class="size-full wp-image-1830" alt="Cessna 162 SkyCatcher" src="http://www.alternet.us.com/wp-content/uploads/2013/01/1606fca4-65c1-4ef0-b13d-91931a2419c7.jpg" width="520" height="416" /></a><p class="wp-caption-text">Cessna 162 SkyCatcher</p></div>
<p>One of the nice features of this plane is the Garmin G300 &#8220;glass cockpit&#8221; system.  The days of circular &#8220;stream&#8221; gauge instruments are fast coming to an end.  This particular aircraft&#8217;s system has a SD-Card slot that can be used to update the databases, store flight plans, and the like.  If a card is installed during flight (really all the time) a log is updated every second, or so.  Luckily, Garmin had the foresight to write these logs using standard CSV (comma separated values) files.  The logs contain valuable data including not only the location, altitude, and speed, but engine data, faults, and nearly anything that is displayed on the screens.  This would be very valuable data in an NTSB investigation, that&#8217;s for sure.</p>
<div id="attachment_1832" class="wp-caption aligncenter" style="width: 530px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/IMG_1265.jpg" rel='nofollow'><img class="size-full wp-image-1832" alt="SD-Card and the G300" src="http://www.alternet.us.com/wp-content/uploads/2013/01/IMG_1265.jpg" width="520" height="390" /></a><p class="wp-caption-text">SD-Card and the G300</p></div>
<p>Because Google Earth really does not care about exhaust gas temperatures, RPMs, and things like that, the first task is to discard all that data.  The only data we need to keep is local time, latitude, longitude, and altitude.</p>
<div id="attachment_1825" class="wp-caption aligncenter" style="width: 584px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.18.35-.png" rel='nofollow'><img class=" wp-image-1825  " alt="Unedited flight log data" src="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.18.35-.png" width="574" height="287" /></a><p class="wp-caption-text">Unedited flight log data</p></div>
<p>It&#8217;s your choice whether you&#8217;d like to use GPS or barometric altitude.  They both have their advantages and disadvantages.  I usually use GPS altitude.</p>
<div id="attachment_1826" class="wp-caption aligncenter" style="width: 387px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.20.11-.png" rel='nofollow'><img class="size-full wp-image-1826" alt="Flight log after removing superfluous fields" src="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.20.11-.png" width="377" height="495" /></a><p class="wp-caption-text">Flight log after removing superfluous fields</p></div>
<p>The website that converts from CSV files to Google Earth files insists that the altitudes are presented in meters, rather than feet.  Even if you select &#8220;U.S.&#8221; or &#8220;Nautical&#8221; units in the interface, it still processes the altitudes as meters.  To execute this conversion, I make a new column that is computed from the altitude, multiplying it by 0.3048 which yields meters from feet.  Then, depending on your spreadsheet program, copy this new column&#8217;s <strong>values</strong> on top of the GPS Altitude column, then delete the computed altitudes.</p>
<div id="attachment_1827" class="wp-caption aligncenter" style="width: 414px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.21.10-.png" rel='nofollow'><img class="size-full wp-image-1827" alt="Converting feet to meters" src="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.21.10-.png" width="404" height="549" /></a><p class="wp-caption-text">Converting feet to meters</p></div>
<p>Next, we need to add a trackpoint column that&#8217;s numbered serially.  The easiest way to do this is by using another function that creates this data from the ROW() function.  Also, we can use this time to rename the columns; they need to be named a certain way for the website.</p>
<div id="attachment_1828" class="wp-caption aligncenter" style="width: 416px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.22.09-.png" rel='nofollow'><img class="size-full wp-image-1828" alt="Adding track point IDs to the entries" src="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.22.09-.png" width="406" height="355" /></a><p class="wp-caption-text">Adding track point IDs to the entries</p></div>
<p>Processing the log is all finished.  Next, just export it from the spreadsheet program into a new CSV file.</p>
<div id="attachment_1831" class="wp-caption aligncenter" style="width: 379px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.22.57-.png" rel='nofollow'><img class="size-full wp-image-1831" alt="Completed flight log" src="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2012-12-28-at-18.22.57-.png" width="369" height="598" /></a><p class="wp-caption-text">Completed flight log</p></div>
<p>Almost last step:  We go to GPSVisualizer.com and navigate to the Google Earth KML file form.</p>
<div id="attachment_1833" class="wp-caption aligncenter" style="width: 497px"><a href="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2013-01-02-at-13.24.13-.png" rel='nofollow'><img class=" wp-image-1833 " alt="Using GPSVisualizer.com to make the KML file." src="http://www.alternet.us.com/wp-content/uploads/2013/01/Screen-Shot-2013-01-02-at-13.24.13-.png" width="487" height="451" /></a><p class="wp-caption-text">Using GPSVisualizer.com to make the KML file.</p></div>
<p>The important fields to change are the document name (this can be whatever you want, it&#8217;ll show up in Google Earth), the Altitude mode (set it to &#8220;Absolute&#8221;), and finally choose the CSV file that you&#8217;ve carefully modified.  When you click &#8220;Create KML file&#8221; you&#8217;ll be presented with a screen that lets you download your new KML file.  Once it&#8217;s downloaded, assuming that you have Google Earth installed, it&#8217;ll open and you can move it from &#8220;Temporary places&#8221; to &#8220;My Places&#8221; and it&#8217;ll be saved.  The end result is the nice image at the head of the article.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1823" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1823_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1823?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1823_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1823&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1823' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1823</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Support for the Rafael Micro R820t tuner in Cocoa Radio</title>
		<link>http://www.alternet.us.com/?p=1814</link>
		<comments>http://www.alternet.us.com/?p=1814#comments</comments>
		<pubDate>Fri, 26 Oct 2012 21:49:07 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[rtl-sdr]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1814</guid>
		<description><![CDATA[Relating to the rtl-sdr work that has been done, the E4000 tuner was the standard barer for a long time.  However, Elonics has discontinued this part, and it&#8217;s becoming difficult to find.  The popularity, and scarcity, of this part has encouraged sellers to offer products claiming to be built with the E4000 and are not.  [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1815" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/10/r820ta.jpg" rel='nofollow'><img class="size-large wp-image-1815" title="r820ta" src="http://www.alternet.us.com/wp-content/uploads/2012/10/r820ta-540x540.jpg" alt="" width="540" height="540" /></a><p class="wp-caption-text">R820t tuner on a rtl-sdr compatible dongle, from eBay seller CosyCave</p></div>
<p>Relating to the rtl-sdr work that has been done, the E4000 tuner was the standard barer for a long time.  However, Elonics has discontinued this part, and it&#8217;s becoming difficult to find.  The popularity, and scarcity, of this part has encouraged sellers to offer products claiming to be built with the E4000 and are not.  Luckily, someone discovered the code for using the R820t tuner in the Linux V4Lin drivers.  They ported this code into the rtl-sdr source maintained by osmocom.</p>
<p>I just finished porting their code into Cocoa Radio.  Now, it&#8217;s possible to use my software with both the E4000 and the R820t.  On startup, Cocoa Radio will automatically detect which tuner you&#8217;re using and perform the appropriate actions.</p>
<p>It did take a little while to finish this work, and there are several more tuners out there.  If you are desperate for support of a specific tuner, you can donate a device for the cause and I&#8217;ll try to support it.  By the way, Softshell uses the same code for tuning as Cocoa Radio, if you recompile softshell, it should include this new code.</p>
<p>All the relevant code and binaries are, as usual, available at <a href="https://github.com/hpux735/Cocoa-Radio" target="_blank" rel='nofollow'>github</a>.  Make absolutely sure that you also update the <a href="https://github.com/hpux735/Softshell" target="_blank" rel='nofollow'>softshell repository</a>!</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1814" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1814_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1814?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1814_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1814&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1814' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1814</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Cocoa Radio release!!</title>
		<link>http://www.alternet.us.com/?p=1806</link>
		<comments>http://www.alternet.us.com/?p=1806#comments</comments>
		<pubDate>Thu, 11 Oct 2012 17:31:56 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[rtl-sdr]]></category>
		<category><![CDATA[softshell]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1806</guid>
		<description><![CDATA[Well, I&#8217;m back from vacation and I want to tell everyone about a new version of Cocoa Radio (my application for demodulating radio signals using the rtlsdr dongles on mac os x, written in Objective C).  This version seems to be running really well.  I&#8217;ve set the sample rate to 1024000 samples per second for [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1807" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/10/cocoa-radio.png" rel='nofollow'><img class="size-large wp-image-1807" title="Cocoa radio interface" alt="" src="http://www.alternet.us.com/wp-content/uploads/2012/10/cocoa-radio-540x271.png" width="540" height="271" /></a><p class="wp-caption-text">Cocoa radio interface explained (click for full size)</p></div>
<p>Well, I&#8217;m back from vacation and I want to tell everyone about a new version of Cocoa Radio (my application for demodulating radio signals using the rtlsdr dongles on mac os x, written in Objective C).  This version seems to be running really well.  I&#8217;ve set the sample rate to 1024000 samples per second for the moment (though this value can be changed in the code), and at this rate everything seems really stable.  Please give it a try and create issues at the <a href="https://github.com/hpux735/Cocoa-Radio/issues" target="_blank" rel='nofollow'>github issues page</a> if you find any problems.  I should say that I&#8217;m a little tired of working on it, so unless there are major issues I&#8217;ll be working on other projects for a while.  I encourage others to take a look at the code if they&#8217;re interested in SDR.  It&#8217;s not as scary as it looks!</p>
<p>Also, the sliders are a little buggy (especially the bandwidth ones).  Move the a little bit once the app starts up and they&#8217;ll work correctly.</p>
<p>Finally, I don&#8217;t have any support for AM (amplitude modulation) yet.  It&#8217;s an easy modulation type, and I may add it soon.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1806" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1806_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1806?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1806_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1806&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1806' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1806</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Cocoa Radio Alpha testing</title>
		<link>http://www.alternet.us.com/?p=1789</link>
		<comments>http://www.alternet.us.com/?p=1789#comments</comments>
		<pubDate>Sat, 15 Sep 2012 16:38:58 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[gnuradio]]></category>
		<category><![CDATA[rtl-sdr]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1789</guid>
		<description><![CDATA[I&#8217;ve been working on a stand-alone software defined radio (SDR) application for Mac OS on-and-off for a few months, and I think it&#8217;s good enough now to encourage people to test it and provide feedback.  Though it&#8217;s possible, of course, to do everything my app does in GNU Radio, it&#8217;s much more convenient to have [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve been working on a stand-alone software defined radio (SDR) application for Mac OS on-and-off for a few months, and I think it&#8217;s good enough now to encourage people to test it and provide feedback.  Though it&#8217;s possible, of course, to do everything my app does in GNU Radio, it&#8217;s much more convenient to have a dedicated app.  Especially because this app uses a lot less CPU than GNU Radio.</p>
<p>This video shows the basic operation of the user interface:</p>
<p><iframe src="http://www.youtube.com/embed/SZRCAIMSinA" height="315" width="560" frameborder="0"></iframe></p>
<p>And this one shows an &#8216;inside peek&#8217; at what happens to the signal inside of the application. In normal usage, the waterfall display won&#8217;t do this, but it&#8217;s an interesting effect:</p>
<p><iframe src="http://www.youtube.com/embed/k3tg8zx3Tj8" height="315" width="560" frameborder="0"></iframe></p>
<p>There are still many, many bugs, but it should be enough to play around with. I&#8217;ve been able to listen to broadcast FM radio for some time using the app. There is no squelch control, that&#8217;s on the list of things to add. Also, it&#8217;s possible to get audio buffer underruns. It&#8217;s likely caused by slight differences in the clock rate of the rtl-sdr dongle and the audio device that you&#8217;re using.</p>
<p>If you notice any bugs, or have specific issues that you would like addressed, please create an issue on the <a href="https://github.com/hpux735/Cocoa-Radio" target="_blank" rel='nofollow'>github page</a>.  Also, if you are able to contribute, please let me know.  I&#8217;m obviously in need of some GUI assistance!</p>
<p>One word of advice, don&#8217;t try to change the modulation type using the drop-down menu, it doesn&#8217;t work! <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Again, code is available at github, as is an <a href="https://github.com/hpux735/Cocoa-Radio/downloads" rel='nofollow'>application binary</a>.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1789" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1789_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1789?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1789_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1789&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1789' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1789</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Fallen tree in the OSU quad</title>
		<link>http://www.alternet.us.com/?p=1770</link>
		<comments>http://www.alternet.us.com/?p=1770#comments</comments>
		<pubDate>Wed, 01 Aug 2012 17:06:21 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Galleries]]></category>
		<category><![CDATA[Corvallis]]></category>
		<category><![CDATA[oregon]]></category>
		<category><![CDATA[OSU]]></category>
		<category><![CDATA[Photos]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1770</guid>
		<description><![CDATA[This tree randomly split in two and fell over!  No one was hurt, it could have been muuuch worse. Share on Facebook]]></description>
				<content:encoded><![CDATA[<p>This tree randomly split in two and fell over!  No one was hurt, it could have been muuuch worse.</p>

<a href='http://www.alternet.us.com/?attachment_id=1771' title='IMG_0752'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0752-150x150.jpg" class="attachment-thumbnail" alt="IMG_0752" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1774' title='IMG_0755'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0755-150x150.jpg" class="attachment-thumbnail" alt="IMG_0755" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1775' title='IMG_0756'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0756-150x150.jpg" class="attachment-thumbnail" alt="IMG_0756" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1777' title='IMG_0757'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0757-150x150.jpg" class="attachment-thumbnail" alt="IMG_0757" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1780' title='IMG_0761'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0761-150x150.jpg" class="attachment-thumbnail" alt="IMG_0761" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1781' title='IMG_0765'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0765-150x150.jpg" class="attachment-thumbnail" alt="IMG_0765" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1782' title='IMG_0767'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0767-150x150.jpg" class="attachment-thumbnail" alt="IMG_0767" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1783' title='IMG_0769'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0769-150x150.jpg" class="attachment-thumbnail" alt="IMG_0769" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1784' title='IMG_0763'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2012/08/IMG_0763-150x150.jpg" class="attachment-thumbnail" alt="IMG_0763" /></a>

<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1770" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1770_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1770?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1770_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1770&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1770' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1770</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compiling GnuRadio 3.3.0 on Mountain Lion</title>
		<link>http://www.alternet.us.com/?p=1756</link>
		<comments>http://www.alternet.us.com/?p=1756#comments</comments>
		<pubDate>Wed, 25 Jul 2012 23:16:32 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[gnuradio]]></category>
		<category><![CDATA[rtl-sdr]]></category>
		<category><![CDATA[softshell]]></category>
		<category><![CDATA[Techniques]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1756</guid>
		<description><![CDATA[Fixing all the little issues with this process took me days, so I apologize if it&#8217;s a complicated and multi-step process.  These steps worked for me, hopefully they work for you too, but YMMV. First of all, it is vital that you don&#8217;t have the macports boost 1.50 installed.  There is a problem with that [...]]]></description>
				<content:encoded><![CDATA[<p>Fixing all the little issues with this process took me days, so I apologize if it&#8217;s a complicated and multi-step process.  These steps worked for me, hopefully they work for you too, but YMMV.</p>
<p>First of all, it is vital that you don&#8217;t have the macports boost 1.50 installed.  There is a problem with that version where the x86_64 version of the library isn&#8217;t compiled.  This is mentioned in an <a href="http://www.alternet.us.com/?p=1743" target="_blank" rel='nofollow'>earlier post</a>, and the mac ports trac entry is <a href="https://trac.macports.org/ticket/35118" target="_blank" rel='nofollow'>here</a>.</p>
<p>The easiest way to begin is to install boost 1.49 then run &#8220;sudo port install gnuradio-core&#8221; and let macports install all of the pre-requisite packages (you may need to perform the fix I mentioned in that earlier post to fix netpbm) .  When it finally gets to gnuradio-core, it will fail.  Now, what you need to do is:</p>
<pre>$sudo port edit gnuradio-core</pre>
<p>Follow the instructions, again in that earlier post (update 2).</p>
<pre>$sudo port clean gnuradio-core
$sudo port -n install gnuradio-core
---&gt; Computing dependencies for gnuradio-core
---&gt; Fetching archive for gnuradio-core
---&gt; Attempting to fetch gnuradio-core-3.3.0_0+python26.darwin_12.x86_64.tbz2 from http://packages.macports.org/gnuradio-core
---&gt; Fetching distfiles for gnuradio-core
---&gt; Verifying checksum(s) for gnuradio-core
---&gt; Extracting gnuradio-core
---&gt; Applying patches to gnuradio-core
---&gt; Configuring gnuradio-core</pre>
<p><span style="color: #ff0000;"><strong>THIS IS IMPORTANT!: Cancel (control-c) when it says &#8220;Configuring gnuradio-core.&#8221;</strong></span>  At this point, we need to hand-edit the configure script in the gnuradio source directory.  The reason for this is because some of the assembler code in gnuradio uses 32-bit only opcodes.  When compiling for 64-bit machines they generate errors.  It&#8217;s necessary for them to be compiled differently.  Luckily, when Lion was released, a fix was devised and added to macports.  The same exact fix (in principle) should work for Mountain Lion.  But, in the configure script, the change looks for Lion and doesn&#8217;t detect Mountain Lion.  We just need to change the test to detect Mountain Lion.  The difference is only the version of darwin used.  <a href="https://trac.macports.org/ticket/31238" target="_blank" rel='nofollow'>This information is in this trac</a>.</p>
<pre>$cd /opt/local/var/macports/build/
$ls
&lt;cd to the long directory that ends with science_gnuradio-core&gt;
$cd gnuradio-core/work/gnuradio-3.3.0
$sudo vi configure</pre>
<p>Once editing the configure script, search for &#8220;darwin*10*&#8221; or &#8220;darwin*11*&#8221;.  This is easy if you hit the forward slash and type &#8220;darwin\*1&#8243;:</p>
<pre>/darwin\*1</pre>
<p>The region of interest should look like this (the numbers are the line numbers):</p>
<pre>20154     *darwin*11*) 
20155 # The cast to long int works around a bug in the HP C Compiler 
20156 # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects 
20157 # declarations like `int a3[[(sizeof (unsigned char)) &gt;= 0]];'. 
20158 # This bug is HP SR number 8606223364.</pre>
<p>Change the <em>*darwin*11*</em> (or <em>*darwin*10*</em>) to: <em>*darwin*12*</em></p>
<p>Close the vi session by hitting &lt;<em>esc</em>&gt; then <em>:</em> then type <em>wq</em> and enter.</p>
<p>Now, run &#8220;sudo port -n install gnuradio-core&#8221;.  Make sure that you DO NOT clean the package.  This will destroy our edited configure script.</p>
<p>When that finishes (hopefully it does!) you should be all set!  You&#8217;ll probably want to install gnuradio-companion as well as gnuradio-audio-osx.</p>
<p>If you have any problems or questions, let me know in the comments.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1756" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1756_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1756?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1756_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1756&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1756' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1756</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Using softshell with GNURadio</title>
		<link>http://www.alternet.us.com/?p=1749</link>
		<comments>http://www.alternet.us.com/?p=1749#comments</comments>
		<pubDate>Wed, 25 Jul 2012 00:04:33 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[gnuradio]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[rtl-sdr]]></category>
		<category><![CDATA[softshell]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1749</guid>
		<description><![CDATA[It has been a little while since I released the very early code for softshell (not that the code has advanced much), and I&#8217;ve received a few requests for a bit more information about how it&#8217;s intended to be used. I admit that I hacked it together very quickly so that I could make some [...]]]></description>
				<content:encoded><![CDATA[<p>It has been a little while since I released the very early code for softshell (not that the code has advanced much), and I&#8217;ve received a few requests for a bit more information about how it&#8217;s intended to be used.</p>
<p>I admit that I hacked it together very quickly so that I could make some basic use of the rtlsdr dongles on my mac.  To be very clear, Softshell does no actual SDR itself.  You can really look at it more like a driver for the rtlsdr.  Softshell opens a connection to the rtl device, allows you to tune its internal oscillator, and puts the data on the network.</p>
<p>To start, install the rtl device in your USB port, then open Softshell.</p>
<div id="attachment_1751" class="wp-caption aligncenter" style="width: 490px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/softshell-open.png" rel='nofollow'><img class="size-full wp-image-1751" title="softshell-open" src="http://www.alternet.us.com/wp-content/uploads/2012/07/softshell-open.png" alt="" width="480" height="382" /></a><p class="wp-caption-text">Freshly opened</p></div>
<p>If you see a similar window, it means that Softshell has found your device (the ezcap in this case).  It is, perhaps, a good time to mention that I&#8217;ve only ported the tuner code for the Elonics E4000 tuner.  Click the &#8220;Open&#8221; button to have the program open the connection to the device.  If it detects that you have the E4000 the &#8220;Tuner type&#8221; field will be filled in with &#8220;Elonics E4000.&#8221;</p>
<p>Once this is done, changes to the sample rate and center frequency will take effect with the &#8220;Update&#8221; button is clicked.  The Center frequency is provided in Hz.</p>
<p>Now, that&#8217;s all fine and good, but you&#8217;re just tuning the device.  To actually get the data out of it, you need to setup the network settings.  Choose a port number for Softshell to listen to, I use &#8220;12345,&#8221; and click the &#8220;Running&#8221; checkbox.</p>
<p>Finally, in GnuRadio, you need to use a &#8220;TCP Source&#8221; block setup as a client with the same port number you used before.</p>
<div id="attachment_1752" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/gnuradio-setup.png" rel='nofollow'><img class="size-large wp-image-1752" title="gnuradio-setup" src="http://www.alternet.us.com/wp-content/uploads/2012/07/gnuradio-setup-540x257.png" alt="" width="540" height="257" /></a><p class="wp-caption-text">Setting up GnuRadio to work with Softshell (click for full size)</p></div>
<p>Once that&#8217;s done you should be up &amp; running.  Note that, natively, the rtl device actually outputs unsigned bytes and that Softshell converts these to floats centered around zero.  Some GnuRadio examples include the blocks that perform this conversion.  If you come across this, just remove those blocks.</p>
<p>Good luck!  Please feel free to comment with any questions or issues!</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1749" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1749_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1749?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1749_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1749&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1749' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1749</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Macports compilation problems with CLANG (netpbm)</title>
		<link>http://www.alternet.us.com/?p=1743</link>
		<comments>http://www.alternet.us.com/?p=1743#comments</comments>
		<pubDate>Tue, 24 Jul 2012 18:54:52 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[macports]]></category>
		<category><![CDATA[Techniques]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1743</guid>
		<description><![CDATA[I&#8217;ve been struggling with this for a few days, so hopefully this post saves some people from headaches. Some packages in macports fail to compile using CLANG.  The reasons are varied, but inline assembler is a common reason.  The trick to getting them to work is using a different compiler.  LLVM-GCC seems to be a [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve been struggling with this for a few days, so hopefully this post saves some people from headaches.</p>
<p>Some packages in macports fail to compile using CLANG.  The reasons are varied, but inline assembler is a common reason.  The trick to getting them to work is using a different compiler.  LLVM-GCC seems to be a good choice.</p>
<p>The macports guide for choosing compilers isn&#8217;t as clear as I would like.  After some googling, I learned that you can edit the port file using macports.</p>
<pre>sudo port edit netpbm</pre>
<p>This command opens the port file for that package in vi (or maybe your default editor, if different) and lets you make changes.  The compiler is set by the TCL variable ${configure.compiler} which is set thusly:</p>
<pre>configure.compiler llvm-gcc-4.2</pre>
<p>Once this changes is made, clean and re-attempt the port:</p>
<pre>sudo port clean netpbm</pre>
<pre>sudo port install netpbm</pre>
<p>And it should work.  It did for me.  At least, you can use these series of steps to try different compilers out to see which one works.</p>
<h3>Update:</h3>
<p>To compile the gnuradio-gruel library, it may be necessary to downgrade to boost version 1.49 if you have version 1.50 installed.  For some reason, the x86-64 version of the libraries aren&#8217;t build with the new version of boost.  <a href="https://trac.macports.org/ticket/35118" target="_blank" rel='nofollow'>Here is the trac entry.</a></p>
<h3>Update 2:</h3>
<p>While compiling the gnuradio-core package, a failure occurs.  The log entry is, unfortunately, not helpful:</p>
<pre>:info:build make[6]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/filter'
:info:build make[5]: *** [all] Error 2</pre>
<p>However, if you navigate to that folder and run make (as sudo, because the files are owned by macports) you get a more helpful result:</p>
<pre>libtool: compile: /usr/bin/clang -DHAVE_CONFIG_H -I. -I../../../.. -I/opt/local/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/runtime -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/general -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/general -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/gengen -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/gengen -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/filter -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/filter -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/missing -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/reed-solomon -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/viterbi -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/io -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/g72x -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/swig -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/hier -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_gnuradio-core/gnuradio-core/work/gnuradio-3.3.0/gnuradio-core/src/lib/swig -I/opt/local/include -I/opt/local/include -I/opt/local/include -I/opt/local/include -I/opt/local/include -pipe -O2 -arch x86_64 -MT float_dotprod_sse.lo -MD -MP -MF .deps/float_dotprod_sse.Tpo -c float_dotprod_sse.S -fno-common -DPIC -o .libs/float_dotprod_sse.o
float_dotprod_sse.S:57:2: error: unknown directive
 .version "01.01"
 ^
make[1]: *** [float_dotprod_sse.lo] Error 1
make: *** [all] Error 2</pre>
<p>It&#8217;s about here that you realize that you&#8217;re dealing with assembler.  Ick.  Apparently, the .version directive isn&#8217;t supported.  I tried commenting them out, but when gnuradio is finally built, I get SEGFAULTs from the filter methods.  I don&#8217;t think it&#8217;s a coincidence that we&#8217;re in the filter directory and this is the dotproduct source file.</p>
<p>Here, again, I tried the compiler &#8216;trick&#8217;.  No dice.  This time, however, the error changed:</p>
<pre>float_dotprod_sse.S:63:suffix or operands invalid for `push'
float_dotprod_sse.S:163:suffix or operands invalid for `pop'</pre>
<p>A quick google later, and it turns out that when you compile assembly code designed for a 32 bit machine on 64 bit, the assembler doesn&#8217;t know what to do with some of the instructions.  The solution is to add -m32 to the compile command line.</p>
<p>Unfortunately, all this code is compiled with -arch x86_64 (the opposite of the -m32 flag!).  If I removed -arch x86_64 and added -m32 it worked.  Now what to do?  Unfortunately, I&#8217;m stuck for now&#8230; ideas?</p>
<p>&nbsp;</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1743" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1743_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1743?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1743_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1743&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1743' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1743</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Riding mower repair</title>
		<link>http://www.alternet.us.com/?p=1722</link>
		<comments>http://www.alternet.us.com/?p=1722#comments</comments>
		<pubDate>Sun, 15 Jul 2012 03:01:00 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1722</guid>
		<description><![CDATA[This is waaay out of left field for this blog, but I&#8217;ve spent the last week or so working on this project, so I figure I should describe it. In the list few weeks, my engine in my ride-on power has been burning tons of oil.  It would smoke a bit all the time, but [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1723" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1723" title="Oily air filter" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0001.jpg" alt="" width="540" height="304" /></a><p class="wp-caption-text">&#8220;Well, there&#8217;s your problem!&#8221;</p></div>
<p>This is waaay out of left field for this blog, but I&#8217;ve spent the last week or so working on this project, so I figure I should describe it.</p>
<p>In the list few weeks, my engine in my ride-on power has been burning tons of oil.  It would smoke a bit all the time, but after a while, it would bog down and unleash a massive cloud of blue smoke.  I read some forums and things online to try to get an idea of what was happening.  Many people said that it was caused by the crank case breather.  I figured this would be an easy thing to try.  When I went to the small engine store (Willamette Saw) they said that it was almost guaranteed to be the head gasket.  Bummer.  I came back the next day with the engine model number, and got a new gasket.</p>
<p>You can see the tons of oil swirling around in the air filter housing.  What I think was happening is that the head gasket leak was pressuring the crank case, which was causing the blower to expel lots of air and oil into the housing.  When it overflowed, it would pour into the intake causing the huge smoke cloud.<span id="more-1722"></span></p>
<div id="attachment_1725" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0007.jpg" rel='nofollow'><img class="size-full wp-image-1725" title="blown gasket" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0007.jpg" alt="" width="540" height="358" /></a><p class="wp-caption-text">It doesn&#8217;t get much clearer than that!</p></div>
<p>Once I got all the covers and stuff off of the engine, the cylinder head came off very easily.  It&#8217;s painfully obvious that this was a blown head gasket, and that the combustion gasses were leaking into the crank case.  It&#8217;s bizarre how thin the gasket is in this location, and that it&#8217;s really far away from any bolts.</p>
<div id="attachment_1724" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0006.jpg" rel='nofollow'><img class="size-full wp-image-1724" title="cylinder oil" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0006.jpg" alt="" width="540" height="358" /></a><p class="wp-caption-text">Visible oil in the cylinder.</p></div>
<p>In addition to the obvious gasket leak, there was a ton of oil in the cylinder.  There had to have been at least a table spoon of oil just sitting there in the cylinder.  I mopped most of it up before taking the picture, unfortunately.  Changing the gasket was really easy.  It&#8217;s important that you clean off all the old gasket and make sure that the mating surfaces are clean and smooth.</p>
<div id="attachment_1727" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0015.jpg" rel='nofollow'><img class="size-full wp-image-1727" title="broken bolt" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0015.jpg" alt="" width="540" height="361" /></a><p class="wp-caption-text">AAAAAARRRRRRGGGGGGHHHHHHH!!!!!</p></div>
<p>I know that it&#8217;s fairly important to correctly torque the bolts when installing the cylinder head, and I attempted to find information online about the proper torque value.  I read somewhere that it was supposed to be set to 55 ft./lbs.  It&#8217;s not.  Don&#8217;t do it.  That is a TON of torque.  In attempting to install the bolts I realized this, and kept backing it off.  However, one of the bolts broke anyway.</p>
<div id="attachment_1726" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1726" title="broken bolt remains" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0014.jpg" alt="" width="540" height="477" /><p class="wp-caption-text">Hellooo down there!</p></div>
<p>I friend of mine insisted that I try to remove the bolt (yes, I was going to leave it), and lent me his ez-outs.  It can be very difficult to drill  into a hardened bolt, especially deep in a hole without destroying the threads.  I saw a cool technique somewhere on the internet for drilling down the center of a bolt, so I used the opportunity to try it.</p>
<div id="attachment_1728" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0018.jpg" rel='nofollow'><img class="size-full wp-image-1728" title="center driling" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0018.jpg" alt="" width="540" height="441" /></a><p class="wp-caption-text">Center drilling a bolt</p></div>
<p>The trick to drilling down the center of a bolt is using a drill-press and a well-secured vise.  Chuck the bit into the drill chuck, but upside-down, then lower it into the vise.  It&#8217;s easiest if you have an x-y stage type of vise. With the bit in the jaws of the vise, secure it.  Now, chuck the bolt into the drill press and drill the hole.  It&#8217;s a kinda fun process.   I did my best to keep the bit clean and lubricated.</p>
<div id="attachment_1729" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0020.jpg" rel='nofollow'><img class="size-full wp-image-1729" title="drilled bolt" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0020.jpg" alt="" width="540" height="358" /></a><p class="wp-caption-text">Successfully center-drilled bolt</p></div>
<p>It should work great, it did for me.  I also used a counter sinking bit to de-burr both sides of the bolt.  Also, before starting this whole process, I ground off all the markings on the top of the bolt so the drill bit didn&#8217;t wander around the surface.</p>
<div id="attachment_1730" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0021.jpg" rel='nofollow'><img class="size-full wp-image-1730" title="drill spacer" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0021.jpg" alt="" width="540" height="345" /></a><p class="wp-caption-text">Drill bit through the bolt spacer</p></div>
<div id="attachment_1731" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0022.jpg" rel='nofollow'><img class="size-full wp-image-1731" title="spacer installed" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0022.jpg" alt="" width="540" height="358" /></a><p class="wp-caption-text">Spacer installed into the bolt hole</p></div>
<p>As expected, the spacer fit the bolt hole perfectly, and the bit fit perfectly as well.  I was ready to go!  What could go wrong?</p>
<div id="attachment_1732" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0023.jpg" rel='nofollow'><img class="size-full wp-image-1732 " title="head" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0023.jpg" alt="" width="540" height="358" /></a><p class="wp-caption-text">D&#8217;oh!</p></div>
<p>Well, crap.  I hadn&#8217;t anticipated that.  There was no way I was going to get the drill chuck into that space.  This sucks.  I was hoping that I could get the bolt out without taking the head back off the block.  But it became clear that there was no other way to do it.</p>
<div id="attachment_1733" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0025.jpg" rel='nofollow'><img class="size-full wp-image-1733" title="broken bolt" src="http://www.alternet.us.com/wp-content/uploads/2012/07/DSC_0025.jpg" alt="" width="540" height="358" /></a><p class="wp-caption-text">Well, that&#8217;s a bit easier to get.</p></div>
<p>With the head off, getting the bolt was trivial.  That&#8217;s nice.  However, I had to buy another head gasket, so that was a bummer.  Once the bolt was replaced, I was able to find the proper torque (220 in/lbs.) which is about 18 ft./lbs.  This turned out to be just about perfect.  The engine has some serious compression now!  I also had to adjust the valve rocker clearance.  Now the mower&#8217;s running like a champ!<br />
<hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1722" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1722_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1722?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1722_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1722&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1722' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1722</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WWDC Keynote</title>
		<link>http://www.alternet.us.com/?p=1710</link>
		<comments>http://www.alternet.us.com/?p=1710#comments</comments>
		<pubDate>Mon, 11 Jun 2012 17:04:47 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[wwdc]]></category>
		<category><![CDATA[Photos]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1710</guid>
		<description><![CDATA[Share on Facebook]]></description>
				<content:encoded><![CDATA[<div id="attachment_1711" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/06/DSC_0392.png" rel='nofollow'><img class="size-large wp-image-1711" title="DSC_0392" src="http://www.alternet.us.com/wp-content/uploads/2012/06/DSC_0392-540x357.png" alt="" width="540" height="357" /></a><p class="wp-caption-text">Keynote time!</p></div>
<div id="attachment_1715" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/06/DSC_0303.png" rel='nofollow'><img class="size-large wp-image-1715" title="DSC_0303" src="http://www.alternet.us.com/wp-content/uploads/2012/06/DSC_0303-540x357.png" alt="" width="540" height="357" /></a><p class="wp-caption-text">I&#8217;ve never been less impressed by fo-hawks than I am right now.</p></div>
<div id="attachment_1718" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/06/DSC_0006.png" rel='nofollow'><img class="size-large wp-image-1718" title="DSC_0006" src="http://www.alternet.us.com/wp-content/uploads/2012/06/DSC_0006-540x303.png" alt="" width="540" height="303" /></a><p class="wp-caption-text">The Stig!?</p></div>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1710" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1710_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1710?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1710_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1710&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1710' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1710</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2012 Solar eclipse</title>
		<link>http://www.alternet.us.com/?p=1681</link>
		<comments>http://www.alternet.us.com/?p=1681#comments</comments>
		<pubDate>Mon, 21 May 2012 02:58:23 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[astronomy]]></category>
		<category><![CDATA[oregon]]></category>
		<category><![CDATA[Photos]]></category>
		<category><![CDATA[solar eclipse]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1681</guid>
		<description><![CDATA[During this solar eclipse, I was lucky to be near the path of the full eclipse.  Sky &#38; Telescope have a really nice graphic showing where in North America the eclipse was visible. I&#8217;m just north of the ideal path.  Anyway, it was cloudy here in Oregon, so my pictures aren&#8217;t great.  I hope you [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1682" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/05/se2.png" rel='nofollow'><img class="size-large wp-image-1682" title="se2" src="http://www.alternet.us.com/wp-content/uploads/2012/05/se2-540x381.png" alt="" width="540" height="381" /></a><p class="wp-caption-text">2012 Solar Eclipse</p></div>
<p>During this solar eclipse, I was lucky to be near the path of the full eclipse.  Sky &amp; Telescope have a really nice graphic showing where in North America the eclipse was visible.</p>
<div class="wp-caption aligncenter" style="width: 390px"><a href="http://www.skyandtelescope.com/observing/highlights/A-Preview-of-May-20ths-Annular-Eclipse-141037803.html" rel='nofollow'><img title="eclipse_path" src="http://media.skyandtelescope.com/images/May20_Eclipse_map_380px.jpg" alt="" width="380" height="344" /></a><p class="wp-caption-text">Eclipse path (click image for source)</p></div>
<p>I&#8217;m just north of the ideal path.  Anyway, it was cloudy here in Oregon, so my pictures aren&#8217;t great.  I hope you enjoy them.</p>
<p><div id="attachment_1683" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/05/se1.png" rel='nofollow'><img class="size-large wp-image-1683" title="se1" src="http://www.alternet.us.com/wp-content/uploads/2012/05/se1-540x386.png" alt="" width="540" height="386" /></a><p class="wp-caption-text">Solar eclipse 2</p></div><br />
<hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1681" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1681_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1681?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1681_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1681&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1681' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1681</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Softrock application available</title>
		<link>http://www.alternet.us.com/?p=1668</link>
		<comments>http://www.alternet.us.com/?p=1668#comments</comments>
		<pubDate>Sat, 12 May 2012 04:30:08 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1668</guid>
		<description><![CDATA[Here&#8217;s a compiled executable, including the rtl-sdr library, for those that don&#8217;t want to get the source on github and compile it. Also, if anyone wants to design a logo, it would be much appreciated! Softshell-alpha Share on Facebook]]></description>
				<content:encoded><![CDATA[<p>Here&#8217;s a compiled executable, including the rtl-sdr library, for those that don&#8217;t want to get the source on github and compile it.</p>
<p>Also, if anyone wants to design a logo, it would be much appreciated!</p>
<p><a href="http://www.alternet.us.com/wp-content/uploads/2012/05/Softshell-alpha.zip" rel='nofollow'>Softshell-alpha</a><br />
<hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1668" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1668_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1668?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1668_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1668&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1668' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1668</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WWDC, here I come!</title>
		<link>http://www.alternet.us.com/?p=1665</link>
		<comments>http://www.alternet.us.com/?p=1665#comments</comments>
		<pubDate>Fri, 11 May 2012 20:09:58 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[wwdc]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1665</guid>
		<description><![CDATA[Apple was kind enough to give me a scholarship to WWDC this year!  I&#8217;m pretty freaking excited!  Just wanted to share. Share on Facebook]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.alternet.us.com/wp-content/uploads/2012/05/wwdc12.png" rel='nofollow'><img class="aligncenter size-full wp-image-1666" title="wwdc12" src="http://www.alternet.us.com/wp-content/uploads/2012/05/wwdc12.png" alt="" width="459" height="496" /></a></p>
<p>Apple was kind enough to give me a scholarship to WWDC this year!  I&#8217;m pretty freaking excited!  Just wanted to share. <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1665" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1665_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1665?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1665_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1665&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1665' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1665</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Softshell pre-alpha</title>
		<link>http://www.alternet.us.com/?p=1660</link>
		<comments>http://www.alternet.us.com/?p=1660#comments</comments>
		<pubDate>Fri, 11 May 2012 03:26:04 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[rtl-sdr]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1660</guid>
		<description><![CDATA[Basic functionality of Softshell works!  In the image above, you can see the app (Cocoa-rtl-sdr is the old name) on the right.  I didn&#8217;t even have the text boxes wired in yet for the sample rate and center frequency, because I was so excited that it was working.  The samples from the receiver are transported [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1662" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/05/dongle.png" rel='nofollow'><img class="size-large wp-image-1662" title="softshell-alpha" src="http://www.alternet.us.com/wp-content/uploads/2012/05/dongle-540x581.png" alt="" width="540" height="581" /></a><p class="wp-caption-text">Softshell works!</p></div>
<p>Basic functionality of Softshell works!  In the image above, you can see the app (Cocoa-rtl-sdr is the old name) on the right.  I didn&#8217;t even have the text boxes wired in yet for the sample rate and center frequency, because I was so excited that it was working.  The samples from the receiver are transported into GNU radio over TCP where a simple FFT is being performed.  Notice that all the <a href="http://sdr.osmocom.org/trac/wiki/rtl-sdr" target="_blank" rel='nofollow'>extra blocks</a> needed for the original rtl-sdr aren&#8217;t needed, because I&#8217;m doing all of the uchar  to float conversion inside of Softshell.</p>
<p>The code that&#8217;s available on GitHub was hacked together with some network code that I can&#8217;t release right now, but I&#8217;m going to move it over to code that I can use soon.</p>
<h2>Update:</h2>
<p>Here&#8217;s a pre-compiled application for those that don&#8217;t feel like compiling it:</p>
<p><a href="http://www.alternet.us.com/wp-content/uploads/2012/05/Softshell-alpha.zip" rel='nofollow'>Softshell-alpha</a></p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1660" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1660_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1660?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1660_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1660&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1660' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1660</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Weird return value discrepancies between Softshell and RTL-SDR</title>
		<link>http://www.alternet.us.com/?p=1657</link>
		<comments>http://www.alternet.us.com/?p=1657#comments</comments>
		<pubDate>Mon, 07 May 2012 01:59:43 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1657</guid>
		<description><![CDATA[I&#8217;ve made significant progress porting over the rtl-sdr code.  I added printfs to every function that interfaces with the USB port so that I can compare what happens.  Everything seems normal, up until the gainControl function.  Once there, the returns from my application are usually about one digit off of the rtl-sdr code.  If anyone [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve made significant progress porting over the rtl-sdr code.  I added printfs to every function that interfaces with the USB port so that I can compare what happens.  Everything seems normal, up until the gainControl function.  Once there, the returns from my application are usually about one digit off of the rtl-sdr code.  If anyone has any ideas, I&#8217;d love to hear them!</p>
<p><a href="https://docs.google.com/spreadsheet/pub?key=0AnjGjmlyTwIMdGtjcExyMVNhYkdYOGxKYkpoWkxuVXc&amp;output=html" target="_blank" rel='nofollow'>Link to the comparison spreadsheet.</a></p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1657" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1657_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1657?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1657_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1657&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1657' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1657</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Softshell, the MacOS RTL-SDR driver</title>
		<link>http://www.alternet.us.com/?p=1652</link>
		<comments>http://www.alternet.us.com/?p=1652#comments</comments>
		<pubDate>Sat, 05 May 2012 20:06:54 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTL-SDR]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[rtl-sdr]]></category>
		<category><![CDATA[softshell]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1652</guid>
		<description><![CDATA[For the uninitiated, a few months ago one of the developers in the V4L (video for linux)/DVB (digital video broadcasting) team,  Antti Palosaari, discovered that this cheap video tuner dongle could be used as a software defined radio.  Since then, it has developed a HUGE following!  The team over at osmocom helped to package the driver into [...]]]></description>
				<content:encoded><![CDATA[<p>For the uninitiated, a few months ago one of the developers in the V4L (video for linux)/DVB (digital video broadcasting) team, <a href="http://thread.gmane.org/gmane.linux.drivers.video-input-infrastructure/44461/focus=44461" rel='nofollow'> Antti Palosaari</a>, discovered that this cheap video tuner dongle could be used as a software defined radio.  Since then, it has developed a HUGE following!  The team over at <a href="http://sdr.osmocom.org/trac/wiki/rtl-sdr" target="_blank" rel='nofollow'>osmocom</a> helped to package the driver into a separate executable.  The application seems to work well, and even compiles on the mac.  The problem is, though, that you have to install the libusb library for it to work.  It&#8217;s not hard to do, but you have to install mac ports, then install libusb.  What a pain.</p>
<p>Most of the active discussion about rtlsdr appears to be happening at the <a href="http://www.reddit.com/r/RTLSDR/" target="_blank" rel='nofollow'>RTLSDR subreddit</a>.</p>
<div id="attachment_1653" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/05/rtl-sdr.png" rel='nofollow'><img class="size-large wp-image-1653" title="rtl-sdr" src="http://www.alternet.us.com/wp-content/uploads/2012/05/rtl-sdr-540x217.png" alt="" width="540" height="217" /></a><p class="wp-caption-text">RTL SDR compatible dongle</p></div>
<p>The idea behind Softshell is to port the osmocom rtl-sdr code into a native Cocoa application that doesn&#8217;t need libusb.  I&#8217;ve published the code to <a href="https://github.com/hpux735/Softshell" target="_blank" rel='nofollow'>github</a>, but it&#8217;s still very early in the development process.</p>
<p>This post is just meant as a heads-up for anyone with Objective-C experience and an interest.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1652" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1652_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1652?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1652_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1652&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1652' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1652</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>The enemy of any analyzer: Phase Noise.</title>
		<link>http://www.alternet.us.com/?p=1625</link>
		<comments>http://www.alternet.us.com/?p=1625#comments</comments>
		<pubDate>Fri, 13 Apr 2012 05:39:46 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1625</guid>
		<description><![CDATA[If there&#8217;s one thing that I was blissfully ignorant of before trying to build a spectrum analyzer, that is now an annoyance and borderline obsession, it&#8217;s phase noise.  Phase noise is exactly the same as any other kind of noise, but unlike noise on a DC signal, phase noise is mode like tiny variations in [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1626" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/zero-hump.png" rel='nofollow'><img class="size-large wp-image-1626" title="zero hump" src="http://www.alternet.us.com/wp-content/uploads/2012/04/zero-hump-540x368.png" alt="" width="540" height="368" /></a><p class="wp-caption-text">That looks neat, but it&#39;s very, very bad...</p></div>
<p>If there&#8217;s one thing that I was blissfully ignorant of before trying to build a spectrum analyzer, that is now an annoyance and borderline obsession, it&#8217;s phase noise.  Phase noise is exactly the same as any other kind of noise, but unlike noise on a DC signal, phase noise is mode like tiny variations in the frequency of the signal.</p>
<p>To get a little more specific, think about phase as a quantity that describes how far along the sine wave we are at any given instant.  It can be described in degrees, radians, or even if you&#8217;re a little radical, <a href="http://tauday.com/tau-manifesto" target="_blank" rel='nofollow'>tau radians</a>.  The idea is the same.  Phase increases until it &#8220;rolls over&#8221; at the end of the cycle.  It looks a bit like a sawtooth wave, assuming that we&#8217;re discussing a constant frequency, unmodulated wave.  Hopefully you believe me that phase noise looks just like noise superimposed on the sawtooth-shaped phase ramp.</p>
<div id="attachment_1628" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/phase-noise.png" rel='nofollow'><img class="size-large wp-image-1628" title="phase noise" src="http://www.alternet.us.com/wp-content/uploads/2012/04/phase-noise-540x371.png" alt="" width="540" height="371" /></a><p class="wp-caption-text">Phase related to sine</p></div>
<p>I think the graphs above helps to illustrates the relationship between phase (above) and a sine wave (below).  I&#8217;ve re-scaled the phase so that it goes from zero to one over the range of one whole number.</p>
<p>In the frequency domain, phase noise is a little easier to understand, and see.  The graph at the head of this article is an extreme example of phase noise.  Really, there are two kinds of phase noise here, and one of them we can do something about.</p>
<div id="attachment_1634" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/PLL-example.jpg" rel='nofollow'><img class="size-large wp-image-1634" title="PLL-example" src="http://www.alternet.us.com/wp-content/uploads/2012/04/PLL-example-540x358.jpg" alt="" width="540" height="358" /></a><p class="wp-caption-text">PLL example (From a Linear Technology data sheet)</p></div>
<p>I tried really hard to find some nice graphics to use to describe, simply, the basic operation of a PLL-based oscillator.  The best I could come up with is the above diagram.  This was lifted from the Linear Technology LMX2326 PLL IC.  This is the same (or damn near) as the PLL chip that&#8217;s used in the analyzer.  The bottom left corner is the oscillator.  All it does it generate a single frequency set by the voltage coming into pin 6.  On the PLL chip, pin 2 is the output from the &#8220;charge pump,&#8221; which is how the PLL sets the tuning voltage.</p>
<div id="attachment_1636" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/skslim_plo_1.gif" rel='nofollow'><img class="size-large wp-image-1636" title="skslim_plo_1" src="http://www.alternet.us.com/wp-content/uploads/2012/04/skslim_plo_1-540x407.gif" alt="" width="540" height="407" /></a><p class="wp-caption-text">PLO1 Schematic (by Scotty)</p></div>
<p>Unfortunately, the PLL in the spectrum analyzer isn&#8217;t this simple (if you can call an normal PLL simple!).  In the center, near the top, notice the Op-Amp.  The high-side supply to this amplifier is +20 volts (at least).  The reason for this is as simple as that&#8217;s what the VCO (voltage controlled oscillator) needs.  It isn&#8217;t possible for the PLL to produce voltages like this, so we need this extra supply.</p>
<div id="attachment_1632" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0036.jpg" rel='nofollow'><img class="size-large wp-image-1632" title="DSC_0036" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0036-540x357.jpg" alt="" width="540" height="357" /></a><p class="wp-caption-text">VCO power supply noise</p></div>
<p>Now, the question is: &#8220;What happens when there&#8217;s noise on the +20 voltage supply?&#8221;  The waveform on the oscilloscope above shows about 20mV of noise on the 20 volt supply.  The frequency of this noise is about 20kHz. It&#8217;s no coincidence that the spacing between the peaks in the comb-like plot is about 20kHz.  What&#8217;s happening is that the noise on the 20 volt supply is literally modulating the output.  Incidentally, that&#8217;s exactly what you do if you want to frequency modulate something.</p>
<p>Now that we know what the cause is, what can we do about it?  If we eliminate that noise, we can fix the problem.  I had made a second 20 volt supply, and used cheap capacitors.  Apparently, when using high voltages (relatively speaking) the amount of capacitance decreases in cheap, small, ceramic capacitors.  I went back to the first supply I made, and added even more capacitance.</p>
<div id="attachment_1637" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0038.jpg" rel='nofollow'><img class="size-large wp-image-1637" title="DSC_0038" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0038-540x357.jpg" alt="" width="540" height="357" /></a><p class="wp-caption-text">Better +20 volt supply</p></div>
<p>The lower trace is the new +20 volt supply, and it&#8217;s peak-to-peak noise voltage is about 3mV.  But the proof of the pudding is in the eating, so how does it affect the phase noise?</p>
<div id="attachment_1630" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/zero-hump-old-CB-capacitor.png" rel='nofollow'><img class="size-large wp-image-1630" title="zero hump old CB capacitor" src="http://www.alternet.us.com/wp-content/uploads/2012/04/zero-hump-old-CB-capacitor-540x368.png" alt="" width="540" height="368" /></a><p class="wp-caption-text">Much improved phase noise</p></div>
<p>It squashes it like a bug!  The above plot is almost textbook for phase noise.  The large peak in the center is representing the width of the final filter (I&#8217;ll get to that in a later post) and the skirt is caused by traditional phase noise.  If I zoom in to the center of that plot it&#8217;s easier to see:</p>
<div id="attachment_1640" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/phase-noise2.png" rel='nofollow'><img class="size-large wp-image-1640" title="phase noise2" src="http://www.alternet.us.com/wp-content/uploads/2012/04/phase-noise2-540x368.png" alt="" width="540" height="368" /></a><p class="wp-caption-text">close in phase noise</p></div>
<p>Here, I&#8217;ve highlighted another common cause of phase noise: PLL loop bandwidth.  This is the bandwidth of the filter that smooths out the pulses that come out of the PLL chip.</p>
<p>That&#8217;s all I have for now&#8230;  I&#8217;ve tried to make this topic, which is very technical and dry, interesting and accessible to those that haven&#8217;t spent the last 5 years trying to build a spectrum analyzer.  I hope you&#8217;ve enjoyed it.</p>
<p>If you want a much more in-depth and technical analysis, see <a href="http://scottyspectrumanalyzer.com/msaanalysis.html" target="_blank" rel='nofollow'>Scotty&#8217;s website</a>.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p>&nbsp;</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1625" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1625_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1625?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1625_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1625&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1625' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1625</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spectrum Analyzer Aluminum Frame</title>
		<link>http://www.alternet.us.com/?p=1597</link>
		<comments>http://www.alternet.us.com/?p=1597#comments</comments>
		<pubDate>Thu, 12 Apr 2012 04:59:51 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://www.alternet.us.com/?p=1597</guid>
		<description><![CDATA[I haven&#8217;t posted for a while.  I&#8217;m sorry.  I was being selfish.  I&#8217;ve made fantastic progress on my spectrum analyzer build, and it&#8217;s so much fun that I haven&#8217;t had the will to pull myself away and post about it. Also, completely unrelated to the build, I&#8217;ve experimented with a service called &#8220;Cloudflare&#8221; as a [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1598" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0366.jpg" rel='nofollow'><img class="size-large wp-image-1598" title="DSC_0366" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0366-540x249.jpg" alt="" width="540" height="249" /></a><p class="wp-caption-text">Beautiful new frame for my SA</p></div>
<p>I haven&#8217;t posted for a while.  I&#8217;m sorry.  I was being selfish.  I&#8217;ve made fantastic progress on my spectrum analyzer build, and it&#8217;s so much fun that I haven&#8217;t had the will to pull myself away and post about it.</p>
<p>Also, completely unrelated to the build, I&#8217;ve experimented with a service called &#8220;Cloudflare&#8221; as a way to make my site more resilient.  It doesn&#8217;t, it&#8217;s MUCH worse.  I&#8217;m not happy with it at all.  I&#8217;ve shut it down, so hopefully once the DNS changes propagate it&#8217;ll be more stable.</p>
<p>Anyway, back to topic.  The last post about the analyzer was about the ChipKit digital logic controller.  That was going very well, so well, in fact, that I was able to finally diagnose an intermittent connection problem between modules.  Intermittent problems are always the worst, especially when you don&#8217;t trust other components in the system.  The reason this is relevant to the discussion at hand is that the problem only manifests when one of the connectors has pressure one one side.  I needed a reliable way the hold all the modules in fixed positions.</p>
<p>Since beginning this project, I&#8217;ve been inspired by the way that two people built their analyzers. Hans&#8217; is probably my favorite.  I took the image below from his photo album in the Yahoo Spectrum Analyzer group.</p>
<div id="attachment_1600" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/SSA-Bottom.jpg" rel='nofollow'><img class="size-large wp-image-1600" title="SSA-Bottom" src="http://www.alternet.us.com/wp-content/uploads/2012/04/SSA-Bottom-540x405.jpg" alt="" width="540" height="405" /></a><p class="wp-caption-text">Hans&#39; analyzer &quot;bottom view&quot;</p></div>
<p>I love how clean and organized it looks.  Much different than most of the others out there.  His frame has holes that go all the way through the frame, and he has a back cover that screws on.  His coax cabling is made of right-angle soldered-on connectors with what looks like RG-405 hard pipe.</p>
<p>Another inspirational build is Sants.  This image is also scraped from the Yahoo group.</p>
<div id="attachment_1601" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/CIMG0604.jpg" rel='nofollow'><img class="size-large wp-image-1601" title="CIMG0604" src="http://www.alternet.us.com/wp-content/uploads/2012/04/CIMG0604-540x404.jpg" alt="" width="540" height="404" /></a><p class="wp-caption-text">Sant&#39;s build</p></div>
<p>This build is most probably the closest to mine.  The pockets, or wells, for the component side of the boards don&#8217;t go all the way through the substrate.  Notice, in both designs, that there is a small lip around the perimeter of each well.  This is there to hold the boards and to electrically connect to the ground vias on the perimeter.  This design also uses right-angle connectors and hard pipe.</p>
<p>With these designs in mind, I sought out the things I would need.  First, of course, was the aluminum itself.  I had looked into <a href="http://www.mcmaster.com/#standard-aluminum-sheets/=h2ffo3" target="_blank" rel='nofollow'>McMaster-Carr</a> (hopefully this link works), and a 1/2&#8243; thick 12&#8243; square costs about $40.  Then, my brother suggested looking on eBay.  I was able to find an equivalent sheet for about $30 after shipping.</p>
<div id="attachment_1603" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/AL-frame11.png" rel='nofollow'><img class="size-large wp-image-1603" title="AL-frame1" src="http://www.alternet.us.com/wp-content/uploads/2012/04/AL-frame11-540x412.png" alt="" width="540" height="412" /></a><p class="wp-caption-text">Frame block layout</p></div>
<p>Once I had a cool hunk of 6061 alloy in my hands, I started designing the layout of the frame.  I started with OmniGraffle (it&#8217;s like Visio) because I could lay it out to scale, and the connections move in a natural way.</p>
<p><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/SA-plan.png" rel='nofollow'><img class="aligncenter size-large wp-image-1604" title="SA-plan" src="http://www.alternet.us.com/wp-content/uploads/2012/04/SA-plan-540x417.png" alt="" width="540" height="417" /></a></p>
<p>Once the layout was complete, I transcribed the design, complete with all the details into AutoCAD.  By this time, about a month passed, and I was able to find someone willing to machine it for me as a favor.  I also got a quote from another friend, which was about $250.  This is a reasonable cost for something like this, in case you&#8217;re looking to duplicate my results.</p>
<div id="attachment_1606" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/well-close.jpg" rel='nofollow'><img class="size-large wp-image-1606" title="well-close" src="http://www.alternet.us.com/wp-content/uploads/2012/04/well-close-540x379.jpg" alt="" width="540" height="379" /></a><p class="wp-caption-text">Close up of one of the wells</p></div>
<p>It took several weeks to get the parts back from the machinist, but the results are totally worth it!  The larger hole was cut with a 1/8&#8243; end mill, and the inner pocket was cut with a 1/4&#8243; mill.  With the majority of the modules, the inner radius is fine.  There were a few exceptions, however.</p>
<div id="attachment_1607" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0372.jpg" rel='nofollow'><img class="size-large wp-image-1607" title="DSC_0372" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0372-540x331.jpg" alt="" width="540" height="331" /></a><p class="wp-caption-text">Small relief for DDS capacitors</p></div>
<p>This photo shows some of the rework I had to do to accommodate a few capacitors right at the edge of the DDS module.  It&#8217;s very difficult to take a picture of a small notch in a shiny material, but hopefully you can see the cut into the side of this pocket.  I made that mostly by making small, successive cuts using an exact-o knife.  The PLO reliefs were a bit more aggressive (there is a power header right in the corner), so I had to use a Dremel cutter bit in my drill press.</p>
<div id="attachment_1609" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0370.jpg" rel='nofollow'><img class="size-large wp-image-1609" title="DSC_0370" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0370-540x364.jpg" alt="" width="540" height="364" /></a><p class="wp-caption-text">Relief for the PLO module</p></div>
<p>Once important lesson learned in this process is that 1.2&#8243; or 2.4&#8243; set into a PCB specification is more of a suggestion rather than something that you can count on all that much.  I had to sand almost every module to get it to fit.  Once that was done, however, everything fit like a glove.</p>
<div id="attachment_1611" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0378.jpg" rel='nofollow'><img class="size-large wp-image-1611" title="DSC_0378" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0378-540x299.jpg" alt="" width="540" height="299" /></a><p class="wp-caption-text">Making custom coax jumpers</p></div>
<p>The final piece in the puzzle is the coax.  The perfect jumpers that both the other designs featured were definitely something that I wanted.  It&#8217;s possible to get these right-angle SMA connectors from China for about a dollar a piece, much less than the ~$5 that you&#8217;ll spend at Digi-Key.</p>
<div id="attachment_1613" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0375.jpg" rel='nofollow'><img class="size-large wp-image-1613" title="DSC_0375" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0375-540x325.jpg" alt="" width="540" height="325" /></a><p class="wp-caption-text">Connector end, ready for solder.</p></div>
<p>To make them, all you really need to do is measure the coax sections, strip the ends, and solder&#8230;</p>
<div id="attachment_1615" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0379.jpg" rel='nofollow'><img class="size-large wp-image-1615" title="DSC_0379" src="http://www.alternet.us.com/wp-content/uploads/2012/04/DSC_0379-540x410.jpg" alt="" width="540" height="410" /></a><p class="wp-caption-text">Soldered center conductor</p></div>
<p>Soldering around the shield of the coax is the hardest part, and it&#8217;s not even that bad.</p>
<div id="attachment_1617" class="wp-caption aligncenter" style="width: 550px"><a href="http://www.alternet.us.com/wp-content/uploads/2012/04/IMG_0568.jpg" rel='nofollow'><img class="size-large wp-image-1617" title="IMG_0568" src="http://www.alternet.us.com/wp-content/uploads/2012/04/IMG_0568-540x405.jpg" alt="" width="540" height="405" /></a><p class="wp-caption-text">Final product!!</p></div>
<p>That&#8217;s all there is to it!  I&#8217;m really happy with how well things turned out.  Certainly something to be proud of.  Over the next few days, I&#8217;m going to try to keep posting about the other advancements.  I have a bit of a backlog, so I should be able to keep them coming&#8230;</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1597" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1597_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1597?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1597_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1597&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1597' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1597</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>More ChipKit spectrum analyzer progress</title>
		<link>http://www.alternet.us.com/?p=1576</link>
		<comments>http://www.alternet.us.com/?p=1576#comments</comments>
		<pubDate>Wed, 01 Feb 2012 15:16:48 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1576</guid>
		<description><![CDATA[I&#8217;ve been able to make solid progress on the spectrum analyzer tonight.  I&#8217;ve continued using the ChipKit, I&#8217;m fairly happy with it at the moment.  As I mentioned in the last post, I&#8217;ve increased the baud rate on the serial port to 115200 baud.  That seems to be the point where the SPI bus speed [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1577" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/ADC-modifications.jpg" rel='nofollow'><img class="size-large wp-image-1577" title="ADC modifications" src="http://alternet.us.com/wp-content/uploads/2012/01/ADC-modifications-540x424.jpg" alt="" width="540" height="424" /></a><p class="wp-caption-text">Modifications to the ADC</p></div>
<p>I&#8217;ve been able to make solid progress on the spectrum analyzer tonight.  I&#8217;ve continued using the ChipKit, I&#8217;m fairly happy with it at the moment.  As I mentioned in the last post, I&#8217;ve increased the baud rate on the serial port to 115200 baud.  That seems to be the point where the SPI bus speed and the serial port speed are about matched.  There&#8217;s still plenty of room to increase it, however.</p>
<p>I&#8217;ve been progressing in the project by adding one module at a time, and testing as best I can.  I&#8217;ve got PLO2 (mostly) working, and DDS1 seems to be rock-solid.  I&#8217;m able to command it to any frequency I want between almost 0 Hz up to 20 MHz.  Tonight, I added the ADC to the list of modules that seem to be working.  To accomplish this, I had to make two modifications to the ADC.  The first was to change it to work with a 3.3v DC supply.  This change was trivial, it&#8217;s the same as the modification to run off of the power from the PDM.  You just remove the old voltage regulator and replace it with a bit of wire.  This is necessary because, if it&#8217;s powered with 5 volts, the minimum voltage required to mark a digital &#8217;1&#8242; is 3.8 volts.  The PIC32 in the chip kit is powered by 3.3 volts, so there&#8217;s no way that&#8217;s going to happen.  In reality, it&#8217;s probably going to work, but it&#8217;s likely going to give you a headache.  Finally, I removed the two transistors that were on the outputs of each ADC.  They were there to provide stronger output drivers (the ADCs can only drive their outputs with 500uA).  The parallel port requires a pretty healthy amount of current on the status lines.  Because it&#8217;s being connected directly to a micro controller, these drivers aren&#8217;t necessary.  Not only that, but they were acting as it they were damaged.  With them gone, everything seems to work great!</p>
<p>Now that the ADC and a DDS works, I can begin to use it as a spectrum analyzer&#8230; even if it&#8217;s only for a very small range of frequencies.  For example, I can make a plot of the filter used with the &#8220;squarer&#8221; in the DDS:</p>
<div id="attachment_1579" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/DDS1-filter-shape.jpg" rel='nofollow'><img class="size-large wp-image-1579" title="DDS1-filter shape" src="http://alternet.us.com/wp-content/uploads/2012/01/DDS1-filter-shape-540x391.jpg" alt="" width="540" height="391" /></a><p class="wp-caption-text">DDS1 squarer response</p></div>
<p>It&#8217;s not immediately clear whether this plot makes any sense, I&#8217;m hoping that I can get someone in the panel of experts to weigh in on it.  It&#8217;s reasonable clear that there is a pass band centered around 10.7 MHz, which is what I want.  I&#8217;m not sure what to think about those steep slopes and the large spike of to the right.  None of this may matter, as the DDS will never be tuned out there anyway.  It could even be that a harmonic of the DDS output is getting through the passband when it&#8217;s tuned there.  I really have no idea.</p>
<p>The plot below is from the final resolution bandwidth filter (RBW) that&#8217;s used to set the resolution of the analyzer as a whole.  I got this filter from one of the MSA experts (thanks, Sam), and I know it performs better than this.  Again, I&#8217;m wondering if it has this shape due to some quality of the DDS output, or some other factor.</p>
<div id="attachment_1578" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/final-filter-shape.jpg" rel='nofollow'><img class="size-large wp-image-1578" title="final filter shape" src="http://alternet.us.com/wp-content/uploads/2012/01/final-filter-shape-540x394.jpg" alt="" width="540" height="394" /></a><p class="wp-caption-text">Shape (maybe) of my final resolution bandwidth filter</p></div>
<p>Ultimately, I think these graphs are great, and very encouraging.  Even if they&#8217;re a bit confusing, it&#8217;s nice to be able to put something up on the screen.  You might be wondering how I produced them?  Well, that&#8217;s the embarrassing bit.  My cheesy analyzer program (which is really just a way to test the suite of classes I&#8217;ve written for communicating with the modules) will spit out text that can be used as a CSV (comma separated values) file that can be read by Excel or Numbers.  I used Numbers to create these plots.  I think they&#8217;re log-scale plots, because the log detector module produces logarithmically increasing voltage given increasing input power, thus I used linear scaling on the Y axis.  The Y axis is the raw value from the ADC, and the X axis is the frequency.</p>
<h4>Update:</h4>
<p>I got an email back from Scotty about the graphs I got from my DDS sweeps.  The first plot, of the DDS squarer, is normal.  The reason it has that shape is best explained in the context of the schematic of that part.</p>
<div id="attachment_1586" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/02/squarer.png" rel='nofollow'><img class="size-large wp-image-1586" title="squarer" src="http://alternet.us.com/wp-content/uploads/2012/02/squarer-540x280.png" alt="" width="540" height="280" /></a><p class="wp-caption-text">DDS Squarer (section of the schematic from scotty&#39;s webpage)</p></div>
<p>Trace the signal from &#8220;OUTA,&#8221; it goes through matching network (I think!), then a crystal filter (XF1), and a logic inverter.  Basically, the inverter will &#8220;snap&#8221; on or off once the sine wave from the filter passes a threshold voltage.  Once the signal is attenuated to a certain level by the crystal filter, the inverter will no longer trigger.  This is the reason for the sharp skirts on either sides of the passband.</p>
<p>Scotty also thinks that the response plot from the RBW filter is indicative of a mismatched input or output.  I&#8217;m pretty sure it isn&#8217;t the actual filter, so I&#8217;m going to look into other sources of impedance mismatch.</p>
<h4>Update 2:</h4>
<p>Not only did Sam agree that the shape of the RBW filter is likely due to the impedance mismatch between the source and the filter, but that I could probably help the situation with an attenuator.  I inserted one (with a DC blocking capacitor) between the DDS source and the filter, the plotted it again.</p>
<div id="attachment_1589" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/02/final-filter-shape2.jpg" rel='nofollow'><img class="size-large wp-image-1589" title="final filter shape2" src="http://alternet.us.com/wp-content/uploads/2012/02/final-filter-shape2-540x394.jpg" alt="" width="540" height="394" /></a><p class="wp-caption-text">Second plot of the filter shape</p></div>
<p>My only concern now is that the filter bandwidth looks much much wider than I expected.  I don&#8217;t know what the cause of this is.  Because I really have no calibration, I don&#8217;t know how the &#8220;counts&#8221; in the ADC map to dBs of signal.  Typically, filters are defined by the points to the right and left of the center that are 3dB &#8220;down&#8221; from the center level.  However, I may be able to glean some knowledge from the datasheet.</p>
<div id="attachment_1590" class="wp-caption aligncenter" style="width: 530px"><a href="http://alternet.us.com/wp-content/uploads/2012/02/RSSI-graph.jpg" rel='nofollow'><img class="size-full wp-image-1590" title="RSSI graph" src="http://alternet.us.com/wp-content/uploads/2012/02/RSSI-graph.jpg" alt="" width="520" height="432" /></a><p class="wp-caption-text">RSSI voltage vs. input power level (from the Analog devices datasheet)</p></div>
<p>The slope is ROUGHLY(!) a half a volt per 20dB.  I&#8217;ll do a better calibration when the code is there, but for now let&#8217;s just continue on.  Once we know what the slope is, we need to map the counts on the ADC output to volts.  I&#8217;ve converted the ADC to use 3.3volt power, and it&#8217;s a 16 bit device, so there are 65,536 counts (numbers) spanning 3.3 volts, or 19859 counts per volt.  In my spreadsheet, I just made a new column that performs this conversion.  Finally, because it looks like 2 volts maps to about 10dB.  So, I added another column to the spreadsheet, this time subtracting 2 from the volts, divide by .5 and multiply by 20.</p>
<p><a href="http://alternet.us.com/wp-content/uploads/2012/02/final-filter-shape2-db.jpg" rel='nofollow'><img class="aligncenter size-large wp-image-1591" title="final filter shape2-db" src="http://alternet.us.com/wp-content/uploads/2012/02/final-filter-shape2-db-540x416.jpg" alt="" width="540" height="416" /></a></p>
<p>Unfortunately, it&#8217;s not easy to see where the 3dB points are.  Looking at the raw data, I can see that the maximum value is -13.0 dB, so the 3dB points are where -16.0 dB is crossed on each side.  On the low side, it&#8217;s 10.6989, and on the high side, it&#8217;s 10.701360.  The resulting 3dB bandwidth is .002 MHz, or 2 kHz.  This is exactly the published value.  I guess this means that it was a very successful experiment.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p>&nbsp;</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1576" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1576_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1576?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1576_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1576&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1576' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1576</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Spectrum analyzer development with ChipKit</title>
		<link>http://www.alternet.us.com/?p=1569</link>
		<comments>http://www.alternet.us.com/?p=1569#comments</comments>
		<pubDate>Tue, 24 Jan 2012 06:47:51 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1569</guid>
		<description><![CDATA[Now that I know that trying to use the BusPirate with the 74595&#8242;s is basically a non-starter, I&#8217;ve moved on to using the ChipKit.  The ChipKit is a arduino-like board with a Microchip PIC32 micro controller.  The PIC32 is, as the name would imply, a 32 bit processor, running at 80 MHz.  That&#8217;s pretty impressive, [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1572" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/chipkit-plo2.jpg" rel='nofollow'><img class="size-large wp-image-1572" title="chipkit-plo2" src="http://alternet.us.com/wp-content/uploads/2012/01/chipkit-plo2-540x437.jpg" alt="" width="540" height="437" /></a><p class="wp-caption-text">Chipkit with 74595&#39;s connected to PLO2</p></div>
<p>Now that I know that trying to use the <a href="http://dangerousprototypes.com/bus-pirate-manual/" target="_blank" rel='nofollow'>BusPirate</a> with the 74595&#8242;s is basically a <a href="http://alternet.us.com/?p=1553" target="_blank" rel='nofollow'>non-starter</a>, I&#8217;ve moved on to using the <a href="http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,892&amp;Cat=18" target="_blank" rel='nofollow'>ChipKit</a>.  The ChipKit is a arduino-like board with a Microchip PIC32 micro controller.  The PIC32 is, as the name would imply, a 32 bit processor, running at 80 MHz.  That&#8217;s pretty impressive, if you ask me.  It has a boot loader and software package that makes it more or less compatible with arduino code.  I really like that I can just hack something together without all the setting up SFRs (Special Function Registers, or the bane of embedded device programmers existence).</p>
<p><a href="http://alternet.us.com/wp-content/uploads/2012/01/basically-working-PLO2.png" rel='nofollow'><img class="aligncenter size-large wp-image-1573" title="basically working PLO2" src="http://alternet.us.com/wp-content/uploads/2012/01/basically-working-PLO2-540x225.png" alt="" width="540" height="225" /></a></p>
<p>Anyway, I&#8217;ve developed a simple &#8220;sketch&#8221; (program in arduino terminology) that accepts serial commands and executes SPI transfers using a set of pins through the 74595&#8242;s.  You can kinda see what&#8217;s happening in the logic analyzer trace above.  The top three traces are the SPI commands to the <a href="http://alternet.us.com/?page_id=941" target="_blank" rel='nofollow'>PLO</a> module.  The middle two are the serial in and out of the chip kit.  The bottom three are the SPI commands to the 74595&#8242;s.  I had to zoom out far enough that you can&#8217;t see what the serial or bottom SPI contents are, but it&#8217;s basically &#8220;$,s,A,B,C,L,DDD&#8230;&#8221; where A, B, and C are the pins for SPI Chip Select, Clock and Data, L is the length of the transfer in bytes and DDD&#8230; is the contents of the transfer.  Currently, the limiting factor is the serial communication (by that I mean UART, not SPI), but I&#8217;m only using 9600 baud in this example.  The ChipKit uses an <a href="http://www.ftdichip.com/Products/ICs/FT232R.htm" target="_blank" rel='nofollow'>FT232R</a> USB-Serial converter that is good into the megabaud.  In the future I&#8217;ll experiment with higher baud rates.</p>
<p>That&#8217;s basically, all.  I just wanted to post and say that it works.  By the way, the PLO module happily accepted its commands and tuned to 1024 MHz.  :)</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1569" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1569_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1569?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1569_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1569&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1569' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1569</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Buspirate and shift registers (a tale against publication bias)</title>
		<link>http://www.alternet.us.com/?p=1553</link>
		<comments>http://www.alternet.us.com/?p=1553#comments</comments>
		<pubDate>Fri, 20 Jan 2012 20:20:48 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>
		<category><![CDATA[Techniques]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1553</guid>
		<description><![CDATA[As with most &#8220;publications,&#8221; if you can call a blog post a publication, you&#8217;re much more likely to read about what works than what doesn&#8217;t.  This is not that kind of post. For background, I&#8217;m still working on my spectrum analyzer.  I don&#8217;t really like the current control board setup, and the windows only, BASIC [...]]]></description>
				<content:encoded><![CDATA[<p>As with most &#8220;publications,&#8221; if you can call a blog post a publication, you&#8217;re much more likely to read about what works than what doesn&#8217;t.  This is not that kind of post.</p>
<div id="attachment_1554" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/buspirate-small.jpg" rel='nofollow'><img class="size-full wp-image-1554" title="buspirate-small" src="http://alternet.us.com/wp-content/uploads/2012/01/buspirate-small.jpg" alt="" width="540" height="221" /></a><p class="wp-caption-text">Experiment setup </p></div>
<p><span id="more-1553"></span></p>
<p>For background, I&#8217;m still working on my <a href="http://alternet.us.com/?page_id=751" target="_blank" rel='nofollow'>spectrum analyzer</a>.  I don&#8217;t really like the current control board setup, and the windows only, BASIC software.  I&#8217;m investigating other options for replacing those components.  I&#8217;m thinking about using the 74595 shift registers to expand the number of control lines that I can control.</p>
<div id="attachment_1556" class="wp-caption aligncenter" style="width: 558px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/74595-diagram.png" rel='nofollow'><img class="size-full wp-image-1556" title="74595-diagram" src="http://alternet.us.com/wp-content/uploads/2012/01/74595-diagram.png" alt="" width="548" height="842" /></a><p class="wp-caption-text">74595 architectural diagram (from the fairchild data sheet)</p></div>
<p>The basic idea of the 74595 is that it&#8217;s a shift register with an extra set of output registers.  The advantage is that you can load it &#8220;behind the scenes,&#8221; then apply the output glitch-free at once.  Essentially, you can treat it like a SPI peripheral.  Load the pin values serially, then you can use the CS with the RCLK pin to load the output registers.</p>
<div id="attachment_1558" class="wp-caption aligncenter" style="width: 557px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/port-expander.png" rel='nofollow'><img class="size-full wp-image-1558" title="port-expander" src="http://alternet.us.com/wp-content/uploads/2012/01/port-expander.png" alt="" width="547" height="576" /></a><p class="wp-caption-text">Schematic for 74595 based port multiplication</p></div>
<p>The schematic I used is included above.  The basic model is that these devices can chain together.  The serial data (delayed by 8 clock cycles) appears on QH*.  This way, if we want 32 pins, we can chain 4 together.  Load 32 bits of data onto the SPI bus and pulse the CS pin high.  Hey presto, Bob&#8217;s your uncle, you&#8217;ve got data.</p>
<p>The risk of this approach is that every operation on any of those pins takes 32 clock periods on the SPI bus.  If the bus is clocked slowly, it can be a major problem.  I had assumed that, because I can use a 4 MHz clock with the bus pirate, it would be alright.  However, I hadn&#8217;t anticipated the additional overhead that the bus pirate adds by using the serial port of a PC.  Even using the binary scripting mode, you have to use 4 serial bytes for one 8-bit SPI transfer.  The problem really stems from the inconsistent and bursty nature of the serial interface.</p>
<div id="attachment_1562" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2012/01/buspirate-logic.png" rel='nofollow'><img class="size-large wp-image-1562 " title="buspirate-logic" src="http://alternet.us.com/wp-content/uploads/2012/01/buspirate-logic-540x234.png" alt="" width="540" height="234" /></a><p class="wp-caption-text">Logic analyzer capture</p></div>
<p>The bottom three traces on the above logic analyzer capture are the SPI commands to the registers.  The top three are the SPI out from some of the register pins.  Every change in the states of the top three requires a full load of the shift register.  A SPI transfer out of the register requires 3 * bits + 2.  The coefficient 3 is due to the expense of raising the clock pin, changing the data pin, and lowering the clock pin.  The extra 2 is from raising and lowering the CS pin.  Notice that it takes 1/3 of a second to execute a 40 bit SPI transfer.  To load a PLL requires several 21 bit loads, so it&#8217;s about the same.  This is unacceptable.  That&#8217;s the moral of the story.  The bus pirate simply can&#8217;t execute fast SPI commands through a shift register.  Now you know. <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1553" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1553_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1553?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1553_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1553&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1553' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1553</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>USB to RF Transceiver prototype complete!</title>
		<link>http://www.alternet.us.com/?p=1533</link>
		<comments>http://www.alternet.us.com/?p=1533#comments</comments>
		<pubDate>Mon, 19 Dec 2011 02:02:44 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1533</guid>
		<description><![CDATA[This is just a post to point you over to my new Transceiver page.  I took the work that I did on the MRF49XA transceiver, and added an Atmel AVR USB micro controller.  I prototyped is using the AT90USBKey development kit, and designed a custom PCB that includes the transceiver and an AT90USB162. I wanted [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1534" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/12/DSC_0186-small.jpg" rel='nofollow'><img class="size-full wp-image-1534" title="DSC_0186-small" src="http://alternet.us.com/wp-content/uploads/2011/12/DSC_0186-small.jpg" alt="" width="540" height="276" /></a><p class="wp-caption-text">Collection of transceivers</p></div>
<p>This is just a post to point you over to my new <a href="http://alternet.us.com/?page_id=1494" rel='nofollow'>Transceiver page</a>.  I took the work that I did on the <a href="http://alternet.us.com/?p=1036" rel='nofollow'>MRF49XA transceiver</a>, and added an Atmel AVR USB micro controller.  I prototyped is using the AT90USBKey development kit, and designed a custom PCB that includes the transceiver and an AT90USB162.</p>
<div id="attachment_1544" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/12/DSC_0192.jpg" rel='nofollow'><img class="size-full wp-image-1544" title="DSC_0192" src="http://alternet.us.com/wp-content/uploads/2011/12/DSC_0192.jpg" alt="" width="540" height="413" /></a><p class="wp-caption-text">&quot;Component side&quot; of the USB transceiver</p></div>
<p>I wanted to design the board such that all the &#8220;guts&#8221; were on the &#8220;back&#8221; side of the PCB.  The photo above shows the transceiver circuit (surrounded by a strip of track that you can use to solder a &#8220;fence&#8221; or &#8220;can&#8221; to manage RF interference), and the AT90USB162 micro controller.  This can be replaced by and 2 series USB micro controller, like the ATMega32U2 or the AT90USB82.  I recommend using the ATMeta32U2, though the first run of boards have the AT90USB162.  I&#8217;ve also included a dedicated 3.3v voltage regulator, because the built-in regulator inside the AVR doesn&#8217;t have a clearly marked current capacity, and I didn&#8217;t want to risk it.  I&#8217;ve also included every spare pin from the AVR that was practical.</p>
<div id="attachment_1545" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/12/DSC_0193.jpg" rel='nofollow'><img class="size-full wp-image-1545" title="DSC_0193" src="http://alternet.us.com/wp-content/uploads/2011/12/DSC_0193.jpg" alt="" width="540" height="399" /></a><p class="wp-caption-text">The &quot;top&quot; side of the board</p></div>
<p>The other side of the board contains all the user facing parts.  This includes the status LEDs, the SMA connector, USB port, and the boot loader and reset buttons.  My grand idea here was that I could mount a piece of plastic to the component side to protect them, while having access to all the bits I need to use.  In hindsight, this means that it&#8217;s a &#8220;double-sided load&#8221; which is harder to manufacture.  I ended up having to learn a new technique to solder the USB port.  Notice that the can of the USB port covers the pads?  It&#8217;s very difficult to solder those on.  It helps to &#8220;tin&#8221; the pads first, then set the USB port on top of them.  Luckily, the USB port has little plastic pins that keep it aligned.  When you&#8217;re pressing down on it, just hit it edges of the pads with the soldering iron, and it should solder just fine.  When that&#8217;s finished, solder the mounting tabs on the sides.</p>
<p>Also, the buttons I bought aren&#8217;t &#8220;process compatible&#8221; which means that you can&#8217;t wash the board with them installed.  To deal with this, I reflow solder the entire board, then put them in my new ultrasonic jewelry cleaner with time isopropyl alcohol and brush them with a toothbrush, finally rinse off the alcohol and dry with compressed air.  Once the board is cleaned, then I solder on the buttons.</p>
<p>Lessons (mostly) learned?  Think about how you would assemble something when you&#8217;re designing it!!  Building the board this way adds 15-20 minutes of assemble time.  Bummer.</p>
<p>PDFs of the transceiver PCB artwork.  Sorry it&#8217;s so ugly, the &#8220;high quality&#8221; rendering in Gerbv doesn&#8217;t work in mac os anymore. <a href="http://alternet.us.com/wp-content/uploads/2011/12/transceiver-top.pdf" rel='nofollow'>transceiver-top</a> <a href="http://alternet.us.com/wp-content/uploads/2011/12/transceiver-bottom.pdf" rel='nofollow'>transceiver-bottom</a></p>
<div id="attachment_1550" class="wp-caption aligncenter" style="width: 548px"><a href="http://alternet.us.com/wp-content/uploads/2011/12/transceiver-top.png" rel='nofollow'><img class="size-full wp-image-1550" title="transceiver-top" src="http://alternet.us.com/wp-content/uploads/2011/12/transceiver-top.png" alt="" width="538" height="406" /></a><p class="wp-caption-text">Component side artwork</p></div>
<div id="attachment_1549" class="wp-caption aligncenter" style="width: 548px"><a href="http://alternet.us.com/wp-content/uploads/2011/12/transceiver-bottom.png" rel='nofollow'><img class="size-full wp-image-1549" title="transceiver-bottom" src="http://alternet.us.com/wp-content/uploads/2011/12/transceiver-bottom.png" alt="" width="538" height="406" /></a><p class="wp-caption-text">User side artwork</p></div>
<p>Also, here is are the gerber and eagle design files: <a href="http://alternet.us.com/wp-content/uploads/2011/12/Archive-2.zip" rel='nofollow'>Design files</a>.</p>
<p>Work on the software is ongoing.  Click on the transceiver&#8217;s main page (link at the top) for updates.  Enjoy!<br />
<hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1533" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1533_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1533?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1533_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1533&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1533' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1533</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DFU-Programmer tips &amp; tricks</title>
		<link>http://www.alternet.us.com/?p=1489</link>
		<comments>http://www.alternet.us.com/?p=1489#comments</comments>
		<pubDate>Sat, 19 Nov 2011 23:45:07 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[atmel]]></category>
		<category><![CDATA[avr]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[Techniques]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1489</guid>
		<description><![CDATA[I recently got a Atmel AT90USBKey to play around with.  I&#8217;m going to use it to prototype a USB controller for the MRF49XA transceiver I made a while ago.  That post is still in progress, but I had trouble getting started with DFU-Programmer on the mac, so I thought I&#8217;d make a post about those problems so [...]]]></description>
				<content:encoded><![CDATA[<p>I recently got a <a href="http://www.newark.com/atmel/" target="_blank" rel='nofollow'>Atmel</a> <a href="http://us.element14.com/atmel/at90usbkey/at90usb1287-mcu-eval-kit/dp/58M3865" target="_blank" rel='nofollow'>AT90USBKey</a> to play around with.  I&#8217;m going to use it to prototype a USB controller for the <a title="RF Transceiver using the MRF49XA" href="http://alternet.us.com/?p=1036" target="_blank" rel='nofollow'>MRF49XA transceiver</a> I made a while ago.  That <a href="http://alternet.us.com/?page_id=1494" rel='nofollow'>post</a> is still in progress, but I had trouble getting started with DFU-Programmer on the mac, so I thought I&#8217;d make a post about those problems so it may help others having the same trouble.  I know that I found next-to-nothing when I was googling for it.<span id="more-1489"></span></p>
<p>I didn&#8217;t have too much trouble installing DFU-Programmer, the version included in macports works just as well as the version I compiled from source.  The first problem I encountered was a weird memory error when I tried to dump the device memory.  When I&#8217;m just starting with something, I usually don&#8217;t jump in, guns-blazing, and start erasing and flashing stuff.  I start by dumping memories, usually it&#8217;s not going to break something that already works.  In this case, I ran up against a brick wall.</p>
<pre>$ dfu-programmer at90usb162 dump --debug 5 &gt; temp
     target: at90usb162
    chip_id: 0x2ffa
  vendor_id: 0x03eb
    command: dump
      quiet: false
      debug: 5
device_type: AVR
------ command specific below ------

Request for 12288 bytes of memory failed.</pre>
<p>There is literally no reason I can think of for this error to occur, it&#8217;s not using very much memory, and I&#8217;ve never seen a malloc fail when there is a reasonable amount requested.  I&#8217;ve searched for about 2 days for the answer, and I&#8217;ve still come up with nothing.  The only hits I&#8217;ve seen are simply source listings for DFU-Programmer, where the printf for the error is!  Getting around it (temporarily, even!) is a multi-step process, and requires a device erase (which makes it just about useless):</p>
<ol>
<li>Erase: dfu-programmer at901287 erase &#8211;debug 5</li>
<li>Reboot into the boot loader (again)</li>
<li>Erase (again, because a write-protect error: see below)</li>
<li>Flash device: dfu-programmer at90usb1287 flash file.a90 &#8211;debug 5</li>
<li>Dump flash memory: dfu-programmer at90usb1287 dump &#8211;debug 5 &gt; out.dump</li>
</ol>
<p>Eventually, it worked.  I&#8217;m not at all happy with the performance of dfu-programmer on the mac.  I&#8217;m considering forking it and making a proper mac application, but I&#8217;m not sure I&#8217;m willing to support it at the moment.  Ultimately, though, it does work, it&#8217;s just not as functional as I had hoped.</p>
<p>The write-protect error I mentioned above looks like this:</p>
<pre>     target: at90usb162
    chip_id: 0x2ffa
  vendor_id: 0x03eb
    command: flash
      quiet: false
      debug: 5
device_type: AVR
------ command specific below ------
   validate: true
   hex file: USBKEY-series6-ms_df-2_0_2.a90

Device is write protected.
Error while flashing.</pre>
<p>This error is strange (I&#8217;ve never set the write protect flag!), but easy to fix.  It is common for micro controllers to clear the write-only flags when the part is erased.  That&#8217;s the solution here, just erase it:</p>
<pre>dfu-programmer at90usb162 erase</pre>
<p>Now, you should be able to program the device.  Even when I hadn&#8217;t set the protection flags (knowingly, anyway) I got the write protect error.</p>
<p>The moral of the story is that dfu-programmer doesn&#8217;t work very well on the mac, and the magic fix seems to be erasing and rebooting the part often.  Good luck!  If you have noticed something stupid I&#8217;m doing, I&#8217;m all ears.  It seems like others haven&#8217;t had these problems, so I&#8217;d love to hear if there&#8217;s something I&#8217;m doing wrong.</p>
<p>Note that the AT90USBKey was provided by Element 14 in exchange for writing this post.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1489" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1489_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1489?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1489_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1489&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1489' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1489</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Helical Quad Antenna for Weather Satellites</title>
		<link>http://www.alternet.us.com/?p=1461</link>
		<comments>http://www.alternet.us.com/?p=1461#comments</comments>
		<pubDate>Sun, 23 Oct 2011 15:58:09 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[weather]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[APRS]]></category>
		<category><![CDATA[apt]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Weather]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1461</guid>
		<description><![CDATA[It didn&#8217;t take long after my first successful attempt at receiving weather satellite broadcasts for me to realize that I would need a much better antenna.  I had been using a 1/4 wave whip with a 4-wire ground plane.  There performance out of this antenna was poor.  I read up on QFH (Quadrifiliar Helix antennas) [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1472" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1472" rel="attachment wp-att-1472" rel='nofollow'><img class="size-large wp-image-1472" title="FinishedQFH" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0063-540x684.png" alt="" width="540" height="684" /></a><p class="wp-caption-text">Finished and installed antenna!</p></div>
<p>It didn&#8217;t take long after my first successful attempt at receiving weather satellite broadcasts for me to realize that I would need a much better antenna.  I had been using a 1/4 wave whip with a 4-wire ground plane.  There performance out of this antenna was poor.  I read up on QFH (Quadrifiliar Helix antennas) <a href="http://www.digitalham.co.uk/equipment/QHA_Mk2.php" target="_blank" rel='nofollow'>from </a><a href="http://www.askrlc.co.uk/" target="_blank" rel='nofollow'>many</a> of the <a href="http://www.g4ilo.com/qfh.html" target="_blank" rel='nofollow'>high</a> <a href="http://www.gregorystrike.com/2010/05/16/quadrifilar-helix-antenna-137-mhz/" target="_blank" rel='nofollow'>quality</a> <a href="http://perso.wanadoo.es/dimoni/ant_qha.htm" target="_blank" rel='nofollow'>posts</a> <a href="http://www.qsl.net/kf4cpj/qha/" target="_blank" rel='nofollow'>from</a> <a href="http://www.frars.org.uk/cgi-bin/render.pl?pageid=1154" target="_blank" rel='nofollow'>around</a> the <a href="http://jcoppens.com/ant/qfh/index.en.php" target="_blank" rel='nofollow'>world</a>.  I took what I could from these implementations, and did my best with the supplies I had available.</p>
<p><span id="more-1461"></span>I ultimately started with whatever PVC pipe I had lying around; it ended up being 1-1/4&#8243; outside diameter garden-variety PVC.  Next, I went onto the excellent <a href="http://jcoppens.com/ant/qfh/calc.en.php" target="_blank" rel='nofollow'>QFH antenna calculator</a>.  This site already has the defaults for a good 137 MHz antenna, and I didn&#8217;t change them.  Next I measured the diameter of my pipe (in mm) and printed out the drilling templates using their drilling template generator.</p>
<div id="attachment_1462" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1462" rel="attachment wp-att-1462" rel='nofollow'><img class="size-full wp-image-1462" title="DSC_0016" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0016.png" alt="" width="540" height="456" /></a><p class="wp-caption-text">Drilling template</p></div>
<p>Pick a point for the top line of the template and scribe a line perfectly parallel with the axis of the pipe.  This is easy if you use the &#8220;estes door jamb trick.&#8221;  For those that haven&#8217;t built a model rocket recently, you put the pipe in a door jamb crease.  This right-angle will make the pipe perfectly square and you can mark a line.  Also, you can use a piece of angle stock, as <a href="http://modelrocketbuilding.blogspot.com/2011/05/estes-saturn-v-build-part-4-tube.html" target="_blank" rel='nofollow'>this guy did</a>.  Make sure that all your template strips line up with this line.  Next mark the holes&#8217; letter with pen on the pipe.  This is your reference for where the wires need to go.  Finally, drill the holes.  I only drilled the top and bottom holes, and I didn&#8217;t make them as big as the template said.  The template (and the calculator) suggest using 3/8&#8243; soft copper tubing, but I didn&#8217;t have any of that around, and it costs a lot more than the #10 ground wire that I used.</p>
<div id="attachment_1463" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1463" rel="attachment wp-att-1463" rel='nofollow'><img class="size-full wp-image-1463" title="DSC_0021" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0021.png" alt="" width="540" height="300" /></a><p class="wp-caption-text">Spacers installed</p></div>
<p>I knew I would need spacers half-way through the helical loops, but I didn&#8217;t have any of the tubing that most people were using, so I used some acrylic sheet.  I just took the width of the loop and marked those points along a line.  In the center I cut holes for the mast.  I trimmed off the edges with a (mostly) straight line so it tapers to the end.  At the ends, I made little notches to hold the wire, and drilled a hole for some unwaxed dental floss.</p>
<div id="attachment_1465" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1465" rel="attachment wp-att-1465" rel='nofollow'><img class="size-full wp-image-1465" title="DSC_0046" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0046.png" alt="" width="540" height="388" /></a><p class="wp-caption-text">Loops held in with floss</p></div>
<p>Once I made a simple knot with the floss, I hit it with some superglue an called it good.  I don&#8217;t have any pictures from forming the loops.  This is an often ignored part of building one of these antennas.  I understand why so many people leave that part out, though.  It&#8217;s amazingly stressful, and easy to forget about documentation.  To do it, I started with long pieces of the copper wire.  Use more than you think you need.  Once your wire is cut, measure to the center.  Measure out from the center one loop radius on each side and mark it with sharpie.  Bend one side of the wire as sharply as you can, and slide the longer side of the loop through your lower pair of holes.  With what will be the center of the loop in the pipe, bend the other side of the loop.  Carefully twist the helix, meeting the spacers on the way.  It&#8217;s probably not a bad idea to temporarily (make sure the copper can be adjusted) attach the wires to the spacer.  Measure from the mast one loop radius and bend the wire toward the mast square with the upper holes.  Cut the extra wire so that it fits inside the pipe with a little room to spare.  Once you&#8217;re sure it&#8217;s the right length, bend the wire 45 degrees toward the other loop.  Do this for each side of each loop.</p>
<div id="attachment_1467" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1467" rel="attachment wp-att-1467" rel='nofollow'><img class="size-full wp-image-1467" title="DSC_0049" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0049.png" alt="" width="540" height="442" /></a><p class="wp-caption-text">Wiring of the feed point</p></div>
<p>The picture above is skipping ahead a little, but this way you can see what I mean about bending the wires inside the pipe.  As you can tell, I had a very hard time soldering the feed point.  The copper ground wire is a hard to solder with an iron because it conducts heat readily, and has a lot of thermal mass.  I usually use a torch to solder it.  In this case the solder point is inside the tube almost an inch.  The first time I tried to solder it, I set the end of the tube on fire.  Later, I insulated the coax and tube with aluminum foil.  Though the foil provided sufficient protection, I still charred the sides a bit.  The cable was adequately protected.</p>
<div id="attachment_1466" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1466" rel="attachment wp-att-1466" rel='nofollow'><img class="size-full wp-image-1466" title="DSC_0048" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0048.png" alt="" width="540" height="412" /></a><p class="wp-caption-text">Balun</p></div>
<p>Though the feed for this antenna is technically 50 ohms impedance, it&#8217;s a balanced design.  Fundamentally, coax is unbalanced.  By coiling the cable around the mast a few times you&#8217;re able to implement a simple balun.  I&#8217;m not sure how many times to do it, I&#8217;ve seen different numbers different places, so I chose 6; because, why not?  It seems to work fine.</p>
<div id="attachment_1464" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1464" rel="attachment wp-att-1464" rel='nofollow'><img class="size-full wp-image-1464" title="DSC_0035" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0035.png" alt="" width="540" height="865" /></a><p class="wp-caption-text">finished antenna</p></div>
<p>This is the antenna all finished up.  I&#8217;ve received several quality satellite images with it so far, but this is certainly not where I&#8217;m going to keep it.  First of all, my house is to the north-west of it, and seriously degrades the signal, secondly my wife wouldn&#8217;t like that very much, I don&#8217;t think.</p>
<div id="attachment_1468" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1468" rel="attachment wp-att-1468" rel='nofollow'><img class="size-full wp-image-1468" title="DSC_0051" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0051.png" alt="" width="540" height="431" /></a><p class="wp-caption-text">Spider-proofing</p></div>
<p>I decided to keep it outside (some people put them in their attic), so I had to take some measures to spider and wasp proof the mast.  I epoxied all the openings for wire and cable at the top of the antenna, including capping the pipe, then I stuffed the bottom with some pipe-wrap foam.</p>
<div id="attachment_1470" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1470" rel="attachment wp-att-1470" rel='nofollow'><img class="size-full wp-image-1470" title="DSC_0056" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0056.png" alt="" width="540" height="567" /></a><p class="wp-caption-text">Installing on the barn</p></div>
<p>I ended up settling on the barn roof as a home for the antenna.  There was a small gap in the plywood below the metal roof cap that I think I can exploit for the feedline.  I unscrewed a section of capping, found an existing hole in the tar-paper backing and went to work affixing the tripod.</p>
<div id="attachment_1469" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1469" rel="attachment wp-att-1469" rel='nofollow'><img class="size-full wp-image-1469" title="DSC_0054" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0054.png" alt="" width="540" height="358" /></a><p class="wp-caption-text">Feedline routing</p></div>
<p>It&#8217;s really important to think about water infiltration whenever you do anything to a roof, especially in Oregon.  For a while, I did some contract work installing antennas for a cell phone company, and we installed outdoor antennas on almost any kind of roof you can think of.  For metal roofs like these, the easiest way to make it water-tight is to clean the metal surface off, then cover the place where you&#8217;re going to screw the mast to with silicon sealant and screw through it.</p>
<div id="attachment_1471" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1471" rel="attachment wp-att-1471" rel='nofollow'><img class="size-large wp-image-1471" title="DSC_0061" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0061-540x815.png" alt="" width="540" height="815" /></a><p class="wp-caption-text">Mounting the tripod</p></div>
<p>This way, water doesn&#8217;t have a chance to wick through the roof through the screw threads (or that&#8217;s the idea&#8230;  I explicitly disclaim any responsibility for roof damage if you follow these instructions).</p>
<div id="attachment_1473" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1473" title="DSC_0066" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0066.png" alt="" width="540" height="294" /><p class="wp-caption-text">Feedline inside the barn</p></div>
<p>Here, you can see the ultimate goal:  Antenna on the roof of the barn and feed line inside!</p>
<div id="attachment_1474" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1474" title="DSC_0070" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0070.png" alt="" width="540" height="406" /><p class="wp-caption-text">Receiver ready for the next NOAA satellite pass!</p></div>
<p>Finally, I screwed the receiver to a joist and routed some wires.  I don&#8217;t know what I would do without my insulated staples! <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1461" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1461_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1461?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1461_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1461&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1461' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1461</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Homebrew bubble counter</title>
		<link>http://www.alternet.us.com/?p=1388</link>
		<comments>http://www.alternet.us.com/?p=1388#comments</comments>
		<pubDate>Thu, 20 Oct 2011 03:40:08 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[homebrew]]></category>
		<category><![CDATA[pressure]]></category>
		<category><![CDATA[profiling]]></category>
		<category><![CDATA[Serial]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Techniques]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1388</guid>
		<description><![CDATA[For a while now, my friends and I have been brewing beer at my house.  I was inspired by an old Sparkfun tutorial about a bubble logger for Nate&#8217;s terrible wine.  I figured that while logging bubbles is interesting and all, wouldn&#8217;t it be more useful to have real-time information on the fermentation process?  I basically [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1391" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?p=1388" rel='nofollow'><img class="size-full wp-image-1391 " title="bubble_counter" src="http://alternet.us.com/wp-content/uploads/2011/10/bubble_counter.jpg" alt="" width="540" height="957" /></a><p class="wp-caption-text">Counting bubbles during secondary fermentation</p></div>
<p>For a while now, my friends and I have been brewing beer at my house.  I was inspired by an old <a href="http://www.sparkfun.com/tutorials/131" target="_blank" rel='nofollow'>Sparkfun tutorial</a> about a bubble logger for Nate&#8217;s terrible wine.  I figured that while logging bubbles is interesting and all, wouldn&#8217;t it be more useful to have real-time information on the fermentation process?  I basically copied the optical gate method of counting bubbles, added a sensitive pressure sensor, and an AVR development board (Yes, Arwen, that&#8217;s your old TekBots board! <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ). <span id="more-1388"></span></p>
<p><center><iframe src="http://www.youtube.com/embed/bwRa1jvgRxE?rel=0&amp;hd=1" frameborder="0" width="560" height="315"></iframe></center>Just like the Sparkfun tutorial, I used an IR photogate sensor on an S-shaped airlock.  One thing that I thought was really interesting is that the water in the airlock doesn&#8217;t block the IR path, it actually improves it.  I ended up needing a potentiometer to adjust the LED brightness on the photogate, this is because it has to be just the right brightness to detect bubble transitions.</p>
<div id="attachment_1442" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1442" title="DSC_0042" src="http://alternet.us.com/wp-content/uploads/2011/10/DSC_0042.png" alt="" width="540" height="358" /><p class="wp-caption-text">Counter closeup</p></div>
<p>The programming on the microcontroller was really simple.  All it does is keep a clock, and when there is a rising edge of photogate signal (bubble passed) it prints the time and a bubble count to the serial port:</p>
<pre>01:20:16:16,01646
01:20:16:18,01647
01:20:16:20,01648
01:20:16:22,01649
01:20:16:24,01650
01:20:16:26,01651
01:20:16:28,01652
01:20:16:30,01653
01:20:16:32,01654
01:20:16:34,01655</pre>
<p>I chose to use whole seconds as the time step.  That was certainly an oversight.  When I designed the software, the brew was in second fermentation.  There was a bubble once every 20 seconds or so.  I thought &#8220;It couldn&#8217;t be that much more during primary fermentation, right?&#8221;  Wrong.  During the beginning of primary fermentation, there can be 3 or 4 bubbles a second.  I made up for this oversight in the Ruby script I wrote on the server:</p>
<pre># Get an interval from the last to this bubble in seconds
interval = seconds - last_record_seconds
last_record_seconds = seconds

if interval == 0
	bubbles_per_second += 1
else
# if, in the last second, we counted more than one bubble
# find the frequency by multiplying the bubbles per second
# to bubbles per hour
	if bubbles_per_second &gt; 0
		frequency = bubbles_per_second * 3600
		bubbles_per_second = 0
	else
	# Convert the interval into fractions of an hour
		interval = interval / 3600.0
		# Convert the interval to bubbles per hour
		frequency = 1.0 / interval
	end
		printf("%f bubbles per hour\n", frequency)
		RRD.update(rrd_name, "N:#{frequency.to_s}")</pre>
<p>I&#8217;ve left out the parts where I initialize the serial port and the <a href="http://oss.oetiker.ch/rrdtool/" target="_blank" rel='nofollow'>RRD</a> database and parse the messages.  I&#8217;ve attached the whole script, including the script that generates the graph, at the end of the post.</p>
<div id="attachment_1446" class="wp-caption aligncenter" style="width: 541px"><img class="size-full wp-image-1446" title="bubbles-chocolate coffee porter" src="http://alternet.us.com/wp-content/uploads/2011/10/bubbles-chocolate-coffee-porter.png" alt="" width="531" height="524" /><p class="wp-caption-text">Chocolate porter brewing record (primary fermentation)</p></div>
<p>Here is the bubble record from one of our beers.  I was very surprised by the 14,000 bubbles/hour rate achieved a half-day after pitching the yeast.  I adjusted the graph many times to make everything visible.  I absolutely had to use a logarithmic scale on the value access, there is just no other way to be able to see a 14k+ value while still being able to see where 60 bubbles/hour is (this is about when the brewing is finished).  These graphs are always updated, and are available <a href="http://alternet.us.com/other/bubbles.png" target="_blank" rel='nofollow'>online</a>.  Of course that is only meaningful when there&#8217;s a brew going at the moment!</p>
<div id="attachment_1450" class="wp-caption aligncenter" style="width: 550px"><img class="size-large wp-image-1450" title="pressure_sensor" src="http://alternet.us.com/wp-content/uploads/2011/10/pressure_sensor-540x473.jpg" alt="" width="540" height="473" /><p class="wp-caption-text">Sensitive pressure sensor</p></div>
<p>I had grand plans of adding a pressure sensor to try and measure the volume of co2 escaping out of the airlock.  I figured that if I subtracted the pressure after the bubble from the pressure before I could use the ideal gas law and measure the moles of co2 that escaped.  This was all fine and good during secondary fermentation (when I first tried it).</p>
<div id="attachment_1451" class="wp-caption aligncenter" style="width: 330px"><img class="size-full wp-image-1451" title="NewFile9" src="http://alternet.us.com/wp-content/uploads/2011/10/NewFile9.bmp" alt="" width="320" height="234" /><p class="wp-caption-text">Pressure delta during slow fermentation</p></div>
<p style="text-align: left;">During slow fermentation, when bubbles happen less than once per 15 seconds or so, it&#8217;s easy to see and measure the pressure difference before and after the bubble.  In the image above, there is about 40 mV of swing before and after.  The time represented in this image is a full minute, so you can see the slow buildup of pressure.</p>
<div id="attachment_1452" class="wp-caption aligncenter" style="width: 330px"><img class="size-full wp-image-1452" title="NewFile13" src="http://alternet.us.com/wp-content/uploads/2011/10/NewFile13.bmp" alt="" width="320" height="234" /><p class="wp-caption-text">Pressure measurement during fast fermentation</p></div>
<p style="text-align: left;">During very fast fermentation, on the other hand, individual bubbles don&#8217;t contribute to much difference in pressure.  In the image above, you can see general trends of pressure.  Sometimes, i assume, due to surface tension there aren&#8217;t bubbles for a while.  When pressure builds up to a sufficient level bubbles begin.  The pressure drops again and the cycle repeats.  I&#8217;m not really sure how much I can do with this data.  The time represented in this graph is 12 seconds, and the bubbles per hour is about 18,000 bubbles per hour (5 * 3600).</p>
<div id="attachment_1453" class="wp-caption aligncenter" style="width: 330px"><img class="size-full wp-image-1453" title="NewFile11" src="http://alternet.us.com/wp-content/uploads/2011/10/NewFile11.bmp" alt="" width="320" height="234" /><p class="wp-caption-text">Close up of a bubble during fast fermentation</p></div>
<p style="text-align: left;">This is just a close up of a single bubble.  There isn&#8217;t really any measurable difference in pressure before and after the bubble.  Ultimately, the pressure measurement stuff is on hold for the moment.  If someone reads this that&#8217;s really good with the ideal gas law has ideas let me know!</p>
<p>The next step for me is to figure out an elegant way to support many brews.  We&#8217;ve got a wine, apple cider, and a beer going at the moment, so I would like to have 3 channels.  Oh well, another project for another day.</p>
<h4>Supporting files:</h4>
<p><a href="http://alternet.us.com/wp-content/uploads/2011/10/bubble-counter-firmware.zip" rel='nofollow'>firmware</a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2011/10/ruby-script.zip" rel='nofollow'>ruby script</a></p>
<p><a href="http://web.engr.oregonstate.edu/~traylor/ece473/pdfs/mega128.1_UG.pdf" target="_blank" rel='nofollow'>Development board schematic</a></p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1388" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1388_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1388?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1388_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1388&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1388' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1388</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Receiving weather satellite images with Softrock</title>
		<link>http://www.alternet.us.com/?p=1398</link>
		<comments>http://www.alternet.us.com/?p=1398#comments</comments>
		<pubDate>Wed, 19 Oct 2011 22:13:00 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[oregon]]></category>
		<category><![CDATA[Photos]]></category>
		<category><![CDATA[satellite]]></category>
		<category><![CDATA[SDR]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Weather]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1398</guid>
		<description><![CDATA[The National Oceanic and Atmospheric Administration (NOAA) manages a few satellites in low earth orbit.  There are three actively transmitting APT signals at the moment, NOAA15, 17, and 18.  Each of these satellites passes overhead a few times a day.  I've been interested in learning how to receive their signals for a while now, and I've finally succeeded!]]></description>
				<content:encoded><![CDATA[<div id="attachment_1400" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?p=1398" rel='nofollow'><img class="size-full wp-image-1400     " title="NOAA 18 at 16 Oct 2011 21:17:42 GMT" src="http://alternet.us.com/wp-content/uploads/2011/10/noaa18-processed-small.jpg" alt="" width="540" height="417" /></a><p class="wp-caption-text">One of my first NOAA APT satellite images! (click to learn more)</p></div>
<p>The National Oceanic and Atmospheric Administration (NOAA) manages a <a href="http://noaasis.noaa.gov/NOAASIS/ml/genlsatl.html" target="_blank" rel='nofollow'>few satellites</a> in low earth orbit.  There are three actively transmitting <a href="http://www.geo-web.org.uk/apt.html" target="_blank" rel='nofollow'>APT</a> signals at the moment, NOAA15, 17, and 18.  Each of these satellites passes overhead a few times a day.  I&#8217;ve been interested in learning how to receive their signals for a while now, and I&#8217;ve finally succeeded!</p>
<p><span id="more-1398"></span></p>
<p>A bit ago, I bought a &#8220;<a href="http://www.wb5rvz.com/sdr/" target="_blank" rel='nofollow'>SoftRock</a>&#8221; <a href="http://en.wikipedia.org/wiki/Software-defined_radio" target="_blank" rel='nofollow'>SDR</a> (Software Defined Radio, read the excellent 3-part article by Bob Larkin at the <a href="http://www.arrl.org/software-defined-radio" target="_blank" rel='nofollow'>ARRL site</a>.) receiver kit from <a href="http://kb9yig.com/" target="_blank" rel='nofollow'>Tony Parks</a>.  (A note about his site, he puts a few kits up for sale a few times a month, so he&#8217;s almost always sold out.)  I think SDR is really, really interesting.  I don&#8217;t want to get too bogged down in the details of it, because it&#8217;s not the point of this post, but I&#8217;m going to briefly discuss it.  Basically, the idea is that you want to have some minimum amount of electronics to deal with the antenna; letting your computer handle the rest.  This can take a variety of forms, but the simplest is the QSD, or Quadrature Sampling Detector.</p>
<div id="attachment_1414" class="wp-caption aligncenter" style="width: 551px"><a href="http://www.flexradio.com/Data/Doc/qex1.pdf" rel='nofollow'><img class="size-full wp-image-1414" title="tayloe" src="http://alternet.us.com/wp-content/uploads/2011/10/tayloe.png" alt="" width="541" height="343" /></a><p class="wp-caption-text">Source: Gerald Youngblood&#39;s article &quot;A Software-Defined Radio for the Masses, Part 1.&quot; Click image for source</p></div>
<p>It sounds complex, but it&#8217;s quite like using a strobe light to look at a spinning wheel.  The bright light of the strobe &#8220;samples&#8221; the world at a given interval.  If it strobe rate matches the speed of the wheel, the wheel appears still.  Stretching the analogy a bit further, imagine that information is written on the wheel.  Using the strobe you can read it, even if it&#8217;s spinning.  While that is an awful analogy, but the idea is that we can sample the radio signal at (nearly) the same frequency as the carrier of our desired signal.  When we do this, the signal we want magically appears at the output.  If we&#8217;re using AM (or its derivatives such as <a href="http://en.wikipedia.org/wiki/Single-sideband_modulation" target="_blank" rel='nofollow'>LSB or USB</a>) we can even listen to it directly.  It only gets a bit more complex when we consider the quadrature part.  Quadrature just means &#8220;90 degrees out of phase.&#8221;  Using another copy of the radio signal, and a sampling clock in quadrature, we can cancel out some noise and interfering signals.  Sorry for the tangent, if you read this far (without falling asleep), I recommend you read the linked articles at the top of this paragraph.  The math isn&#8217;t too hard, and it&#8217;s sooo powerful!</p>
<div class="wp-caption aligncenter" style="width: 501px"><a href="http://www.itsrainingelephants.com/tag/softrock/" rel='nofollow'><img title="softrock" src="http://www.itsrainingelephants.com/wp-content/uploads/2010/07/softrock-rx-ensemble-1.jpg" alt="" width="491" height="369" /></a><p class="wp-caption-text">Softrock Ensemble Receiver (click image for source)</p></div>
<p>This isn&#8217;t an image of my SoftRock, it&#8217;s a slightly different version, but I don&#8217;t have an image handy.  It&#8217;s a really easy kit to build, and it&#8217;s fairly inexpensive.  More than that, it&#8217;s really easy to use.  Once it&#8217;s all setup, you just attach it to your computer, power it, and install the antenna!</p>
<p style="text-align: left;"><a href="http://alternet.us.com/wp-content/uploads/2011/10/noaa15.png" rel='nofollow'><img class="aligncenter size-large wp-image-1409" title="noaa15" src="http://alternet.us.com/wp-content/uploads/2011/10/noaa15-600x344.png" alt="" width="600" height="344" /></a></p>
<p>Once you&#8217;ve attached the receiver hardware to your computer, you need some software to use it.  This is an image I took of a very well written SDR program on the Mac called <a href="http://dl2sdr.homepage.t-online.de/" target="_blank" rel='nofollow'>DSP Radio</a>.  On the left side of the spectrum window, there is the live radio spectrum coming from the satellite.  The green box around it represents the bandwidth of my software radio receiver.  In a traditional radio, this bandwidth would be set by a filter circuit.  Most communication radios only have about 15 kHz of bandwidth.  This makes them unable to properly receive satellite weather images.  Traditionally, you would have to build or buy a specially-built satellite receiver.  With SDR, I can move a slider to scale the bandwidth way, way up!  In this case, I&#8217;m using about 37 kHz of bandwidth!  Notice that there&#8217;s all this empty space on the right, this is radio spectrum that I&#8217;m receiving, but there&#8217;s nothing there.  Maybe you can notice the shadow of the satellite data on the right; this is an &#8220;image.&#8221;  These images are the bane of all radio designers.  The true test of a receiver (other than sensitivity) is how well these images are suppressed.  In this case, they&#8217;re suppressed rather well, notice how bright the lines are on the left compared to the right.</p>
<div id="attachment_1417" class="wp-caption aligncenter" style="width: 551px"><img class="size-full wp-image-1417" title="flow" src="http://alternet.us.com/wp-content/uploads/2011/10/flow.png" alt="" width="541" height="184" /><p class="wp-caption-text">Signal flow from RF to weather image</p></div>
<p>The DSP Radio program takes the signals from the Softrock through the audio input of the computer.  When you have something tuned in through its interface the demodulated signal appears at the audio output.  I&#8217;ve been recording these signals as well as passing them to another program called <a href="http://www.wxtoimg.com/" target="_blank" rel='nofollow'>WXtoIMG</a>.  This program is not great, I&#8217;ll be honest.  It&#8217;s barely maintained, and you can tell it&#8217;s an ugly cross-platform mess.  To even get it to work is tricky.  But, what it does, it does well.  The image at the head of this post was generated using it.  When I made that image, I literally had to connect the audio out of one computer to the audio in of another.  I&#8217;m not sure how I&#8217;m going to get around that issue.  It can accept data in the form of wav files, provided that they&#8217;re linear PCM sampled at 11,025 Hz with at least 16 bit samples.  The problem is that the nice political boundaries, lat/lon lines and ground image comes from the program.  It does this by computing the location of the satellite and where on the earth its photographing.  It has to decode the audio in real time for this to work, which means that I can&#8217;t use an audio file.  For you to play around with, if you wish, I&#8217;ve included a sample wav file.  It starts before the satellite pass and ends after, so if begins and ends with static.</p>
<p><a href="http://alternet.us.com/wp-content/uploads/2011/10/NOAA15-baseband.wav" rel='nofollow'>NOAA15-baseband.wav</a> (large file warning: 28 MB)</p>
<p>The included audio can be used to create the image below.  I used WXtoImg to generate it, though the open source <a href="http://5b4az.chronos.org.uk/pages/apt.html" target="_blank" rel='nofollow'>WXAPT</a> could be used under Linux.  This image was taken when the satellite was traveling south-north, so I had to flip it vertically and horizontally.  On the right side of the image is the A channel, which is visible light, and the left side is the B channel, infrared.  Normally, these channels are reversed left-to-right.  The stripes and color bars help the decoder line up the image and adjust brightness, contrast, and gamma. (<a href="http://alternet.us.com/wp-content/uploads/2011/10/NOAA15-raw1.png" target="_blank" rel='nofollow'>Right-click here to download full-size image: 2080 x 1260 pixels</a>)</p>
<div id="attachment_1430" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/10/NOAA15-raw1.png" rel='nofollow'><img class="size-large wp-image-1430" title="NOAA15-raw" src="http://alternet.us.com/wp-content/uploads/2011/10/NOAA15-raw1-540x327.png" alt="" width="540" height="327" /></a><p class="wp-caption-text">(lightly) processed image from NOAA 15 audio file</p></div>
<p>My next step is to write some shell scripts on a Linux box to automate this whole process.  My goal is to have a page that has the latest satellite image and an archive available at all time.  But first, I have to write a post about the antenna I built to receive these signals.  Stay tuned!</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1398" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1398_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1398?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1398_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1398&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1398' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1398</wfw:commentRss>
		<slash:comments>22</slash:comments>
<enclosure url="http://alternet.us.com/wp-content/uploads/2011/10/NOAA15-baseband.wav" length="27843962" type="audio/wav" />
		</item>
		<item>
		<title>Softrock Ensemble VHF tuning</title>
		<link>http://www.alternet.us.com/?p=1378</link>
		<comments>http://www.alternet.us.com/?p=1378#comments</comments>
		<pubDate>Sat, 17 Sep 2011 06:27:36 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1378</guid>
		<description><![CDATA[This post has a specific audience in mind, so unless you have, or are interested in a Softrock Ensemble VHF receiver, you&#8217;ll be bored. You&#8217;ve been warned There are a few radio bands that are interesting near the ham 2 meter band.  NOAA weather satellites send images using APT at and around 137 Mhz and [...]]]></description>
				<content:encoded><![CDATA[<p>This post has a specific audience in mind, so unless you have, or are interested in a Softrock Ensemble VHF receiver, you&#8217;ll be bored. You&#8217;ve been warned <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   There are a few radio bands that are interesting near the ham 2 meter band.  NOAA weather satellites send images using APT at and around 137 Mhz and there are weather broadcasts at 162.5.  There was a question on the mailing list for the Softrock about whether it could be tuned to receive signals in all of these bands without re-tuning.  This post is simply documenting my experimentation with the front end.  I&#8217;m sampling the signal using an oscilloscope probe with the 10x setting and inserting the signal from the tracking generator connected to the antenna port.  It&#8217;s not really possible to measure the precise insertion loss absolutely, so I&#8217;ll measure it relative to the baseline of front end tuned for 2 meters.</p>
<p><div id="attachment_1384" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1384" title="softrock-2" src="http://alternet.us.com/wp-content/uploads/2011/09/softrock-2.jpg" alt="" width="540" height="247" /><p class="wp-caption-text">Tuned for 2 meters</p></div><br />
<span id="more-1378"></span></p>
<p>To begin the testing, I tuned as best I can to the 2M band.  The filter shape isn&#8217;t as flat as I would like, but it&#8217;s the best I could do.</p>
<div id="attachment_1385" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1385" title="softrock-3" src="http://alternet.us.com/wp-content/uploads/2011/09/softrock-3.jpg" alt="" width="540" height="238" /><p class="wp-caption-text">Tuned for NOAA APT transmissions</p></div>
<p>It was a little easier to tune the front end for NOAA APT transmissions.  I got a better filter shape, and about 5 dB better average insertion loss.</p>
<div id="attachment_1386" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1386" title="softrock-4" src="http://alternet.us.com/wp-content/uploads/2011/09/softrock-4.jpg" alt="" width="540" height="248" /><p class="wp-caption-text">Tuned for weather radio</p></div>
<p>Tuning for weather radio wasn&#8217;t that bad either.  The average insertion loss is about equal to what I got for 2 meters.</p>
<div id="attachment_1383" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1383" title="softrock-1" src="http://alternet.us.com/wp-content/uploads/2011/09/softrock-1.jpg" alt="" width="540" height="247" /><p class="wp-caption-text">Compromise tuning</p></div>
<p>Finally, if you&#8217;re interesting in receiving signals from throughout the band, it&#8217;s possible strike a compromise.  You&#8217;re just about always going to get a peaked response, so I placed the lower peak at 137 Mhz and the upper at 165.  The 2 meter ham band is somewhere in the middle.  The peaks at 137 and 165 are 5-10 dB below the baseline.  The 2 meter band is a little worse at about 20 dB below the baseline.  So, it&#8217;s possible to get a somewhat broadband response at the fronted at the expense of some signal strength.  It may be possible to mitigate some of this if you use a low noise preamplifier.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1378" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1378_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1378?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1378_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1378&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1378' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1378</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKY65116 Amplifier</title>
		<link>http://www.alternet.us.com/?p=1340</link>
		<comments>http://www.alternet.us.com/?p=1340#comments</comments>
		<pubDate>Fri, 16 Sep 2011 03:03:54 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Mods]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1340</guid>
		<description><![CDATA[I&#8217;ve finally gotten around to assembling a breakout board for the Skyworks SKY65116 UHF amplifier.  It&#8217;s really amazing how the state of the art in RF ICs has advanced.  They can still be on the expensive side ($6 at digikey), but still relatively cheap when you consider the cost of all the support parts that it takes to [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1332" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?attachment_id=1332" rel="attachment wp-att-1332" rel='nofollow'><img class="size-full wp-image-1332" title="QFN-7" src="http://alternet.us.com/wp-content/uploads/2011/07/QFN-7.jpg" alt="" width="540" height="420" /></a><p class="wp-caption-text">Amplifier breakout board</p></div>
<p>I&#8217;ve finally gotten around to assembling a breakout board for the <a href="http://www.skyworksinc.com/" target="_blank" rel='nofollow'>Skyworks</a> <a href="http://www.skyworksinc.com/uploads/documents/200510H.pdf" target="_blank" rel='nofollow'>SKY65116</a> UHF amplifier.  It&#8217;s really amazing how the state of the art in RF ICs has advanced.  They can still be on the expensive side ($6 at <a href="http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&amp;name=863-1072-1-ND" target="_blank" rel='nofollow'>digikey</a>), but still relatively cheap when you consider the cost of all the support parts that it takes to build an amplifier from a RF transistor.  This particular amplifier has a 50 ohm input and output, and 35dB of gain.  It works from 390Mhz to 500Mhz, which means its perfect for the 70cm ham band.  The breakout board is stupid simple, copied directly from the evaluation board schematic in the datasheet,  but I&#8217;ll include schematic and design files anyway.<span id="more-1340"></span></p>
<div id="attachment_1345" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1345" title="UHF-amp-source" src="http://alternet.us.com/wp-content/uploads/2011/09/UHF-amp-2.jpg" alt="" width="540" height="441" /><p class="wp-caption-text">Source for the amplifier test</p></div>
<p>This is the video transmitter from my first person <a title="Kadet video downlink" href="http://alternet.us.com/?p=620" rel='nofollow'>video</a> <a title="First video (somewhat) successful!" href="http://alternet.us.com/?p=645" rel='nofollow'>experiments</a>.  The performance was pretty terrible, even after I tested it using <a title="New video link antenna" href="http://alternet.us.com/?p=650" rel='nofollow'>different receive antennas</a>.  I&#8217;ve even purchased a <a href="http://www.allelectronics.com/make-a-store/item/AMP-612/12DB-SINGLE-OUTPUT-VIDEO-AMPLIFIER/1.html" target="_blank" rel='nofollow'>receive-side amplifier</a> to try, but haven&#8217;t done anything with it yet.  Anyway, the transmitter had a built-in antenna, so I wasn&#8217;t sure how I was going to add an amplifier.  I ended up assuming that the output would be roughly compatible with an 50 ohm load.  I unsoldered the antenna and installed a bit of thin coax to the antenna port.  I scratched off some of the solder mask on either side of the board near the antenna port to make sure I had a solid electrical and mechanical ground connection.  The transmitter is pretty crappy, and the prices you can find online are <a href="http://scexpress.saleamp.com/store/434-mhz-atv-am-video-transmitter" target="_blank" rel='nofollow'>COMPLETELY RIDICULOUS</a>!  I wouldn&#8217;t pay more than $20 for it.  I think that&#8217;s about what I paid, it was on clearance.</p>
<div id="attachment_1346" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1346 " title="UHF-amp-testing" src="http://alternet.us.com/wp-content/uploads/2011/09/UHF-amp-1.jpg" alt="Amplifier test configuration" width="540" height="432" /><p class="wp-caption-text">Testing configuration</p></div>
<p>This image is the testing configuration I used.  The camera, power board and transmitter are in the top of the image, and are exactly as I used them for first person video.  The added coax can be seen going into the amplifier on the left.  Coming out of the amplifier is the cable going to the oscilloscope or spectrum analyzer.  The amplifier wasn&#8217;t inline all the time, though.  I measured the output power from the transmitter at about 25mV into 50 ohms using the oscilloscope.  Using Minicircuits&#8217; <a href="http://www.minicircuits.com/pages/pdfs/dg03-110.pdf" target="_blank" rel='nofollow'>handy table</a> that comes out to be about .01 mW, or -19 dBm. A measurement from a spectrum analyzer verifies the -19 dBm measurement from the o&#8217;scope (see below for image).</p>
<div class="wp-caption aligncenter" style="width: 510px"><a href="http://en.wikipedia.org/wiki/File:Ntsc_channel.svg" rel='nofollow'><img title="modulated_NTSC" src="http://upload.wikimedia.org/wikipedia/commons/thumb/f/fd/Ntsc_channel.svg/500px-Ntsc_channel.svg.png" alt="" width="500" height="306" /></a><p class="wp-caption-text">NTSC modulated spectrum (click for source)</p></div>
<p>I&#8217;ve attached a very nice graphic from wikipedia that describes the components of modulated NTSC video.  There is something happening here that isn&#8217;t obvious, so I&#8217;ll explain it.  In the spectrum analyzer image, below, you&#8217;ll notice that I&#8217;ve labeled the luminance and chrominance carriers.  The luminance carrier is really the main carrier for the entire signal.  It comes from black and white TV era.  There are significant DC components in NTSC video, so this carrier is very important.  Notice, in the graphic above, that the luma carrier is 1.25 Mhz above the lower edge of the band.  This is because NTSC video uses what&#8217;s called <a href="http://en.wikipedia.org/wiki/Single-sideband_modulation#Vestigial_sideband_.28VSB.29" rel='nofollow'>VSB, or vestigial side band</a>, which means that the lower half of the signal is attenuated.  This reduces the spectrum necessary to transmit video.  The choice was made to include the carrier and 1 Mhz with of lower sideband while removing the rest.  Later, when color TV was added, they needed a way to encode color.  This is done by adding another carrier and encoding hue and saturation by modulating the phase and amplitude of this carrier.  All this is explained at length, and probably much better, in the wikipedia article on <a href="http://en.wikipedia.org/wiki/NTSC" target="_blank" rel='nofollow'>NTSC</a>.</p>
<div id="attachment_1352" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1352" title="UHF-amp-SA3-1" src="http://alternet.us.com/wp-content/uploads/2011/09/UHF-amp-SA3-11.jpg" alt="" width="540" height="438" /><p class="wp-caption-text">Source spectrum</p></div>
<p>In the spectrum image I&#8217;ve included above, it&#8217;s clear that the little transmitter uses AM rather than VSB.  You can tell because AM modulated signals are always symmetrical with respect to the carrier.  If it was VSB, the spectrum on the left side of the carrier would be suppressed.  You may notice that the left and right side don&#8217;t look 100% alike.  This is because it takes time for the analyzer to sweep the band (it does this 30 times a second), and it will be analyzing the spectrum of a different part of the image as it scans.</p>
<div id="attachment_1355" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1355" title="UHF-amp-SA2-1" src="http://alternet.us.com/wp-content/uploads/2011/09/UHF-amp-SA2-1.jpg" alt="" width="540" height="452" /><p class="wp-caption-text">Source signal through unpowered amplifier</p></div>
<p>Well, that was an unexpected tangent!  Back to the amplifier&#8230;  In the above image I have the amplifier in the signal path from the source to the analyzer.  It&#8217;s disconnected from any power.  I&#8217;m a little off on the &#8220;-60 dBm&#8221; text, it&#8217;s closer to -64 dBm.  I was interested in seeing how much RF would leak through an unpowered amp.  It appears that the amp provides a little more than 40 dB of forward isolation between the input and output when it&#8217;s unpowered.</p>
<div id="attachment_1356" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1356" title="UHF-amp-SA1-1" src="http://alternet.us.com/wp-content/uploads/2011/09/UHF-amp-SA1-1.jpg" alt="" width="540" height="445" /><p class="wp-caption-text">Amplifier powered on</p></div>
<p>Finally, this is the spectrum when the amplifier is powered on.  I had to install 40 dB of attenuation on the analyzer to capture this image.  The peak of the carrier is almost 5 dB lower than the top line, so it&#8217;s about 36 dB stronger than the input.  This is inline with expectation, as the amp specifies +35 dB gain.  The resulting signal is +15 dBm, which is a modest 32 mW of power.  The hope is that through a better antenna and some amplification I can get better performance from the video link.</p>
<p>A word about the legal implications.  Ham radio people are notoriously concerned with the rules of everything they do, so I feel obligated to mention them.  In the U.S., at least, 434 Mhz is a commonly used ATV (amateur T.V., or &#8220;fast scan TV&#8221;) frequency.  There is some concern due to the proximity to the  &#8221;satellite only&#8221; frequency band of 435 Mhz to 438 Mhz.  This means that the carrier is sometimes shifted to 433.92 Mhz, as this transmitter is.  Some of the sidebands still end up in the satellite only band, but with much lower power.  Because this amplifier only outputs +15 dBm I&#8217;m very unlikely to upset anyone with its use, though I should think about adding an overlay with my call sign to the video at this power level.  Maybe I&#8217;ll have a new 8-bit microcontroller project&#8230;</p>
<p><a href="http://alternet.us.com/?attachment_id=1368" rel="attachment wp-att-1368" rel='nofollow'>eagle files</a></p>
<p><a href="http://alternet.us.com/?attachment_id=1369" rel="attachment wp-att-1369" rel='nofollow'>gerber files</a></p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1340" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1340_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1340?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1340_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1340&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1340' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1340</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>QFN Reflow Soldering</title>
		<link>http://www.alternet.us.com/?p=1325</link>
		<comments>http://www.alternet.us.com/?p=1325#comments</comments>
		<pubDate>Thu, 28 Jul 2011 05:28:40 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Techniques]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1325</guid>
		<description><![CDATA[I decided to try my hand at QFN soldering yesterday.  I was really nervous about it, it just seemed like the kind of thing only a robot or an expert can really pull-off.  I&#8217;ve seen it done many places online and everyone said that it was doable.  Well, here&#8217;s another voice in the chorus: It [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1326" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/07/QFN-1.jpg" rel='nofollow'><img class="size-full wp-image-1326" title="qfns-waiting" src="http://alternet.us.com/wp-content/uploads/2011/07/QFN-1.jpg" alt="" width="540" height="392" /></a><p class="wp-caption-text">My, my... Than&#39;s TINY</p></div>
<p>I decided to try my hand at QFN soldering yesterday.  I was really nervous about it, it just seemed like the kind of thing only a robot or an expert can really pull-off.  I&#8217;ve seen it done many places online and everyone said that it was doable.  Well, here&#8217;s another voice in the chorus: It is possible with hobby-grade equipment.<span id="more-1325"></span>  I&#8217;ve written <a href="http://alternet.us.com/?p=118" rel='nofollow'>about</a> <a href="http://alternet.us.com/?p=268" rel='nofollow'>reflow</a> <a href="http://www.youtube.com/watch?v=N_195d7bP9M" rel='nofollow'>soldering</a> before, so I&#8217;m not going to re-hash that discussion, but that is the technique that I used.  As you can see in the image above, I used a professionally manufactured PCB of a design of mine.  This is a breakout/prototype adapter for a Skyworks RF switch.  The circuit is remarkably simple, there are two control lines that select which inputs are routed to the common (RFC on the silkscreen).  There are a few DC blocking caps on each of the RF lines, and that&#8217;s it!</p>
<div id="attachment_1327" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/07/QFN-2.jpg" rel='nofollow'><img class="size-full wp-image-1327" title="QFN-2" src="http://alternet.us.com/wp-content/uploads/2011/07/QFN-2.jpg" alt="" width="540" height="373" /></a><p class="wp-caption-text">Solder paste quantity</p></div>
<p>In this image, I&#8217;m showing how much solder paste I used.  As you can probably see, I made no attempt to keep it contained to any particular location.  I assumed that surface tension and the solder mask would help out in this regard.  This is the first board I did, I used somewhat less solder on the second one.</p>
<div id="attachment_1328" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/07/QFN-3.jpg" rel='nofollow'><img class="size-full wp-image-1328" title="QFN-3" src="http://alternet.us.com/wp-content/uploads/2011/07/QFN-3.jpg" alt="" width="540" height="351" /></a><p class="wp-caption-text">Solder bridges</p></div>
<p>Here is the result of the first board.  You can see some serious solder bridges on the chip there.  They were easily removed with solder wick.</p>
<div id="attachment_1329" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/07/QFN-4.jpg" rel='nofollow'><img class="size-full wp-image-1329" title="QFN-4" src="http://alternet.us.com/wp-content/uploads/2011/07/QFN-4.jpg" alt="" width="540" height="366" /></a><p class="wp-caption-text">Near perfect solder</p></div>
<p>This is the second board I tried.  This time I used a little less solder.  You can see that there aren&#8217;t any bridges (you&#8217;ll have to take me at my word that there aren&#8217;t any on the other side).  I used some solder wick to clean up the solder anyway, as I don&#8217;t like that they&#8217;re bulging out a little.  As a final note about this image, you should be able to see a very small solder ball on the left side of the chip.  This is very common with reflow.  The extra solder paste under the IC was squeezed out by surface tension.  I usually remove these with a razor blade.</p>
<div id="attachment_1331" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/07/QFN-6.jpg" rel='nofollow'><img class="size-full wp-image-1331" title="QFN-6" src="http://alternet.us.com/wp-content/uploads/2011/07/QFN-6.jpg" alt="" width="540" height="357" /></a><p class="wp-caption-text">Trying another kind of QFN package</p></div>
<p>I had another board and IC that I&#8217;m working on, also a QFN, that I thought I&#8217;d try.  In this case, it&#8217;s a 3&#215;3 package with huge spacing between pads.  This one was much easier to handle.  You can see that I still have some solder overflow.  The solder ball on the right was removed with the razor blade, and the near one was removed with solder wick.</p>
<div id="attachment_1332" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/07/QFN-7.jpg" rel='nofollow'><img class="size-full wp-image-1332" title="QFN-7" src="http://alternet.us.com/wp-content/uploads/2011/07/QFN-7.jpg" alt="" width="540" height="420" /></a><p class="wp-caption-text">Soldering QFN is actually kinda fun!</p></div>
<p>Now that I&#8217;ve tried it a few times, I can say that soldering QFN isn&#8217;t nearly as scary as I thought it would be.  A steady hand and some method of soldering other than an iron is all that&#8217;s really necessary.  I imagine this would work with the skillet or any hot air method.</p>
<p>The last image is a skyworks 1.2W RF power amplifier breakout/prototype board.  This will be the subject of a future post.  Stay tuned!<br />
<hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1325" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1325_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1325?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1325_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1325&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1325' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1325</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Resurrected LED panels</title>
		<link>http://www.alternet.us.com/?p=1272</link>
		<comments>http://www.alternet.us.com/?p=1272#comments</comments>
		<pubDate>Sat, 11 Jun 2011 23:41:12 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1272</guid>
		<description><![CDATA[&#160; &#160; Das Blinken Lights I just finished building a frame for some resurrected LED panels from a decommissioned super computer.  The computer was a CM-5 by Thinking Machines.  It has been used at the College of Oceanography and Atmospheric Science at Oregon State for a fairly long while.  A few weeks ago, its time [...]]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-13.jpg" rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-13.jpg" rel='nofollow'> </a></p>
<div class="mceTemp mceIEcenter"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-13.jpg" rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a>&nbsp;</p>
<dl id="attachment_1286" class="wp-caption aligncenter" style="width: 550px;"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-13.jpg" rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a>&nbsp;</p>
<dt class="wp-caption-dt"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-13.jpg" rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><a href="http://alternet.us.com/?p=1272"><img class="size-full wp-image-1286 " title="light-panel-13" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-13.jpg" alt="" width="540" height="315" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a></dt>
<dd class="wp-caption-dd">Das Blinken Lights</dd>
</dl>
</div>
<p>I just finished building a frame for some resurrected LED panels from a decommissioned super computer.  The computer was a <a href="http://en.wikipedia.org/wiki/Connection_Machine" rel='nofollow'>CM-5 by Thinking Machines</a>.  It has been used at the College of Oceanography and Atmospheric Science at Oregon State for a fairly long while.  A few weeks ago, its time came, and we surplussed it.  I was able to get the light panels and built a frame for them at my house.  This post describes a little about the process and includes some trivia about the CM-5 and the panels themselves.<span id="more-1272"></span>The CM-5 in name alone probably doesn&#8217;t resonate with many people, but hopefully you can recognize it in the background of this photo from Jurassic Park:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-1316" title="hwd_jpark9l" src="http://alternet.us.com/wp-content/uploads/2011/06/hwd_jpark9l.jpg" alt="" width="614" height="346" /></p>
<p style="text-align: left;">Now, I don&#8217;t want to slide my glasses up my nose an snort, but the way they&#8217;re setup in this image is not at all like how would they be setup in real life.  The installation engineer that setup ours had to leave half-way through to setup the Jurassic Park set.  These are simply the empty chassises with the light panels.  The CM-5 was also 3rd in this list of <a href="http://royal.pingdom.com/2009/06/11/10-of-the-coolest-and-most-powerful-supercomputers-of-all-time/" rel='nofollow'>Top Ten Coolest and Most Powerful Supercomputers</a>.  The previous link has an image that shows how it would actually be setup.  On top of the machine there are <a href="http://alternet.us.com/wp-content/uploads/2011/06/cm5-5.jpg" rel='nofollow'>huge bundles of wires</a>.</p>
<p style="text-align: left;">Anyway, I&#8217;m not writing this post to discuss the history of the CM-5, at least not that much, so I&#8217;ll get on with the LED panel build.  It&#8217;s a really simple idea; I laid them out on the floor and measured the dimensions of their perimeter.  Using these measurements, I built a simple wooden frame out of 1&#215;2&#8243; maple.  The width of the panel is considerably less than the width between studs in my wall, so I had to secure it to a single stud on the top and bottom of the frame.</p>
<div id="attachment_1274" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-1.jpg"><img class="size-full wp-image-1274" title="light-panel-1" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-1.jpg" alt="" width="540" height="868" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">Bottom of frame and backside of one module</p></div>
<p style="text-align: left;">The location I chose for the frame covered an outlet; This not only made it easier to route the cord (I didn&#8217;t have to make a cutout), but it also looks much cleaner.  Of course, I would need a way to turn it on and off.  To do this, I chose an X10 transciever/switch.  I covered the antenna with shrink-wrap to avoid shorting anything out.  Also, I had to turn the outlet in the wall upside down because the X10 module has the plug coming out on the bottom.</p>
<div id="attachment_1281" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-8.jpg"><img class="size-full wp-image-1281" title="light-panel-8" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-8.jpg" alt="" width="540" height="428" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">X10 module installed in a reversed outlet</p></div>
<p>The next challenge was securing the power supplies into the frame.  The frame was just thick enough to accommodate the supplies, but it left me little room to attach it.</p>
<div id="attachment_1275" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-2.jpg"><img class="size-full wp-image-1275" title="light-panel-2" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-2.jpg" alt="" width="540" height="807" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">Power supply against frame</p></div>
<p>There were mounting holes and a small recess in the heat sink, but the holes were far too large to thread to the hardware I was using.  I tried to drill and tap new holes for 4-40 hardware.</p>
<div id="attachment_1276" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-3.jpg"><img class="size-full wp-image-1276" title="light-panel-3" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-3.jpg" alt="" width="540" height="361" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">It broke my tap!</p></div>
<p>Unfortunately, the heat sink is made of some bizarre metal that really doesn&#8217;t like to be tapped.  It felt very gummy, if that makes any sense.  When I tried to unscrew the tap it broke right off.  I tried a few different things, including sharpening the other, broken, end of the tap into a new tip.  Really none of these things worked.  I was practicing on a bad supply, and I decided to just take it apart and see if there was anything else I could do.  When I did, I discovered that they used some strange self-tapping 4-40 screws.</p>
<div id="attachment_1277" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-4.jpg"><img class="size-full wp-image-1277" title="light-panel-4" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-4.jpg" alt="" width="540" height="332" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">Self-tapping 4-40 screws</p></div>
<p>These screws mostly did the trick.</p>
<div id="attachment_1280" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-7.jpg"><img class="size-full wp-image-1280" title="light-panel-7" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-7.jpg" alt="" width="540" height="312" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">Mounted power supplies</p></div>
<p>Once the power supplies were mounted, I attached the frame to the wall, and began wiring.  Notice, in the image above, that the output ends of both supplies are near each other.  This is because I wanted to use the factory wiring harnesses from the CM-5.</p>
<div id="attachment_1309" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/reverse-14.jpg"><img class="size-full wp-image-1309" title="light-panel-14" src="http://alternet.us.com/wp-content/uploads/2011/06/reverse-14.jpg" alt="" width="540" height="361" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">Low voltage DC wiring</p></div>
<p>Everything on that machine was overbuilt.  Each of those supplies can source 30 Amps at 5 Volts.  Each panel requires in the neighborhood 5-7 Amps, so there is almost 3x over provisioning.  Not only are the supplies overbuilt, but the cabling is also a little over-the-top.  It&#8217;s really a testament to the scale of the whole machine.  While talking about it to those that used it, I often heard &#8220;when something costs $20 million, you expect a certain level of quality.&#8221;</p>
<div id="attachment_1282" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-9.jpg"><img class="size-full wp-image-1282" title="light-panel-9" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-9.jpg" alt="" width="540" height="689" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">Testing</p></div>
<p>Here I am testing the final wiring for a single LED module.  The bottom rows are dark, not because they aren&#8217;t on, but because they&#8217;re painted black.  When it&#8217;s installed in the computer, you can&#8217;t see these rows because they&#8217;re covered up, so for some reason they just painted them black.  If you look close, you can see though the paint a bit at and see the lights.</p>
<div id="attachment_1283" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-10.jpg"><img class="size-full wp-image-1283" title="light-panel-10" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-10.jpg" alt="" width="540" height="229" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">Narrow margins</p></div>
<p>Here, you can see just how tight the fit of everything in the frame really is.  There is barely enough room for the power connectors and cables, let alone the power supplies and X10 module.</p>
<div id="attachment_1284" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-11.jpg"><img class="size-full wp-image-1284" title="light-panel-11" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-11.jpg" alt="" width="540" height="779" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">installing modules</p></div>
<p>The modules install simply and cover up all the wiring and electronics.</p>
<div id="attachment_1285" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-12.jpg"><img class="size-full wp-image-1285" title="light-panel-12" src="http://alternet.us.com/wp-content/uploads/2011/06/light-panel-12.jpg" alt="" width="540" height="887" / rel='nofollow' rel='nofollow' rel='nofollow' rel='nofollow'></a><p class="wp-caption-text">All finished!</p></div>
<p>Finally, we&#8217;re all done!!  The whole system looks amazing.  One factoid that I find pretty interesting is that the &#8220;random and pleasing mode #7&#8243; produces exactly the same &#8220;random&#8221; pattern on every module!  Next on the docket: reverse-engineering them to display messages and designs!  Also, make sure to see my gallery of the process of <a href="http://alternet.us.com/?p=1287" rel='nofollow'>surplussing the computer</a>.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1272" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1272_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1272?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1272_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1272&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1272' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1272</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>CM-5 decommissioning (gallery)</title>
		<link>http://www.alternet.us.com/?p=1287</link>
		<comments>http://www.alternet.us.com/?p=1287#comments</comments>
		<pubDate>Sat, 11 Jun 2011 21:09:39 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1287</guid>
		<description><![CDATA[Share on Facebook]]></description>
				<content:encoded><![CDATA[
<a href='http://www.alternet.us.com/?attachment_id=1288' title='HDD Cabinet'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-1-150x150.jpg" class="attachment-thumbnail" alt="This is the hard disk cabinet. The plexiglass lets the LEDs from the hard drives shine through. In the bottom there are &quot;squirrel cage&quot; blowers. The black, anodized, aluminum are louvers to direct the air across the HDDs." /></a>
<a href='http://www.alternet.us.com/?attachment_id=1289' title='Removing Skins'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-2-150x150.jpg" class="attachment-thumbnail" alt="Removing Skins" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1290' title='CPU boards'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-3-150x150.jpg" class="attachment-thumbnail" alt="CPU boards" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1291' title='Cabling into chassis'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-4-150x150.jpg" class="attachment-thumbnail" alt="Cabling into chassis" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1292' title='Fat tree interconnect'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-5-150x150.jpg" class="attachment-thumbnail" alt="Fat tree interconnect" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1293' title='Sparcstation 2 Head node'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-6-150x150.jpg" class="attachment-thumbnail" alt="Sparcstation 2 Head node" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1294' title='Routing and networking boards'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-7-150x150.jpg" class="attachment-thumbnail" alt="Routing and networking boards" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1295' title='Full set of routing boards'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-8-150x150.jpg" class="attachment-thumbnail" alt="Full set of routing boards" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1296' title='Empty network chassis'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-9-150x150.jpg" class="attachment-thumbnail" alt="Empty network chassis" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1297' title='Cooling cutouts'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-10-150x150.jpg" class="attachment-thumbnail" alt="Cooling cutouts" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1298' title='Interconnect wire clips'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-11-150x150.jpg" class="attachment-thumbnail" alt="Interconnect wire clips" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1299' title='Loaded on a forklift'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-12-150x150.jpg" class="attachment-thumbnail" alt="Loaded on a forklift" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1300' title='On a surplus truck'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-13-150x150.jpg" class="attachment-thumbnail" alt="On a surplus truck" /></a>
<a href='http://www.alternet.us.com/?attachment_id=1301' title='Goodbye'><img width="150" height="150" src="http://www.alternet.us.com/wp-content/uploads/2011/06/cm5-14-150x150.jpg" class="attachment-thumbnail" alt="Goodbye" /></a>

<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1287" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1287_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1287?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1287_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1287&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1287' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1287</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Transceiver enclosures</title>
		<link>http://www.alternet.us.com/?p=1201</link>
		<comments>http://www.alternet.us.com/?p=1201#comments</comments>
		<pubDate>Thu, 07 Apr 2011 01:33:53 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Kadet]]></category>
		<category><![CDATA[LT-25]]></category>
		<category><![CDATA[Serial]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1201</guid>
		<description><![CDATA[It has been a while since I finished the transceiver modules, and I how now used them in an actual application.  But, before I talk about that, I&#8217;d like to show some pictures of the process I used to put them into enclosures.  I had some of these cast aluminum enclosures lying around, so I [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1211" class="wp-caption aligncenter" style="width: 550px"><a rel="attachment wp-att-1211" href="http://alternet.us.com/?attachment_id=1211" rel='nofollow'><img class="size-full wp-image-1211 " title="transciever-10" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-10.jpg" alt="" width="540" height="327" /></a><p class="wp-caption-text">Transciever enclosure</p></div>
<p>It has been a while since I finished the transceiver modules, and I how now used them in an actual application.  But, before I talk about that, I&#8217;d like to show some pictures of the process I used to put them into enclosures.  I had some of these cast aluminum enclosures lying around, so I thought I&#8217;d use them.  They&#8217;re a little on the heavy side, as the completed weight is around half a pound, but it&#8217;s well within the carrying capacity of my <a title="Kadet" href="http://alternet.us.com/?tag=kadet" target="_blank" rel='nofollow'>Kadet</a>.<span id="more-1201"></span>Before diving into the process of cutting the holes, I want to show some images of the transceiver board with the RFI fence installation process.</p>
<div id="attachment_1202" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1202" title="transciever-1" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-1.jpg" alt="" width="540" height="318" /><p class="wp-caption-text">Cutting copper sheet</p></div>
<p>For use with the <a title="spectrum analyzer" href="http://alternet.us.com/?page_id=751" target="_blank" rel='nofollow'>spectrum analyzer</a> project, I found some sheet copper at the craft store.  It was sold at a local crafts store, and I think it was for etching.  I chose the thickest one they had.  So far, the best way I&#8217;ve found to cut it is using an exact and straight edge.  I tried scissors, and it didn&#8217;t really work.</p>
<div id="attachment_1203" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1203" title="transciever-2" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-2.jpg" alt="" width="540" height="307" /><p class="wp-caption-text">RFI Fence</p></div>
<p>Once I had a strip of copper cut, I cut openings for the power and control traces and soldered it onto the PCB.  I also soldered it onto the SMA connector.  Once all that was finished, I soldered on a lid.  Lots of solder flux helps here.</p>
<p>Once the board was prepared, both by soldering on a fence and replacing the pin header with a right-angle one, I began to prepare the enclosure.  I was intending to drill a hole for the SMA connector, then cut a hole for the digital connection.  The SMA connector hole was trivial to make, though the connector I soldered onto the board was a little short.  I ended up having to use an O-Ring from the hardware store (look in the plumbing section) to hold it in.  When an antenna or cable is screwed on the O-Ring compresses, having the nice side-effect of sealing it.</p>
<div id="attachment_1204" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1204" title="transciever-3" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-3.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">DB-9 template</p></div>
<p>For the digital connection, I decided on using a DB-9 connector.  I figured it was a prolific connector, so I should have lots of connectors laying around.  That didn&#8217;t turn out to be as helpful as I had hoped, but I&#8217;ll get into that later.  To create nice holes for the DB-9 connectors I decided that I could use an old PCI bracket as a template.  I lined the bracket up against the side of the enclosure and traced it.  On the black box, I traced it using a knife, and on the grey box I used sharpie.</p>
<div id="attachment_1208" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1208" title="transciever-7" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-7.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">DB-9 template using sharpie</p></div>
<p>Once the outline was traced onto the box, I drilled holes for the retention screws.  Then, I drilled out as much as I could of the trapezoid shaped interior.  I most used the drill press, then the dremel with a router/cutter bit.  I made sure to leave a margin inside the perimeter to remove with the files.  I had avoided purchasing a set of jewelers files for a while, I think I assumed that they were expensive.  They&#8217;re not, you should get a set.</p>
<div id="attachment_1206" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1206" title="transciever-5" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-5.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Finished penetration</p></div>
<p>In the photo above, you can see the finished penetration for the DB-9.  I beveled the inside edge to make room for the fillet on the connector that I had.  The black box got a male DB-9, and the grey box got a female one.  The holes need to be about the same size, as the male shroud always has to fit over the female connector body.</p>
<div id="attachment_1207" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1207" title="transciever-6" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-6.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">DB-9 connector installed</p></div>
<p>In addition to the RF and digital connectors, I needed a way to securely mount the internal circuit boards.  The way I chose to do this was first to drill holes in the bottom of the box, then &#8220;countersink&#8221; some screws into it.  I have countersink in quotes because I don&#8217;t have a countersink bit, so I used a larger drill bit.  You can see the results of this in the headline picture of this post.  Though I think it looks pretty good, I still decided to buy a drill &amp; tap for 4-40 screws after building the black box.  For the grey box, I used the tap and screwed directly into the box.  This requires slightly less hardware and looks pretty good, I think.</p>
<div id="attachment_1209" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1209" title="transciever-8" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-8.jpg" alt="" width="540" height="312" /><p class="wp-caption-text">Breadboard transceiver circuit</p></div>
<p>For whatever reason, the board I built for the black box using some veroboard-style construction didn&#8217;t work the same as the breadboard.   Because I was under time constraint (I was planning on flying one of the transceivers over the weekend.  I decided to put it back on the breadboard and use it as the base station.  This version uses an FTDI cable to connect to my computer.</p>
<div id="attachment_1210" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1210" title="transciever-9" src="http://alternet.us.com/wp-content/uploads/2011/04/transciever-9.jpg" alt="" width="540" height="307" /><p class="wp-caption-text">Flyable transceiver module</p></div>
<p>For the grey box, I used an extra ATMega48 breakout board I had.  This one worked just fine in the enclosure, so I flew it.  I also built a power regulation/distribution board, seen on the right of the photo.  This concludes this article.  Now that I&#8217;ve got at least one flight worthy transceiver I can test them in flight.  That&#8217;ll be detailed on a future post.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1201" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1201_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1201?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1201_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1201&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1201' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1201</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Brushless Mud Bug</title>
		<link>http://www.alternet.us.com/?p=1152</link>
		<comments>http://www.alternet.us.com/?p=1152#comments</comments>
		<pubDate>Wed, 09 Feb 2011 05:27:55 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[brushless]]></category>
		<category><![CDATA[mud bug]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1152</guid>
		<description><![CDATA[I maiden&#8217;d my new plane, the Mud Bug, last weekend!  I was a ton of fun.  Now, I&#8217;ll tell you all about building it, and converting it to use brushless motors. All the parts in the kit are laser cut, and fit perfectly.  The design of the plane is such that the shape of the [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1164" class="wp-caption aligncenter" style="width: 550px"><a rel="attachment wp-att-1164" href="http://alternet.us.com/?attachment_id=1164" rel='nofollow'><img class="size-full wp-image-1164 " title="in_flight" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-12.jpg" alt="Mud Bug flying" width="540" height="360" /></a><p class="wp-caption-text">Mud Bug flying</p></div>
<p>I maiden&#8217;d my new plane, the Mud Bug, last weekend!  I was a ton of fun.  Now, I&#8217;ll tell you all about building it, and converting it to use brushless motors.<span id="more-1152"></span></p>
<div id="attachment_1153" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1153" title="laser-cut" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-1.jpg" alt="laser cut precision" width="540" height="361" /><p class="wp-caption-text">Laser cut parts are a joy to use</p></div>
<p>All the parts in the kit are laser cut, and fit perfectly.  The design of the plane is such that the shape of the wing is created almost exclusively by bending the wing&#8217;s top skin into shape.  There are only a few ribs, and no bottom skin at all.  It&#8217;s remarkably light.</p>
<div id="attachment_1155" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1155" title="motor_stick_mount" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-3.jpg" alt="Motor stick mount" width="540" height="360" /><p class="wp-caption-text">Motor stick mount</p></div>
<p>The kit calls for a stick-mount geared, brushed motor.  These are getting pretty out-dated, and aren&#8217;t very efficient.  I really like working with brushless motors, so I had to devise a way to mount it.  I chose the E-flight park 250 motor because it was pretty inexpensive and only a few dollars and grams more than the park 180.  It&#8217;s possible to mount it inside of a carbon fiber tube (using glue), but you need to use their tube, and it wasn&#8217;t in stock.  I just decided to use the cross-mount adapter and make a plywood plate that mounts on the stick.  Where the stick mounts, I added another, smaller, piece of ply to help support it.  It ended up working perfectly.</p>
<div id="attachment_1154" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1154" title="webbing" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-2.jpg" alt="" width="540" height="357" /><p class="wp-caption-text">Front scab plate</p></div>
<p>I cut a pair of sheets of 1/64&#8243; ply to use as scab plates on the balsa firewall and fuselage parts.  I had read online that those pieces of the original kit were somewhat weak.</p>
<div id="attachment_1156" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1156" title="reverse-4" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-4.jpg" alt="back scab plate" width="540" height="373" /><p class="wp-caption-text">back scab plate</p></div>
<p>This is the scab plate on the back of the fuselage portion of the motor mounting.  These are only there to spread out the loads transmitted from the stick to these parts.</p>
<div id="attachment_1157" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1157" title="motor mounted" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-5.jpg" alt="Park 250 mounted" width="540" height="807" /><p class="wp-caption-text">Park 250 mounted</p></div>
<p>The motor mounting process went beautifully.  At first everything fit so tightly that I didn&#8217;t need any glue.  Half way through the first flight it had vibrated enough to polish the wood parts that they could slip.  I just put a few drops of thin CA, and it was fine.</p>
<div id="attachment_1162" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1162" title="in_flight" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-10.jpg" alt="In flight" width="540" height="342" /><p class="wp-caption-text">In flight</p></div>
<p>The flights went great.  That park 250 has waaaaay more power than you need with a 7&#215;6 APC Slo-fly prop  (which is the only prop I&#8217;ve tried).  The plane flies easily at 1/4 throttle.  At full throttle it gets very small very fast.  When flying slowly, it&#8217;s also very agile.  It&#8217;s possible to complete an entire circuit in 1/3 the length of the runway.</p>
<div id="attachment_1163" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1163" title="reverse-11" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-11.jpg" alt="first landing" width="540" height="365" /><p class="wp-caption-text">first landing</p></div>
<p>Even though it sports GIANT tires, it&#8217;s still easy to nose-over during landing in even short grass.  Given that it has almost no mass, no damage was sustained.</p>
<div id="attachment_1165" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1165" title="reverse-13" src="http://alternet.us.com/wp-content/uploads/2011/02/reverse-13.jpg" alt="" width="540" height="360" /><p class="wp-caption-text">I give it 2 thumbs up!</p></div>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1152" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1152_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1152?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1152_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1152&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1152' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1152</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Reverse Geocache</title>
		<link>http://www.alternet.us.com/?p=1113</link>
		<comments>http://www.alternet.us.com/?p=1113#comments</comments>
		<pubDate>Fri, 31 Dec 2010 20:39:44 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[geocache]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Techniques]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1113</guid>
		<description><![CDATA[This project was inspired by the &#8220;Reverse Geocache Puzzle Box&#8220;, an idea that has been duplicated a few times.  For Christmas this year, I drew my brother-in-law, Scott.  I know that he appreciates hand-made gifts, and my idea of hand make is almost always electronics related.  I thought for a while about a gift I [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1112" class="wp-caption aligncenter" style="width: 550px"><a rel="attachment wp-att-1112" href="http://alternet.us.com/?attachment_id=1112" rel='nofollow'><img class="size-full wp-image-1112   " title="reverse-16" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-16.jpg" alt="" width="540" height="399" /></a><p class="wp-caption-text">Finished puzzle box</p></div>
<p>This project was inspired by the &#8220;<a href="http://arduiniana.org/projects/the-reverse-geo-cache-puzzle/" target="_blank" rel='nofollow'>Reverse Geocache Puzzle Box</a>&#8220;, an idea that has been <a href="http://www.jave.de/blog2/?p=71" target="_blank" rel='nofollow'>duplicated</a> <a href="http://newbrightidea.com/?p=15" target="_blank" rel='nofollow'>a few</a> <a href="http://www.engadget.com/2010/07/09/deluxe-reverse-geocache-is-reusable-really-awesome/" target="_blank" rel='nofollow'>times</a>.  For Christmas this year, I drew my brother-in-law, Scott.  I know that he appreciates hand-made gifts, and my idea of hand make is almost always electronics related.  I thought for a while about a gift I could give that was hand-made, but appropriate to his interests.  While I wouldn&#8217;t say he&#8217;s interested in Geocaching, per se, but I know he will appreciate the destination.  <span id="more-1113"></span></p>
<p>That said, I began by designing the electronics.  In the original puzzle box, the designer used a commercial <a href="http://www.pololu.com/catalog/product/750" target="_blank" rel='nofollow'>Pololu</a> &#8220;soft&#8221; switch and an <a href="http://arduino.org/" target="_blank" rel='nofollow'>Arduino</a>.  I decided to make everything custom, including a custom soft power switch.  When I say soft power switch, I mean a button you press to turn the system on.  When it&#8217;s time shut the system down, the controller can turn the power off.  The circuit I found was listed on this <a href="http://www.picbasic.co.uk/forum/showthread.php?t=57" target="_blank" rel='nofollow'>forum</a>.  It was an O.K. start, but left something to be desired.  The given resistor values were all wrong for my application.  I think it was intended for a lower current applications, and the servo powering the latch draws a lot of power, relatively speaking.  Also, I&#8217;m not sure whether it it was an error on my part, but when the PIC shuts down, the output pins go into &#8220;high impedance&#8221; mode, as if they&#8217;re disconnected.  I had to add another resistor from the control wire to ground to hold it low while the system is off, otherwise it would never shut down.  In the future, I think I&#8217;ll approach it another way.</p>
<div id="attachment_1117" class="wp-caption aligncenter" style="width: 490px"><a href="http://alternet.us.com/wp-content/uploads/2010/12/mainboard-28.jpg" rel='nofollow'><img class="size-large wp-image-1117  " title="mainboard-28" src="http://alternet.us.com/wp-content/uploads/2010/12/mainboard-28-600x464.jpg" alt="" width="480" height="371" /></a><p class="wp-caption-text">Reverse Geocache schematic</p></div>
<p>The remainder of the circuit is pretty straightforward.  There is a connector for the GPS, servo, programming header, and LCD.  I decided to use the 4-bit interface to the LCD to save some pins.  I designed a PCB from the schematic with home fabrication in mind.  While I don&#8217;t think the through-hole construction is necessary for homebuilding, it&#8217;s easier for some people.  I caution you that the sparkfun outline for the 16&#215;2 LCD isn&#8217;t quite right.  The mounting holes didn&#8217;t line up.  Also, I didn&#8217;t have the pins for the servo correct, I had to move them around on the connector (5v and Ground are reversed).  Finally, another error in the design was that I didn&#8217;t notice until after I made the PCB that the 4-bit interface to the LCD is on pins D3-D7, not D0-D1.  I used a few wires to bridge over to those pins to fix it.</p>
<div id="attachment_1118" class="wp-caption aligncenter" style="width: 512px"><a rel="attachment wp-att-1118" href="http://alternet.us.com/?attachment_id=1118" rel='nofollow'><img class="size-full wp-image-1118 " title="mainboard-28" src="http://alternet.us.com/wp-content/uploads/2010/12/mainboard-281.jpg" alt="" width="502" height="308" /></a><p class="wp-caption-text">Reverse Geocache PCB</p></div>
<p>Once the design was complete, I made the board using the toner transfer method and etched it using ferric chloride.  I&#8217;ve refined my toner transfer technique recently, and I&#8217;ve been having really good luck.  I&#8217;ll write a post about it soon.  Drilling and assembling the PCB was otherwise unremarkable.</p>
<div id="attachment_1097" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1097" title="reverse-1" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-1.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Prototyping and programming</p></div>
<p>It took a few days to program the microcontroller and test the electronics.  There was one significant stumbling block that wasted an entire day.  Hopefully google indexes this so other people don&#8217;t have the same pain I did.  Here it is:  If you&#8217;re having trouble with the USART on a PIC microcontroller, whether you&#8217;re using PICC, Microchip C, or Assembler, the Overrun flag stops the USART dead in it&#8217;s tracks.  I recommend that every time you poll the port, check the flag and reset it.  This is likely the problem if you can receive 2 bytes, then nothing.  Also, the transmitter will continue working.</p>
<div id="attachment_1131" class="wp-caption aligncenter" style="width: 489px"><a href="http://alternet.us.com/wp-content/uploads/2010/12/distance_equation.jpg" rel='nofollow'><img class="size-full wp-image-1131" title="distance_equation" src="http://alternet.us.com/wp-content/uploads/2010/12/distance_equation.jpg" alt="" width="479" height="42" /></a><p class="wp-caption-text">Latitude/Longitude distance equation (r means radians)</p></div>
<p>This was the first time I used floating point math on a microcontroller, and I have to say I was a little impressed.  I use the distance equations from the <a href="http://williams.best.vwh.net/avform.htm#Dist" target="_blank" rel='nofollow'>aviation formulary</a>.  I think it is an interesting equation because it accepts latitude and longitude in the form of radians, does a little trigonometry magic, and away you go!</p>
<div id="attachment_1098" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1098" title="reverse-2" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-2.jpg" alt="" width="540" height="398" /><p class="wp-caption-text">Clasp design</p></div>
<p>With the code finished, I focused on the enclosure.  I started with a weird suitcase-looking wooden box from the crafts store.  Then, I measured it carefully and designed the clasp.  The main idea is that there is a rotating disk with a notch cut in it.  The screw fits within this notch and holds the lid closed.</p>
<div id="attachment_1099" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1099" title="reverse-3" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-3.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Clasp</p></div>
<p>With the measurements derived from the dimensional drawing, I drew a few circles.  The inner one is the diameter of the servo control arm shaft, the next circle out is the location of the screw.  The last circle is the desired maximum outside diameter.  Using these circles as a guide I drew the clasp.  The tongue has a little bulge to make sure you can&#8217;t wiggle it open.  I drew it over until it was nice and dark, then traced it onto a notepad sheet.  I cut this out and traced it to light-ply.  My Dremel with an end-mill made short work of cutting it out.</p>
<div id="attachment_1100" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1100" title="reverse-4" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-4.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Completed clasp and pin</p></div>
<div id="attachment_1101" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1101" title="reverse-5" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-5.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Clasp tolerances</p></div>
<p>As you can see, the final tolerances are really tight.  I&#8217;m very happy with this mechanism.  In fact, later in the process, I accidentally locked the box with bad software.  Luckily, the hinge is screwed on from the back and I could remove them.  However, the clasp was so tight, I still took several minutes to open it.</p>
<div id="attachment_1103" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1103" title="reverse-7" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-7.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Measuring the LCD</p></div>
<p>With the clasp done, I moved on to the LCD.  In this case, I measured it and traced it onto the lid.  There are two rectangles.  One is the location of the mounting holes, and the inner is the outline of the black LCD frame.</p>
<div id="attachment_1105" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1105" title="reverse-9" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-9.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">LCD Module test fitting</p></div>
<p>Here you can see the LCD module installed in the case.  It was a tight fit.  In additing to cutting and drilling the case, I cut some acrylic to use as a window.  I&#8217;ve been trying to figure out how to hide that ugly black bezel for a while, now.</p>
<div id="attachment_1104" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1104" title="reverse-8" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-8.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Acrylic window</p></div>
<p>I traced the outline of the display part of the LCD module.  I used this to mask out the clear part.</p>
<div id="attachment_1106" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1106" title="reverse-10" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-10.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">LCD Window</p></div>
<p>As you can see the bezel is hidden.  Unfortunately, some of the red paint leaked behind the masking tape.</p>
<div id="attachment_1107" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1107" title="reverse-11" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-11.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Controller assembly</p></div>
<p>This is an image nearing final assembly.  I use 4-40 hardware through the front of the lid.  On the back side of the LCD I installed a nylon and steel washer, then a standoff.  On the Standoff threads, there is a nut on the top and bottom of the mainboard.  These are to set the spacing of the LCD and mainboard and hold the package securely.</p>
<div id="attachment_1108" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1108" title="reverse-12" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-12.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Mainboard installation</p></div>
<p>With the mainboard installed, the GPS was installed.  I just used double-sided foam tape.  It is behind the lid, and the satellite signal simply travels through the lid.  It looks nice and still works great.  The wood is so thin, in fact, that the light from the LEDs shines through it.</p>
<div id="attachment_1110" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1110" title="reverse-14" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-14.jpg" alt="" width="540" height="344" /><p class="wp-caption-text">Arm switch</p></div>
<p>Going back to the problems I was having with the soft power switch, I noticed that when I left the battery plugged in over night it drained somewhat.  It&#8217;s kinda cheap, but I had to hack-on a power switch in addition to the pushbutton.  I use an ancient RC airplane trick where you stick a control rod through the wall to access a switch on the inside.</p>
<div id="attachment_1109" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1109" title="reverse-13" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-13.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Power switch outside</p></div>
<p>Now, you can hook a fingernail onto the wire.  Pull to enable, push to disable.  This also prevents from attempts being wasted during shipping.</p>
<div id="attachment_1111" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1111" title="reverse-15" src="http://alternet.us.com/wp-content/uploads/2010/12/reverse-15.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Final programming</p></div>
<p>This is an image of the final time I programmed the controller.  Complete with the puzzle coordinates!  It was important to remember to not let the lid close unintentionally, as the target almost 1000 miles from here!</p>
<p>A note about the provided code.  It isn&#8217;t high quality.  It&#8217;s a little embarrassing, but I did it in a hurry.</p>
<h3>Resources</h3>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/code.zip" rel='nofollow'>code.zip</a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/circuit.zip" rel='nofollow'>Eagle files</a></p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1113" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1113_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1113?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1113_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1113&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1113' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1113</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>RF Transceiver using the MRF49XA</title>
		<link>http://www.alternet.us.com/?p=1036</link>
		<comments>http://www.alternet.us.com/?p=1036#comments</comments>
		<pubDate>Thu, 09 Dec 2010 03:40:23 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[atmel]]></category>
		<category><![CDATA[avr]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[mrf49xa]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1036</guid>
		<description><![CDATA[I&#8217;m just finishing up my last class ever!!!  (for credit, anyway.)  It was a really fun, mostly because I decided to have fun with my last class, and make it a 4/5 (undergrad/graduate).  This meant that it was much easier and less theory-heavy than those that I&#8217;m used to.  Anyway, as a grad student, I [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1078" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/?p=1036" rel='nofollow'><img class="size-full wp-image-1078 " title="boards-1" src="http://alternet.us.com/wp-content/uploads/2010/12/boards-1.jpg" alt="" width="540" height="346" /></a><p class="wp-caption-text">Transceiver breakout boards</p></div>
<p>I&#8217;m just finishing up my last class ever!!!  (for credit, anyway.)  It was a really fun, mostly because I decided to have fun with my last class, and make it a 4/5 (undergrad/graduate).  This meant that it was much easier and less theory-heavy than those that I&#8217;m used to.  Anyway, as a grad student, I was expected to do something extra, and I decided to make a RF transceiver module.  I looked around for a little while, and I settled on the <a href="http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en541404" target="_blank" rel='nofollow'>Microchip MRF49XA</a>.  In general, it&#8217;s a nice chip.  It has about the same capability as the <a href="http://www.micrel.com/page.do?page=product-info/radiowire_bluechip.shtml" target="_blank" rel='nofollow'>Micrel MICRF6xx</a> modules that I&#8217;ve used in the past.  The Micrel modules cost $20/ea. and the Microchip IC is around $3.  I was able to make the whole breakout board for the MRF49XA for less than the Micrel module alone.  One of these days, I should dig out my notes from the Micrel project and post them, but I digress.  I noticed a distinct lack of programming information using the MRF49XA, so I&#8217;m posting not only my schematic and PCB, but the software library I wrote for the Atmel AVRmega.<span id="more-1036"></span></p>
<div id="attachment_1050" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1050" title="Schematic" src="http://alternet.us.com/wp-content/uploads/2010/12/schematic.jpg" alt="" width="540" height="386" /><p class="wp-caption-text">Breakout board schematic</p></div>
<p>The schematic I created for the breakout board is, in large part, copied from the reference schematic from the datasheet.  There are a few parts that make up the complete schematic, including power regulation, microcontroller interface, RF balun, and the IC.  Everything but the balun is really easy to understand, the power input can be +5 volts or more (probably up to about 14 volts) while using the LM317, or if the LM317 is omitted, +3.3 volts.  The MRF49XA is really a 3.3 volt part, and expects 3.3 volt I/0.  Originally, and on the PCB I had made, I had 2 ground pins.  Since then I realized it would be useful to output regulated 3.3 volt output, so I changed one of the grounds for that.  The only other major portion of the circuit is the balun.  This is used to transform the balanced RF input/output from the IC to the unbalanced antenna connector.  This circuit also provides power to the RF power amplifier inside the IC.</p>
<div id="attachment_1053" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1053" title="mrf49xa_pcb_top" src="http://alternet.us.com/wp-content/uploads/2010/12/PCB.jpg" alt="Breakout board top" width="540" height="395" /><p class="wp-caption-text">Breakout board top</p></div>
<p>The PCB designed from the schematic is also fairly straight-forward.  A few things are worth noting, however.  I&#8217;ve added some silkscreen between 2 of the pins on the LM317.  These are to indicate where you could jumper if the breakout board is supplied with regulated power.  I used a 0805 0-ohm resistor (see the image below).  The voltage output of the LM317 is selected with R1 and R2.  I decided not to include the &#8220;stop&#8221; layer on this image so as to not clutter it, but near the word &#8220;Fence&#8221; there is a strip without solder mask over the vias.  If you wanted to isolate the RF from the outside, you could build a fence out of copper foil (or something).  The Antenna connector is a end-launch SMA, though it could also be raw coax if you want to save some money.</p>
<div id="attachment_1079" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-1079" title="boards-2" src="http://alternet.us.com/wp-content/uploads/2010/12/boards-2.jpg" alt="" width="540" height="391" /><p class="wp-caption-text">Close up</p></div>
<p>The only pins necessary for complete functioning of the device are the standard SPI set (MOSI, MISO, SCK, !CS), and IRO (interrupt request out).  The IRO pin is not strictly necessary, but HIGHLY recommended.  The MRF module uses the IRO pin to notify the microcontroller of a few time-sensitive events, such as FIFO full/empty conditions.</p>
<div id="attachment_1054" class="wp-caption aligncenter" style="width: 490px"><a href="http://alternet.us.com/wp-content/uploads/2010/12/transmitting.jpg" target="_blank" rel='nofollow'><img class="size-large wp-image-1054 " title="transmitting" src="http://alternet.us.com/wp-content/uploads/2010/12/transmitting-600x389.jpg" alt="" width="480" height="311" /></a><p class="wp-caption-text">MCU interface while transmitting (click to enlarge)</p></div>
<p>The diagram included above (from the <a href="http://ww1.microchip.com/downloads/en/DeviceDoc/70590b.pdf" target="_blank" rel='nofollow'>MRF49XA datasheet</a>) provides a useful overview for the transmitting process.  The take-away message is that you first send the &#8220;Transmit data enable&#8221; (TXDEN) command, which loads 0xAAAA into the transmit FIFO.  You can either leave this in there, as a preamble, or replace it with data of your choice.  Then, you send the &#8220;Transmit carrier enable&#8221; (TXCEN) command.  At this point, the PLL starts, and the PA turns on, then transmission starts.  When the first full byte leaves the FIFO the IRO asserts.  Hopefully this forces the MCU to jump to your interrupt service routine.  Once there, if the CS pin is held low, the MRF will bring SDO (MISO) high.  This is a clear signal that the FIFO needs attention.  You can continue this process for as long as you have data.  Once you&#8217;re done, you need to load a &#8220;dummy byte&#8221; into the FIFO so your last data byte makes it out.  Finally, on the next interrupt, shut down the transmitter by sending TXCEN and TXDEN = 0.</p>
<div id="attachment_1060" class="wp-caption aligncenter" style="width: 490px"><a href="http://alternet.us.com/wp-content/uploads/2010/12/receiving.jpg" target="_blank" rel='nofollow'><img class="size-large wp-image-1060 " title="receiving" src="http://alternet.us.com/wp-content/uploads/2010/12/receiving-600x264.jpg" alt="" width="480" height="211" /></a><p class="wp-caption-text">Receiving FIFO usage (click to enlarge)</p></div>
<p>This diagram illustrates another detail of the interface to the MRF.  Also borrowed from the datasheet, it describes the way to access the receive FIFO using SPI.  Typically, SPI interfaces don&#8217;t have a notion of registers quite like I2C does, but the MRF does.  To get access to the receive FIFO you initiate an SPI transfer to the MRF module with the contents equal to the address of the receive FIFO.  In this case it&#8217;s 0xA000.  Once the first byte of the transfer is complete, the MRF begins outputting the FIFO value on the SDO pin.  It is also possible to gain access to the receive FIFO using FSEL (FIFO Select, called &#8220;Data&#8221; on the schematic) pin.</p>
<div id="attachment_1063" class="wp-caption aligncenter" style="width: 550px"><a href="http://alternet.us.com/wp-content/uploads/2010/12/BBBW.jpg" rel='nofollow'><img class="size-large wp-image-1063 " title="BBBW" src="http://alternet.us.com/wp-content/uploads/2010/12/BBBW-600x199.jpg" alt="" width="540" height="179" /></a><p class="wp-caption-text">Baseband Bandwidth calculation (click for full size)</p></div>
<p>Before going into some details on the implementation of the library, I&#8217;d like to talk briefly about the RF frequency, deviation, and bit rate determination.  I&#8217;ve attached another snippet from the datasheet (hopefully the last one), and I&#8217;m going to go through the math quickly with numbers for my application.  I&#8217;m using 434 Mhz band, with 9600 baud, using a 10ppm crystal.  This means that fxerror = 10 * (434000/1000000) = 4.34 Khz.  Then, our deviation must be 9.6 + 2*fxerror + 10 = 28.28; the closest modulation is 30 Khz.  Therefore, BBBW = 30*2 &#8211; 10 = 50 Khz.  The closest BBBW is 67 Khz.</p>
<div id="attachment_1043" class="wp-caption aligncenter" style="width: 510px"><img class="size-full wp-image-1043" title="alternating" src="http://alternet.us.com/wp-content/uploads/2010/12/alternating.jpg" alt="" width="500" height="452" /><p class="wp-caption-text">Spectrum plot from alternating 1s and 0s</p></div>
<p>I recently gained access to a spectrum analyzer courtesy of the <a href="http://oregonstate.edu/groups/osurc/" target="_blank" rel='nofollow'>OSU Robotics Club</a>.  This is a spectrum plot of 0xAA, or alternating 1&#8242;s and 0&#8242;s.  It&#8217;s a little strange that the distance between peaks is about 90 Khz, as it should be more like 60 Khz.  The comb-like appearance on the flanks is probably from the transceiver switching from 1 to 0 across the scan.</p>
<div id="attachment_1044" class="wp-caption aligncenter" style="width: 510px"><img class="size-full wp-image-1044" title="one" src="http://alternet.us.com/wp-content/uploads/2010/12/one.jpg" alt="" width="500" height="462" /><p class="wp-caption-text">Transmitting &#39;1&#39;</p></div>
<p>This plot is while transmitting all 1&#8242;s.  It&#8217;s obvious this is much cleaner, but very little information is actually being transmitted here.</p>
<p>With respect to the Atmel AVR library that I wrote, it includes a header file devoted entirely to defining the registers and bits as defined in the datasheet.  Each section includes a comment block description, and in the cases where some bit values need to be calculated, the equations used.  On the occasions where a bitfield is used for some integer value, I include a mask to ensure that if the derived values overrun the width of the bitfield they don&#8217;t pollute unrelated settings.  Below, I&#8217;ve included an example.</p>
<pre>/*******************************************************************************
 * Convenience definitions for band setting
 *
 * These defines are provided for use configuring the MRF49XA module.
 * Select the frequency band for the given hardware by uncommenting the
 * appropriate line.  Set the crystal load capacitance using the MRF_XTAL_LD_CAP
 * value.
 *
 * The load capacitance is given by the following equation:
 *
 * Cap pF = 8.5 + (LCS / 2)
 * LCS = (10 - 8.5) * 2
 *
 * For 10pF: LCS = (10 - 8.5) * 2 = 1.5 * 2 = 3
 *
 ******************************************************************************/
#pragma mark General Configuration Register
#define MRF_GENCREG		0x8000		// General config. register
#define MRF_TXDEN		0x0080		// TX Data Register enable bit
#define MRF_FIFOEN		0x0040		// FIFO enable bit
#define MRF_FBS_MASK		0x0030		// Mask for the band selection
#define MRF_LCS_MASK		0x000F		// Load capacitance mask
// 10pF Crystal load capacitance
#define MRF_LCS			3		// Crystal Load capacitance
// Frequency band settings
#define MRF_FBS_434		0x0010		// 434 mHz band
#define MRF_FBS_868		0x0020		// 868 mHz band
#define MRF_FBS_915		0x0030		// 915 mHz band</pre>
<p>All of the files in the library depend on a &#8220;hardware.h&#8221; file that defines the qualities of the hardware.  The hope is that this file is the only place that implementation-specific code lives.  There are some holes still, however.  Finally, the mrf49xa.c and mrf49xa.h files behave the way you would expect.  The module requires a total of 5 pins and one interrupt.  Some of those pins may be shared with other SPI devices.</p>
<pre>void MRF_init(void);

uint8_t MRF_is_idle();
uint16_t MRF_statusRead(void);

// Packet structures
// the maximum payload size
#define MRF_PAYLOAD_LEN 40
// Space for preamble, sync, length and dummy
#define MRF_TX_PACKET_LEN	MRF_PAYLOAD_LEN + 5

typedef struct {
	uint8_t	length;
	char		payload[MRF_PAYLOAD_LEN];
} MRF_packet_t;

// Packet based functions
void MRF_transmit_packet(MRF_packet_t *packet);
MRF_packet_t* MRF_receive_packet();</pre>
<p>I&#8217;ve included a snippet of the header file above so I could mention the basic process for using the MRF module.  The MRF_init function expects the SPI bus to be configured, and it performs the basic initialization of the device.  Once it&#8217;s started, the interrupts on the AVR must be enabled.  In the main loop (or at least as often as a packet can be transmitted) you should call MRF_receive_packet.  This function will return NULL if no packet was received, and a pointer to a packet structure if it was.  MRF_transmit_packet takes a packet structure and transmits it.  This is an asynchronous operation, and you may use the packet structure (or it&#8217;s memory) once it returns.  This is useful if you want to use a packet structure created on the stack.  It is possible to get yourself into trouble with MRF_packet_transmit, as it spin-loops on a lock set in the ISR.  If for whatever reason that lock isn&#8217;t unlocked at some point you can hardlock.  I&#8217;ve done my best to ensure that it doesn&#8217;t happen, but beware.</p>
<p>And, finally, links to the files.  If there seems to be sufficient interest, I&#8217;ll open up a SVN (maybe Google Code, who knows) with these files and a main program useful for telemetry and the like.  Post in the comments if you&#8217;re interested, or send me a line.</p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/hardware.h" rel='nofollow'>hardware.h</a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/MRF49XA_definitions.h" rel='nofollow'>MRF49XA_definitions.h</a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/MRF49XA.c" rel='nofollow'>MRF49XA.c</a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/MRF49XA.h" rel='nofollow'>MRF49XA.h</a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/spi.h" rel='nofollow'>spi.h</a></p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/spi.c" rel='nofollow'>spi.c</a></p>
<p>Also, the PCB is available as a <a href="http://www.batchpcb.com/product_info.php?products_id=43931&amp;check=2a1b651a7f8b1f06cb62200e257a120a" target="_blank" rel='nofollow'>public design</a> from BatchPCB.  I&#8217;ll include a bill of materials if necessary, though the components are clearly printed on the silkscreen.</p>
<p>Oh!  before you ask: No, I don&#8217;t know what the range is.  The longest I&#8217;ve tried is about 20 feet, and there weren&#8217;t any errors, but it was only about 100 bytes.  The chip is rated to 7dBm, I think, so go from there. <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h3>Update:</h3>
<p>Here is a simple bill of materials, I used the Eagle export feature, and attempted to place digikey part numbers for each part.  I&#8217;m not saying they&#8217;re all right, you may want to make sure you&#8217;re getting what you think is correct.</p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/partlist.txt" target="_blank" rel='nofollow'>partlist.txt</a></p>
<p>Also, here are the eagle files.  They aren&#8217;t necessarily finalized</p>
<p><a href="http://alternet.us.com/wp-content/uploads/2010/12/eagle_files.zip" rel='nofollow'>eagle_files.zip</a></p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1036" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1036_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1036?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1036_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1036&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1036' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1036</wfw:commentRss>
		<slash:comments>82</slash:comments>
		</item>
		<item>
		<title>Asteroid 2010 RF12</title>
		<link>http://www.alternet.us.com/?p=1028</link>
		<comments>http://www.alternet.us.com/?p=1028#comments</comments>
		<pubDate>Wed, 08 Sep 2010 17:08:10 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=1028</guid>
		<description><![CDATA[Well, I&#8217;ve been investigating how one goes about finding the azimuth and elevation of an asteroid pass.  It isn&#8217;t easy, but the JPL Horizons system has the answers.  It isn&#8217;t an easy program to understand, and you access it by telnet (how 1992), but it&#8217;s also pretty cool.  I ran the system for the asteroid [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_1032" class="wp-caption aligncenter" style="width: 570px"><img class="size-full wp-image-1032" title="Asteroid Trajectory" src="http://alternet.us.com/wp-content/uploads/2010/09/untitled.jpg" alt="" width="560" height="419" /><p class="wp-caption-text">Asteroid Trajectory</p></div>
<p>Well, I&#8217;ve been investigating how one goes about finding the azimuth and elevation of an asteroid pass.  It isn&#8217;t easy, but the <a href="http://ssd.jpl.nasa.gov/?horizons" target="_blank" rel='nofollow'>JPL Horizons system</a> has the answers.  It isn&#8217;t an easy program to understand, and you access it by telnet (how 1992), but it&#8217;s also pretty cool.  I ran the system for the asteroid that will pass within 1/5 of the distance to the moon to us.  I&#8217;ve posted the system output below.  This data is for 122º W Longitude and 45º North Latitude.  The columns you probably want to use are the Azimuth and Elevation.  I&#8217;ve cut the portions of model output that have less than 0 elevation.  (Click &#8220;Read More&#8221; for the data)</p>
<p>Update:  Guh.  I hate Matlab.  Anyway, I added an image of the trajectory as seen from Oregon.  North is to the right, west is on the top.  I know, it sucks&#8230;  I don&#8217;t know enough about Matlab to fix it.  Also, 90º overhead is 0, and 0º is 90.</p>
<p><span id="more-1028"></span></p>
<pre>*******************************************************************************
Ephemeris / PORT_LOGIN Wed Sep  8 09:40:43 2010  Pasadena, USA   / Horizons    
*******************************************************************************
Target body name: (2010 RF12)                     {source: JPL#6}
Center body name: Earth (399)                     {source: DE405}
Center-site name: (user defined site below)
*******************************************************************************
Start time      : A.D. 2010-Sep-07 00:00:00.0000 UT-07:00
Stop  time      : A.D. 2010-Sep-09 00:00:00.0000 UT-07:00
Step-size       : 10 minutes
*******************************************************************************
Target pole/equ : No model available
Target radii    : (unavailable)                                                
Center geodetic : 238.000000,45.0000478,-0.000347 {E-lon(deg),Lat(deg),Alt(km)}
Center cylindric: 238.000000,4517.59088,4487.3484 {E-lon(deg),Dxy(km),Dz(km)}
Center pole/equ : High-precision EOP model        {East-longitude +}
Center radii    : 6378.1 x 6378.1 x 6356.8 km     {Equator, meridian, pole}    
Target primary  : Sun                             {source: DE405}
Interfering body: MOON (Req= 1737.400) km         {source: DE405}
Deflecting body : Sun, EARTH                      {source: DE405}
Deflecting GMs  : 1.3271E+11, 3.9860E+05 km^3/s^2                              
Small perturbers: Ceres, Pallas, Vesta            {source: SB405-CPV-2}
Small body GMs  : 6.32E+01, 1.43E+01, 1.78E+01 km^3/s^2                        
Atmos refraction: YES (Earth refraction model)
RA format       : DEG
Time format     : CAL 
Time zone       : UT-07:00
RTS-only print  : NO       
EOP file        : eop.100907.p101129                                           
EOP coverage    : DATA-BASED 1962-JAN-20 TO 2010-SEP-07. PREDICTS-&gt; 2010-NOV-28
Units conversion: 1 AU= 149597870.691 km, c= 299792.458 km/s, 1 day= 86400.0 s 
Table cut-offs 1: Elevation (-90.0deg=NO ),Airmass (&gt;38.000=NO), Daylight (NO )
Table cut-offs 2: Solar Elongation (  0.0,180.0=NO )                           
*******************************************************************************
Initial FK5/J2000.0 heliocentric ecliptic osculating elements (AU, DAYS, DEG):
 EPOCH=  2455446.5 ! 2010-Sep-07.00 (CT)         Residual RMS= .51054         
 EC= .1790426100393394  QR= .8185988097139194  TP= 2455532.390114616        
 OM= 165.5596199702477  W= 284.0221727285949   IN= 3.599336147379268        
Asteroid physical parameters (KM, SEC, rotational period in hours):
 GM= n.a.               RAD= n.a.              ROTPER= n.a.                 
 H= 28.298              G= .150                B-V= n.a.                    
 ALBEDO= n.a.           STYP= n.a.                   
*******************************************************************************
Date_(ZONE)_HR:MN     Azi_(r-appr)_Elev  r-ObsEcLon  r-ObsEcLat
****************************************************************
$SOE
2010-Sep-07 18:50 *r   88.0837   1.2209 345.2093905   8.7187668
2010-Sep-07 19:00 *    89.9485   2.7959 345.1984220   8.5009369
2010-Sep-07 19:10 *    91.8184   4.4307 345.1623414   8.3374745
2010-Sep-07 19:20 *    93.6971   6.0909 345.1133871   8.1983984
2010-Sep-07 19:30 *    95.5881   7.7611 345.0566579   8.0711552
2010-Sep-07 19:40 C    97.4951   9.4329 344.9944504   7.9500074
2010-Sep-07 19:50 C    99.4218  11.1011 344.9278998   7.8320371
2010-Sep-07 20:00 C   101.3720  12.7617 344.8576092   7.7156172
2010-Sep-07 20:10 N   103.3495  14.4114 344.7839147   7.5997670
2010-Sep-07 20:20 N   105.3582  16.0471 344.7070087   7.4838547
2010-Sep-07 20:30 N   107.4022  17.6657 344.6270009   7.3674481
2010-Sep-07 20:40 A   109.4855  19.2644 344.5439515   7.2502357
2010-Sep-07 20:50 A   111.6122  20.8400 344.4578897   7.1319808
2010-Sep-07 21:00 A   113.7864  22.3893 344.3688247   7.0124955
2010-Sep-07 21:10 A   116.0124  23.9090 344.2767525   6.8916239
2010-Sep-07 21:20     118.2942  25.3957 344.1816604   6.7692317
2010-Sep-07 21:30     120.6361  26.8455 344.0835297   6.6451990
2010-Sep-07 21:40     123.0418  28.2546 343.9823378   6.5194157
2010-Sep-07 21:50     125.5153  29.6189 343.8780594   6.3917785
2010-Sep-07 22:00     128.0600  30.9340 343.7706675   6.2621879
2010-Sep-07 22:10     130.6790  32.1954 343.6601341   6.1305470
2010-Sep-07 22:20     133.3748  33.3983 343.5464307   5.9967602
2010-Sep-07 22:30     136.1495  34.5378 343.4295284   5.8607319
2010-Sep-07 22:40     139.0041  35.6087 343.3093985   5.7223661
2010-Sep-07 22:50     141.9390  36.6059 343.1860127   5.5815653
2010-Sep-07 23:00     144.9532  37.5240 343.0593427   5.4382308
2010-Sep-07 23:10     148.0445  38.3579 342.9293609   5.2922613
2010-Sep-07 23:20     151.2093  39.1023 342.7960402   5.1435535
2010-Sep-07 23:30     154.4428  39.7524 342.6593537   4.9920011
2010-Sep-07 23:40     157.7382  40.3033 342.5192754   4.8374948
2010-Sep-07 23:50     161.0876  40.7509 342.3757795   4.6799221
2010-Sep-08 00:00     164.4813  41.0914 342.2288406   4.5191669
2010-Sep-08 00:10     167.9087  41.3217 342.0784338   4.3551094
2010-Sep-08 00:20     171.3578  41.4393 341.9245343   4.1876259
2010-Sep-08 00:30  t  174.8162  41.4425 341.7671175   4.0165884
2010-Sep-08 00:40     178.2708  41.3306 341.6061590   3.8418648
2010-Sep-08 00:50     181.7088  41.1035 341.4416343   3.6633181
2010-Sep-08 01:00     185.1175  40.7621 341.2735185   3.4808067
2010-Sep-08 01:10     188.4850  40.3080 341.1017867   3.2941841
2010-Sep-08 01:20     191.8006  39.7435 340.9264134   3.1032984
2010-Sep-08 01:30     195.0545  39.0718 340.7473726   2.9079923
2010-Sep-08 01:40     198.2387  38.2962 340.5646376   2.7081031
2010-Sep-08 01:50     201.3463  37.4208 340.3781809   2.5034621
2010-Sep-08 02:00     204.3724  36.4499 340.1879742   2.2938945
2010-Sep-08 02:10     207.3130  35.3880 339.9939882   2.0792195
2010-Sep-08 02:20     210.1660  34.2399 339.7961928   1.8592497
2010-Sep-08 02:30     212.9301  33.0101 339.5945573   1.6337915
2010-Sep-08 02:40     215.6053  31.7035 339.3890504   1.4026444
2010-Sep-08 02:50     218.1925  30.3245 339.1796409   1.1656015
2010-Sep-08 03:00     220.6934  28.8777 338.9662985   0.9224495
2010-Sep-08 03:10     223.1103  27.3674 338.7489949   0.6729691
2010-Sep-08 03:20     225.4459  25.7977 338.5277061   0.4169354
2010-Sep-08 03:30     227.7033  24.1724 338.3024153   0.1541195
2010-Sep-08 03:40     229.8858  22.4953 338.0731180  -0.1157099
2010-Sep-08 03:50     231.9970  20.7700 337.8398293  -0.3927832
2010-Sep-08 04:00     234.0404  18.9996 337.6025971  -0.6773244
2010-Sep-08 04:10     236.0198  17.1875 337.3615226  -0.9695419
2010-Sep-08 04:20     237.9386  15.3366 337.1167965  -1.2696129
2010-Sep-08 04:30     239.8004  13.4500 336.8687648  -1.5776535
2010-Sep-08 04:40     241.6087  11.5309 336.6180543  -1.8936630
2010-Sep-08 04:50     243.3668   9.5829 336.3658318  -2.2174072
2010-Sep-08 05:00 A   245.0779   7.6106 336.1143867  -2.5481574
2010-Sep-08 05:10 A   246.7451   5.6213 335.8686046  -2.8840315
2010-Sep-08 05:20 A   248.3714   3.6299 335.6402501  -3.2200863
2010-Sep-08 05:30 A   249.9595   1.6739 335.4622419  -3.5420167
$EOE
*******************************************************************************
Column meaning:

TIME

 Prior to 1962, times are UT1. Dates thereafter are UTC. Any 'b' symbol in
the 1st-column denotes a B.C. date. First-column blank (" ") denotes an A.D.
date. Calendar dates prior to 1582-Oct-15 are in the Julian calendar system.
Later calendar dates are in the Gregorian system.

 The uniform Coordinate Time scale is used internally. Conversion between
CT and the selected non-uniform UT output scale has not been determined for
UTC times after the next July or January 1st.  The last known leap-second
is used over any future interval.

 NOTE: A time-zone correction has been requested. See header.

 NOTE: "n.a." in output means quantity "not available" at the print-time.

SOLAR PRESENCE (OBSERVING SITE)
 Time tag is followed by a blank, then a solar-presence symbol:

 '*'  Daylight (refracted solar upper-limb on or above apparent horizon)
 'C'  Civil twilight/dawn
 'N'  Nautical twilight/dawn
 'A'  Astronomical twilight/dawn
 ' '  Night OR geocentric ephemeris

LUNAR PRESENCE WITH TARGET RISE/TRANSIT/SET MARKER (OBSERVING SITE)
 The solar-presence symbol is immediately followed by another marker symbol:

 'm'  Refracted upper-limb of Moon on or above apparent horizon
 ' '  Refracted upper-limb of Moon below apparent horizon OR geocentric
 'r'  Rise    (target body on or above cut-off RTS elevation)
 't'  Transit (target body at or past local maximum RTS elevation)
 's'  Set     (target body on or below cut-off RTS elevation)

RTS MARKERS (TVH)
 Rise and set are with respect to the reference ellipsoid true visual horizon
defined by the elevation cut-off angle. Horizon dip and yellow-light refraction
(Earth only) are considered. Accuracy is &lt; or = to twice the requested search
step-size.

Azi_(r-appr)_Elev =
 Refracted apparent azimuth and elevation of target center. Corrected for
light-time, the gravitational deflection of light, stellar aberration,
precession, nutation and approximate atmospheric refraction. Azimuth measured
North(0) -&gt; East(90)-&gt; South(180) -&gt; West(270) -&gt; North (360). Elevation is
with respect to plane perpendicular to local zenith direction. TOPOCENTRIC
ONLY.  Units: DEGREES

r-ObsEcLon r-ObsEcLat =
 Observer-centered ecliptic-of-date longitude and latitude of the target
center's apparent position, corrected for light-time, the gravitational
deflection of light, stellar aberration and atmospheric refraction. The
ecliptic plane is the Earth's orbital plane at print time.  Units: DEGREES

Computations by ...
 Solar System Dynamics Group, Horizons On-Line Ephemeris System
 4800 Oak Grove Drive, Jet Propulsion Laboratory
 Pasadena, CA  91109   USA
 Information: <a href="http://ssd.jpl.nasa.gov/" rel='nofollow'>http://ssd.jpl.nasa.gov/</a>
 Connect    : <a href="telnet://ssd.jpl.nasa.gov:6775" rel='nofollow'>telnet://ssd.jpl.nasa.gov:6775</a> (via browser)
 telnet <a href="http://ssd.jpl.nasa.gov/" rel='nofollow'>ssd.jpl.nasa.gov</a> 6775    (via command-line)
 Author     : <a href="mailto:Jon.Giorgini@jpl.nasa.gov" rel='nofollow'>Jon.Giorgini@jpl.nasa.gov</a>

*******************************************************************************</pre>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=1028" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_1028_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/1028?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_1028_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=1028&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D1028' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=1028</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Simple XQuery testing app for Mac OS</title>
		<link>http://www.alternet.us.com/?p=981</link>
		<comments>http://www.alternet.us.com/?p=981#comments</comments>
		<pubDate>Tue, 17 Aug 2010 22:29:01 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[XQuery]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=981</guid>
		<description><![CDATA[I needed an app that I could use to test XQueries. I couldn&#8217;t find a free one online, so I figured I&#8217;d just write it. Put the XML source that you want the query in the bottom window, your query in the text field, click the button and away you go! I haven&#8217;t tested anything [...]]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-982" title="XQueryTest Screenshot" src="http://alternet.us.com/wp-content/uploads/2010/08/XQueryTest.jpg" alt="Performing an XQuery" width="542" height="422" /></p>
<p style="text-align: left;">I needed an app that I could use to test XQueries.  I couldn&#8217;t find a free one online, so I figured I&#8217;d just write it.  Put the XML source that you want the query in the bottom window, your query in the text field, click the button and away you go!</p>
<p>I haven&#8217;t tested anything about it other than those things.  Your milage may vary.<br />
Released under the GPLv2.</p>
<p><a href="http://alternet.us.com/XQueryTest.zip" rel='nofollow'>Source code (zip, 41kB)</a></p>
<p><a title="XQueryTest App" href="http://alternet.us.com/XQueryTest.app.zip" target="_self" rel='nofollow'>Intel binary (zip, 45kB)</a></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=981" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_981_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/981?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_981_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=981&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D981' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=981</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Reflow soldering video</title>
		<link>http://www.alternet.us.com/?p=791</link>
		<comments>http://www.alternet.us.com/?p=791#comments</comments>
		<pubDate>Thu, 22 Apr 2010 03:14:46 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=791</guid>
		<description><![CDATA[I was able to borrow a video camera to make a full frame rate video of a reflow soldering operation.  I&#8217;ve annotated the video with more or less what&#8217;s happening at the time.  I&#8217;m using a fairly standard toaster oven.  I&#8217;ve got it set to 450˚ F (the hottest setting) on &#8220;grill&#8221;.  Some people say [...]]]></description>
				<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/N_195d7bP9M&amp;hl=en_US&amp;fs=1&amp;rel=0&amp;hd=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/N_195d7bP9M&amp;hl=en_US&amp;fs=1&amp;rel=0&amp;hd=1" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
I was able to borrow a video camera to make a full frame rate video of a reflow soldering operation.  I&#8217;ve annotated the video with more or less what&#8217;s happening at the time.  I&#8217;m using a fairly standard toaster oven.  I&#8217;ve got it set to 450˚ F (the hottest setting) on &#8220;grill&#8221;.  Some people say that it&#8217;s important to have the upper and lower heating elements running, and I don&#8217;t know if they are.  I&#8217;m not completely sure that it matters.  These are the same settings that I&#8217;ve already <a href="http://alternet.us.com/?p=268" rel='nofollow'>profiled</a>.  There are many examples online of people that have put too much faith in their controller boards and published profiles&#8230;  My opinion has always been &#8220;use common sense&#8221;.  If the solder is all molten then you can probably stop.  I haven&#8217;t burnt a single board.  Anyway, sorry about the rant there, but you get the picture.  Hope you enjoy the video (though I know it&#8217;s a little boring at times).</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=791" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_791_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/791?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_791_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=791&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D791' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=791</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>New spectrum analyzer page</title>
		<link>http://www.alternet.us.com/?p=763</link>
		<comments>http://www.alternet.us.com/?p=763#comments</comments>
		<pubDate>Tue, 20 Apr 2010 04:52:02 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=763</guid>
		<description><![CDATA[I&#8217;ve decided to move spectrum analyzer posts onto their own page.  I&#8217;ve been getting complaints from approx. 25% of my readership (hi, Katie) that I&#8217;m crossing the line to &#8220;too nerdy&#8221;.  So, I&#8217;ll let you opt-in to hearing about it.  The page is available under the title banner, near the &#8220;about&#8221; and &#8220;thesis&#8221; page.  I&#8217;ll [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve decided to move spectrum analyzer posts onto their own page.  I&#8217;ve been getting complaints from approx. 25% of my readership (hi, Katie) that I&#8217;m crossing the line to &#8220;too nerdy&#8221;.  So, I&#8217;ll let you opt-in to hearing about it.  The page is available under the title banner, near the &#8220;about&#8221; and &#8220;thesis&#8221; page.  I&#8217;ll write sub pages for each module.  Unfortunately, I don&#8217;t think there&#8217;s a way to make an RSS feed of changes to this page, so if you&#8217;re interested you&#8217;ll just have to check in occasionally.  I&#8217;ll also post when it&#8217;s all done, so there is that to look forward to.  Anyway, that&#8217;s all.  :)</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=763" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_763_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/763?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_763_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=763&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D763' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=763</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Security Camera Repair</title>
		<link>http://www.alternet.us.com/?p=722</link>
		<comments>http://www.alternet.us.com/?p=722#comments</comments>
		<pubDate>Mon, 29 Mar 2010 04:30:24 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[IR]]></category>
		<category><![CDATA[Photos]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=722</guid>
		<description><![CDATA[Well, as a (perhaps welcome ) deviation from the spectrum analyzer posts, I&#8217;ve spent a little time working on repairing a security camera I&#8217;ve been hanging onto for a while.  I&#8217;ve been toying with the idea of installing it near the radio control flying field as someone in the club knows the owner of a [...]]]></description>
				<content:encoded><![CDATA[<dd class="wp-caption-dd">
<div id="attachment_723" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-723" title="Repair-1" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-1.jpg" alt="" width="540" height="329" /><p class="wp-caption-text">Unsuspecting security camera</p></div>
</dd>
<dd class="wp-caption-dd"><span style="line-height: 19px; font-size: 13px;">Well, as a (perhaps welcome <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ) deviation from the spectrum analyzer posts, I&#8217;ve spent a little time working on repairing a security camera I&#8217;ve been hanging onto for a while.  I&#8217;ve been toying with the idea of installing it near the radio control flying field as someone in the club knows the owner of a nearby business.</span></dd>
<p><span id="more-722"></span></p>
<p>The problem with the camera is that it has trouble switching from nighttime mode to daytime mode.  At night, it is sensitive to <a href="http://en.wikipedia.org/wiki/Infrared" target="_blank" rel='nofollow'>Near Infrared light</a> (such as what is transmitter from your remote control).  During the day, however, this sensitivity makes the colors look strange.  To cope with this, they have a filter that slides in front of the lens for the daytime.  This filter binds, and because of this, the camera is always in nighttime mode.  I decided to go ahead and disassemble the camera to try to fix it.  My motto:  If it&#8217;s broke and out of warranty, take it apart! <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div id="attachment_724" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-724" title="Repair-2" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-2.jpg" alt="" width="540" height="331" /><p class="wp-caption-text">Removing the lens</p></div>
<p>You can (kinda) see in this photo the image sensor.  This metal mount can move forward and back to accommodate different lenses and adjust their focal length.</p>
<div id="attachment_725" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-725" title="Repair-3" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-3.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Bottom cover removed</p></div>
<p>Removing the bottom cover reveals the power conversion board.</p>
<div id="attachment_726" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-726" title="Repair-4" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-4.jpg" alt="" width="540" height="382" /><p class="wp-caption-text">Removing the top cover</p></div>
<p>Removing the top cover reveals the PCMCIA slot.  This camera is kinda cool in that it can accommodate either a memory card or a wireless LAN card in this slot.  Also, there is an ethernet port on the back.  It has an embedded web interface that allows the control of camera functions and viewing live video.  Apparently, there is the ability to get some information from the serial port, but I haven&#8217;t found any information about it.</p>
<div id="attachment_728" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-728" title="Repair-6" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-6.jpg" alt="" width="540" height="438" /><p class="wp-caption-text">Front lens mount</p></div>
<p>Like I mentioned before, the front lens mount can be adjusted front-to-back.  The black screw near the top of the frame is used to secure the mount.  More to the right of the frame, the spring is used to press the mount against a set of wedges that control the depth setting.  The 4-pin connector goes to the lens iris, which is kinda like the aperture of a still camera.</p>
<div id="attachment_729" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-729" title="Repair-7" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-7.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Lens mount disassembled</p></div>
<p>This is the front of the camera disassembled.  The image sensor is still attached to the camera frame.  The black piece of plastic is the filter module, and the other piece is the metal frame for mounting the lens and adjusting the focal length.</p>
<div id="attachment_731" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-731" title="Repair-9" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-9.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Filter module</p></div>
<p>This is the device causing all the trouble.  The slight green tint in the left frame is the IR block filter, and the right is clear.  The motor is a small gear-head motor attached to a worm gear.  The worm gear has very shallow cuts in it.  The spring pushes down on a small plastic follower.  The whole system is intended to allow the worm gear to continue turning even if the system is jammed.  I think this is so that limit switches aren&#8217;t necessary.  I figured that the problems I&#8217;m having are due to excessive friction, which would cause the frame to remain static while the worm gear turns.  My first thought was to place a little petroleum jelly on the sliding surfaces.  I re-assembled the front of the camera and found that the problem remained.  However, I noticed that when the lens mount was all the way against the camera it would stick.  I could then solve the problem by keeping the lens not-quite against the camera.</p>
<div id="attachment_736" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-736" title="Repair-14" src="http://alternet.us.com/wp-content/uploads/2010/03/Repair-14.jpg" alt="" width="540" height="319" /><p class="wp-caption-text">Lens mount disassembly</p></div>
<p>Before re-assembling the camera, I decided to lubricate the adjustment assembly.  The black plastic ring on the right includes the adjustment wedges.  The middle ring is the precision-machined lens mount with a channel for the plastic ring.  The punched metal piece on the left completes the assembly.</p>
<p>Anyway, I put the camera back together.  It works great now.  I&#8217;m a little embarrassed to admit that the problem was simply that the lens can&#8217;t be in the closest setting for the filters to work.  At least everything went back together without a hitch. <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=722" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_722_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/722?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_722_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=722&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D722' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=722</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spectrum Analyzer IF Amplifier</title>
		<link>http://www.alternet.us.com/?p=710</link>
		<comments>http://www.alternet.us.com/?p=710#comments</comments>
		<pubDate>Mon, 29 Mar 2010 02:22:01 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Photos]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=710</guid>
		<description><![CDATA[I&#8217;ve decided to hold off posting spectrum analyzer modules until they&#8217;re complete.  I&#8217;ve been collecting tons of pictures along the way, so hopefully the post for each module will be interesting and visually appealing.  With that in mind, I can&#8217;t post about any of the modules with the exception of this one.  For whatever reason, [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_711" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-711" title="IF Amp-1" src="http://alternet.us.com/wp-content/uploads/2010/03/IF-Amp-1.jpg" alt="" width="540" height="353" /><p class="wp-caption-text">IF Amplifier cooling down</p></div>
<p>I&#8217;ve decided to hold off posting spectrum analyzer modules until they&#8217;re complete.  I&#8217;ve been collecting tons of pictures along the way, so hopefully the post for each module will be interesting and visually appealing.  With that in mind, I can&#8217;t post about any of the modules with the exception of this one.  <span id="more-710"></span>For whatever reason, my kit didn&#8217;t come with any voltage regulators, and this is the only module besides the mixers from my last post that don&#8217;t use any.  The IF Amplifier, as the name implies, amplifies the Intermediate Frequency on the analyzer.  I made a simplified version of the block diagram from Scotty&#8217;s site.  I&#8217;ve also indicated the modules I&#8217;ve finished in green.</p>
<div id="attachment_716" class="wp-caption aligncenter" style="width: 548px"><img class="size-full wp-image-716" title="Block Diagram" src="http://alternet.us.com/wp-content/uploads/2010/03/Block-Diagram.jpg" alt="" width="538" height="504" /><p class="wp-caption-text">Block diagram, green modules are completed as of this post.</p></div>
<p>As you can probably see, there&#8217;s a lot to be done.  Luckily both DDSs, the Log Detector, ADC, Control Board, and one PLO are done once I get some parts to replace the missing ones.  I also need some parts for the Master Oscillator.  Once that (actually quite small) order comes in, I&#8217;ll be almost finished with the boards.</p>
<p>Anyway, back to the amplifier.  I was one of the first people on an order of boards back in August &#8217;08 because I agreed to look-over a new revision of the design files.  Of course, by having me look them over essentially guaranteed that there would be errors.  As it happens there was an error on this board.  The engineering change order (ECO) is luckily quite simple, the only problem was that a short section of the border was missing.  Here is a photo of the completed fix:</p>
<div id="attachment_712" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-712" title="IF Amp-2" src="http://alternet.us.com/wp-content/uploads/2010/03/IF-Amp-2.jpg" alt="" width="540" height="368" /><p class="wp-caption-text">Fix for the slight error,</p></div>
<p>You should be able to see that along the border there is some solder wick saturated with solder bridging the gap, and connecting to the capacitor.  Also, on (at least) the 2 resistors (R3 and R4) there are tiny balls of solder.  These happen during the reflow stage when a bit of solder squeezes out from underneath the device.  I haven&#8217;t gone over the board picking all these out yet in this photo.  I think it&#8217;s important to remove all of these because they may cause shorts.  Also, you may be able to see a slight, shiny, residue around everything.  This is the solder flux that&#8217;s included in the solder paste.  I remove this later with some 99% rubbing alcohol.</p>
<div id="attachment_713" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-713" title="IF Amp-3" src="http://alternet.us.com/wp-content/uploads/2010/03/IF-Amp-3.jpg" alt="" width="540" height="553" /><p class="wp-caption-text">Completed IF Amplifier</p></div>
<p>This is the completed amplifier board.  There are actually 2 amplifiers here, mirrored.  In practice, the output of one will be the input of the other.  This serves to roughly double the gain.  Finally, notice on the right side, that many of the parts have been omitted.  On the schematic, Scotty simplified this section.  Technically, he has 2 zero-ohm resistors (basically jumpers) in addition to the capacitor.  I chose to just jump the capacitor across and leave the resistors out.</p>
<p>Anyway, I enjoyed building this one.  I hope you&#8217;ve enjoyed reading about it.  I can&#8217;t wait to finish the other ones!</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=710" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_710_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/710?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_710_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=710&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D710' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=710</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spectrum Analyzer Mixers</title>
		<link>http://www.alternet.us.com/?p=702</link>
		<comments>http://www.alternet.us.com/?p=702#comments</comments>
		<pubDate>Sat, 27 Mar 2010 04:51:07 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=702</guid>
		<description><![CDATA[I&#8217;ve verified each of the 3 mixers that I need for the spectrum analyzer.  The one above is mixer 2.  The schematic for this mixer is available from Scotty&#8217;s site. I&#8217;ve also verified mixer 1 against the schematic.  There have been 2 optional revisions posted that aren&#8217;t included on mine.  I&#8217;m going to add them [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_704" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-704" title="Mixer 2" src="http://alternet.us.com/wp-content/uploads/2010/03/20100324-DSC_7825.jpg" alt="" width="540" height="550" /><p class="wp-caption-text">Mixer 2 completed and verified against schematic</p></div>
<p>I&#8217;ve verified each of the 3 mixers that I need for the spectrum analyzer.  The one above is mixer 2.  The schematic for this mixer is available from <a href="http://scottyspectrumanalyzer.com/slim_mxr_2.html" target="_blank" rel='nofollow'>Scotty&#8217;s site</a>.<span id="more-702"></span></p>
<div id="attachment_705" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-705" title="Mixer 1" src="http://alternet.us.com/wp-content/uploads/2010/03/20100324-DSC_7826.jpg" alt="" width="540" height="542" /><p class="wp-caption-text">Mixer 1 verified against schematic</p></div>
<p>I&#8217;ve also verified mixer 1 against the <a href="http://scottyspectrumanalyzer.com/slim_mxr_1.html" target="_blank" rel='nofollow' rel='nofollow'>schematic</a>.  There have been 2 optional revisions posted that aren&#8217;t included on mine.  I&#8217;m going to add them later, but only if necessary.</p>
<div id="attachment_703" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-703" title="Mixer 3" src="http://alternet.us.com/wp-content/uploads/2010/03/20100324-DSC_7823.jpg" alt="" width="540" height="539" /><p class="wp-caption-text">Mixer 3 verified against the schematic</p></div>
<p>Finally, mixer three is complete, and verified against the <a href="http://scottyspectrumanalyzer.com/slim_mxr_3.html" target="_blank" rel='nofollow' rel='nofollow'>schematic</a>.  This one isn&#8217;t strictly needed for the spectrum analyzer, however it is necessary for the tracking generator.  A tracking generator is a module that generates a signal that matches what the analyzer is tuned to.  This is useful for tuning filters, or other passive devices.</p>
<p>I&#8217;m missing some parts that I need to complete the control board.  I hope to get replacements soon, so I can begin testing some of these modules&#8230;   Stay tuned!</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=702" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_702_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/702?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_702_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=702&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D702' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=702</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Scotty&#8217;s Spectrum Analyzer&#8221;</title>
		<link>http://www.alternet.us.com/?p=678</link>
		<comments>http://www.alternet.us.com/?p=678#comments</comments>
		<pubDate>Tue, 23 Mar 2010 04:04:36 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[MSA]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Spectrum Analyzer]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=678</guid>
		<description><![CDATA[IMPORTANT!!  &#8211; I&#8217;ve made a special page for my construction and testing of the spectrum analyzer.  It&#8217;s available on the navigation bar below the blog title banner, or here. A while back I bought a spectrum analyzer kit.  It can display waveforms in the frequency domain from 0 to 1000 Mhz.  I haven&#8217;t worked on [...]]]></description>
				<content:encoded><![CDATA[<p><strong>IMPORTANT!!  &#8211; I&#8217;ve made a special page for my construction and testing of the spectrum analyzer.  It&#8217;s available on the navigation bar below the blog title banner, or <a href="http://alternet.us.com/?page_id=751" rel='nofollow' rel='nofollow'>here</a>.</strong></p>
<p>A while back I bought a spectrum analyzer kit.  It can display waveforms in the frequency domain from 0 to 1000 Mhz.  I haven&#8217;t worked on it for a while, but I&#8217;ve decided to start working on it again.  If you&#8217;re interested in more information, there is a <a href="http://www.scottyspectrumanalyzer.com/" rel='nofollow'>webpage</a> for the analyzer by the guy who designed it, and there&#8217;s a <a href="http://groups.yahoo.com/group/spectrumanalyzer/" rel='nofollow'>Yahoo group</a>, also.  If you&#8217;re really-really interested there is a group buy open (until the 28th of march 2010) <a href="http://www.kd5ssj.com/index.php" rel='nofollow' rel='nofollow'>here</a>.  Anyway, I&#8217;m sure it&#8217;s of limited use to my usual readers (thanks, friends &amp; family! [oh who am I kidding, most of my family doesn't read this <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ]), but it may be useful to others working on the kit.  I&#8217;ll post the &#8220;annotated&#8221; CAD images for each board here, and add images of the completed boards when I finish them.  Who knows, it may be interesting for someone.  Also, I&#8217;ll include my thoughts and observations while building these boards.  Finally, not all the boards that come with the kit include annotated layouts, so I&#8217;ll have to dig around and figure out what they do and what to put on them <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> <span id="more-678"></span></p>
<h2>Log Detector:</h2>
<p><img class="aligncenter size-large wp-image-681" title="Log Detector Rev 1" src="http://alternet.us.com/wp-content/uploads/2010/03/Log-Detector-Rev-1-600x570.jpg" alt="" width="600" height="570" /></p>
<h2>Master Oscillator:</h2>
<p><img class="aligncenter size-large wp-image-680" title="Master Oscillator Rev B" src="http://alternet.us.com/wp-content/uploads/2010/03/Master-Oscillator-Rev-B-2-600x670.jpg" alt="" width="600" height="670" /></p>
<h2>Analog-Digital Converter</h2>
<p><img class="aligncenter size-large wp-image-684" title="Analog Digital Converter Rev 1" src="http://alternet.us.com/wp-content/uploads/2010/03/Analog-Digital-Converter-Rev-1-600x622.jpg" alt="" width="600" height="622" /></p>
<h2>Control Board:</h2>
<p><img class="aligncenter size-large wp-image-683" title="Control Board Rev 1" src="http://alternet.us.com/wp-content/uploads/2010/03/Control-Board-Rev-1-600x418.jpg" alt="" width="600" height="418" /></p>
<h2>Direct Digital Synthesizer:</h2>
<p><img class="aligncenter size-large wp-image-693" title="Direct Digital Synthesizer Rev B" src="http://alternet.us.com/wp-content/uploads/2010/03/Direct-Digital-Synthesizer-Rev-B-21-600x393.jpg" alt="" width="600" height="393" /></p>
<h2>Phase-Locked Oscillator:</h2>
<p><img class="aligncenter size-large wp-image-694" title="Phase Locked Oscillator 2 Rev A" src="http://alternet.us.com/wp-content/uploads/2010/03/Phase-Locked-Oscillator-2-Rev-A-600x404.jpg" alt="" width="600" height="404" /></p>
<h2>Mixers:</h2>
<p><img class="aligncenter size-large wp-image-697" title="Mixers" src="http://alternet.us.com/wp-content/uploads/2010/03/Mixers-600x625.jpg" alt="" width="600" height="625" /></p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=678" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_678_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/678?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_678_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=678&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D678' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=678</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New videos!</title>
		<link>http://www.alternet.us.com/?p=672</link>
		<comments>http://www.alternet.us.com/?p=672#comments</comments>
		<pubDate>Sun, 07 Feb 2010 05:13:18 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=672</guid>
		<description><![CDATA[In this video, I&#8217;ve tried to synchronize video from a camcorder with the in flight camera.  I think it turned out really well.  I wish I knew how to make the canvas larger in iMovie so I could put the video side-by-side.  If you select the highest quality (480, I think) and make it full screen, [...]]]></description>
				<content:encoded><![CDATA[<div id="Picture in picture" class="wp-caption aligncenter" style="width: 570px"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/WWT8BiiSuZg&amp;hl=en_US&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/WWT8BiiSuZg&amp;hl=en_US&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object><p class="wp-caption-text">Picture in picture video</p></div>
<p>In this video, I&#8217;ve tried to synchronize video from a camcorder with the in flight camera.  I think it turned out really well.  I wish I knew how to make the canvas larger in iMovie so I could put the video side-by-side.  If you select the highest quality (480, I think) and make it full screen, I think it looks pretty good.</p>
<div id="Formation flying" class="wp-caption aligncenter" style="width: 490px"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/AKlJzzCnpWs&amp;hl=en_US&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/AKlJzzCnpWs&amp;hl=en_US&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object><p class="wp-caption-text">Picture in picture video</p></div>
<p>This video is from Tom and I trying to fly in some kind of formation so I could record his plane in flight.  It was very challenging because my plane is a lot faster than his.  I was flying on the brink of a stall most of the time while he was full-throttle.  There&#8217;s a moment where we almost had a midair.  We didn&#8217;t, so no harm.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=672" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_672_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/672?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_672_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=672&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D672' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=672</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New video link antenna</title>
		<link>http://www.alternet.us.com/?p=650</link>
		<comments>http://www.alternet.us.com/?p=650#comments</comments>
		<pubDate>Thu, 04 Feb 2010 01:58:01 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[antenna]]></category>
		<category><![CDATA[Construction]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Kadet]]></category>
		<category><![CDATA[LT-25]]></category>
		<category><![CDATA[SIG]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=650</guid>
		<description><![CDATA[I&#8217;ve finished building the first (and my first) Yagi antenna for the Kadet video downlink.  I mentioned in the first video post that a new, and better, antenna would help greatly. I was able to find some designs online that fit my needs.  The major constraint that I had to deal with is the impedance [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_660" class="wp-caption aligncenter" style="width: 550px"><img class="size-large wp-image-660 " title="antenna comparison" src="http://alternet.us.com/wp-content/uploads/2010/02/antenna-comparison1-600x450.jpg" alt="" width="540" height="405" /><p class="wp-caption-text">Comparing antennas</p></div>
<p>I&#8217;ve finished building the first (and my first) Yagi antenna for the <a href="http://alternet.us.com/?p=620" target="_blank" rel='nofollow'>Kadet video downlink</a>.  I mentioned in the <a href="http://alternet.us.com/?p=645" target="_blank" rel='nofollow'>first video post</a> that a new, and better, antenna would help greatly.<span id="more-650"></span> I was able to find some designs online that fit my needs.  The major constraint that I had to deal with is the impedance issue.  Nearly everything amateur radio related is 50 ohms, and nearly everything video related is 75.  The <a href="http://www.wa5vjb.com/yagi-pdf/cheapyagi.pdf" target="_blank" rel='nofollow'>cheap Yagis</a> paper written by <a href="http://www.wa5vjb.com/" target="_blank" rel='nofollow'>Kent Britain, WA5VBJ,</a> has a 75 ohm 421 Mhz antenna intended for amateur television (ATV).  My transmitter is 434 Mhz, but I figured it would be close enough.  The great thing about these designs is that they can be built using supplies from a standard hardware store.  The elements are made from #10 bare copper wire, and the beam is wood.</p>
<div id="attachment_662" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-662" title="20100201-DSC_7751" src="http://alternet.us.com/wp-content/uploads/2010/02/20100201-DSC_7751.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Completed antenna</p></div>
<p>An interesting characteristic of antennas, and RF in general, is that to get a stronger signal you often have to make compromises.  A Yagi works by increasing the directionality to increase the signal.  Unfortunately, because my plane is going to be flying around, I can&#8217;t be too directional.  To get better results, without making things worse, I decided to only use the reflector and &#8220;driven element&#8221;.  By  eliminating the &#8220;directors&#8221; I hope that I can get the best possible results. (If you&#8217;re confused by this &#8220;director&#8221;, &#8220;reflector&#8221;, and &#8220;driven element&#8221; gibberish, the best place to look is the <a href="http://en.wikipedia.org/wiki/Yagi_antenna" target="_blank" rel='nofollow'>wikipedia</a> article.  But all that is necessary for this discussion is that the reflector is behind the driven element [which connects to the transmitter or receiver] and reflects the signal forward, and the directors go in front and focus the signal into a narrower beam).</p>
<div id="attachment_663" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-663" title="20100201-DSC_7750" src="http://alternet.us.com/wp-content/uploads/2010/02/20100201-DSC_7750.jpg" alt="" width="540" height="375" /><p class="wp-caption-text">Feed line soldered</p></div>
<p>There were some problems during construction that I should mention to help others wanting to try something like this.  The antenna designs specify that the feed cable should be soldered directly to the driven element.  This should work great on traditional 50 ohm radio cabling, such as LMR or RG-type cables.  These cables have copper braid shield around the circumference.  With the 75 ohm cable used in video, often made as cheaply as possible, a loose aluminum braid is used as the shield.  This is a major problem that I had to deal with.  It took me a while to even understand why the braid wasn&#8217;t soldering.  I think I assumed that the braid was made of tin.  After a few hours of searching, I discovered it was aluminum.  Aluminum oxide forms almost immediately and can&#8217;t be soldered to, so even sanding the wire doesn&#8217;t help.  There are solder pastes and fluxes that help, but I wasn&#8217;t interested in waiting for something to be shipped.  My solution, if you want to call it that, was to mechanically attach the braid to some other wire that can be soldered.</p>
<p>In the first image of the post, I&#8217;m comparing the new antenna versus the others I used earlier.  When the Yagi was installed, I rotated the antenna 360˚in azimuth to get an idea for how directional the antenna really is.  There wasn&#8217;t much of a change in signal quality, so it isn&#8217;t very directional.  If the transmitter were further away it may have been more dramatic.  I am motivated to build a few more antennas, maybe with 1 and 2 directors to see which is better.  With that said, I&#8217;m pretty satisfied, and I&#8217;m hoping for good weather this weekend.</p>
<p>b.t.w: Just to dispel any fears that the shield is shorted to the center conductor, as it appears in the above photo, it was, and I fixed it.  Here is a photo of the feed point as it was when I tested it.  Also, notice that I got my driven elements and directors confused when I wrote on the board <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div id="attachment_666" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-666" title="20100202-DSC_7759" src="http://alternet.us.com/wp-content/uploads/2010/02/20100202-DSC_7759.jpg" alt="" width="540" height="349" /><p class="wp-caption-text">Another view of the feed point</p></div>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<div>
<dl id="attachment_662"></dl>
</div>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=650" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_650_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/650?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_650_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=650&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D650' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=650</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>First video (somewhat) successful!</title>
		<link>http://www.alternet.us.com/?p=645</link>
		<comments>http://www.alternet.us.com/?p=645#comments</comments>
		<pubDate>Sun, 31 Jan 2010 00:00:49 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Kadet]]></category>
		<category><![CDATA[LT-25]]></category>
		<category><![CDATA[SIG]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=645</guid>
		<description><![CDATA[The weather sucked, but I was able to get out the the field this morning. I recorded about 17 minutes of video in total.  In the embedded clip, I edited out the majority of the static.  I&#8217;m a little disappointed that the signal quality is so poor.  I found a site that has some cheap [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_640" class="wp-caption aligncenter" style="width: 490px"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/AMIFyS2qpNE&amp;hl=en_US&amp;fs=1&amp;rel=0" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/AMIFyS2qpNE&amp;hl=en_US&amp;fs=1&amp;rel=0" allowscriptaccess="always" allowfullscreen="true"></embed></object><p class="wp-caption-text">Flying video</p></div>
<p>The weather sucked, but I was able to get out the the field this morning.  I recorded about 17 minutes of video in total.  In the embedded clip, I edited out the majority of the static.  I&#8217;m a little disappointed that the signal quality is so poor.  I found a site that has some cheap <a title="Yagi Antenna wikipedia" href="http://en.wikipedia.org/wiki/Yagi_antenna" target="_blank" rel='nofollow'>Yagi antenna</a> <a title="Cheap yagi antennas" href="http://www.wa5vjb.com/yagi-pdf/cheapyagi.pdf" target="_blank" rel='nofollow'>designs</a> in 50 and 75 ohms.  I&#8217;ll probably try to build one this week and see how it goes.</p>
<p>More information about the camera is available in <a href="http://alternet.us.com/?p=620" target="_blank" rel='nofollow'>these</a> <a href="http://alternet.us.com/?p=634" target="_blank" rel='nofollow'>posts</a>, if you haven&#8217;t already seen them.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=645" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_645_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/645?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_645_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=645&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D645' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=645</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>The Camera module&#8217;s new look</title>
		<link>http://www.alternet.us.com/?p=634</link>
		<comments>http://www.alternet.us.com/?p=634#comments</comments>
		<pubDate>Fri, 29 Jan 2010 05:54:48 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[HAM Radio]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Kadet]]></category>
		<category><![CDATA[LT-25]]></category>
		<category><![CDATA[Mods]]></category>
		<category><![CDATA[SIG]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=634</guid>
		<description><![CDATA[Taking advantage of the crummy weather, I decided to paint the camera module to match my plane.  I didn&#8217;t just do it for the aesthetics, no really, I swear.  Actually, the real reason I painted it was to prevent stray light from making annoying reflections on the inside of the window. The first thing I [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_635" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-635" title="Painted camera module in plane" src="http://alternet.us.com/wp-content/uploads/2010/01/20100128-DSC_7737.jpg" alt="" width="540" height="807" /><p class="wp-caption-text">Painted to match</p></div>
<p>Taking advantage of the crummy weather, I decided to paint the camera module to match my plane.  I didn&#8217;t just do it for the aesthetics, no really, I swear. <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   Actually, the real reason I painted it was to prevent stray light from making annoying reflections on the inside of the window.</p>
<p><span id="more-634"></span></p>
<div id="attachment_640" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-640" title="window masked" src="http://alternet.us.com/wp-content/uploads/2010/01/20100124-DSC_7715.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Masking the window</p></div>
<p>The first thing I had to do was get an idea of the size and shape of the opening that would be needed.  I was able to measure it by looking at the video output and marking with a sharpie just outside of the camera view.  Once I had all the sharpie marks, I tried to make the shame smooth and symmetrical.  Since I had to mount the camera low in the module, as discussed in <a title="Kadet video downlink" href="http://alternet.us.com/?p=620" target="_blank" rel='nofollow'>this post</a>, the opening is low, and very parabolic.  I then covered the whole top of the window with masking tape and by shining a light through the bottom traced the sharpie line with a hobby knife.  Removing the excess tape left a nice mask for the opening.</p>
<div id="attachment_639" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-639" title="window prepared for painting" src="http://alternet.us.com/wp-content/uploads/2010/01/20100124-DSC_7717.jpg" alt="" width="540" height="807" /><p class="wp-caption-text">Prepped for painting</p></div>
<p>With the opening masked, I sanded the window to give the paint the best chance at adhering.  It is apparently a little hard to find plastic spray paint (like Krylon fusion) in silver, so I had to use some general purpose kind.</p>
<div id="attachment_637" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-637" title="outside paint applied" src="http://alternet.us.com/wp-content/uploads/2010/01/20100127-DSC_7729.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Outside paint</p></div>
<p>I think the paint on the outside of the window turned out O.K.  There is a little dust and lint marring the finish, but it turned out not to matter much.  I also wanted to paint the inside with a matte black finish to minimize the chance of reflections from light that is still able to get in through the smaller opening.  I used a similar approach to the technique for the outside.  I placed masking tape on the inside of the window and shined light in from the other side.  I again traced the outline with a hobby knife.</p>
<div id="attachment_636" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-636" title="Inside painted" src="http://alternet.us.com/wp-content/uploads/2010/01/20100127-DSC_7732.jpg" alt="" width="540" height="807" /><p class="wp-caption-text">Inside painted</p></div>
<p>For some reason, I really like the way this turned out.  It&#8217;s all pretty dark in there, and should minimize reflections.  I also painted the base of the module to match.</p>
<div id="attachment_638" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-638" title="base painted" src="http://alternet.us.com/wp-content/uploads/2010/01/20100127-DSC_7728.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Camera module base painted</p></div>
<p>I think everything came together nicely.  I really like the finished look, even though I was pretty sure that it was going to look weird.  As I mentioned earlier, the lint on the outside paint didn&#8217;t matter.  I put masking tape on the front of the window to protect it while I painted the inside, and it lifted part of the paint when I removed it.  This gave it a strange effect, and I&#8217;m not sure whether I like it or hate it.  Katie says it looks cool, so I&#8217;m leaving it for now.</p>
<p>There should be good (enough) weather this Saturday, so hopefully I&#8217;ll have some video to post!</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=634" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_634_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/634?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_634_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=634&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D634' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=634</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Kadet video downlink</title>
		<link>http://www.alternet.us.com/?p=620</link>
		<comments>http://www.alternet.us.com/?p=620#comments</comments>
		<pubDate>Sun, 24 Jan 2010 04:04:32 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[FPV]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Kadet]]></category>
		<category><![CDATA[LT-25]]></category>
		<category><![CDATA[Mods]]></category>
		<category><![CDATA[SIG]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=620</guid>
		<description><![CDATA[I&#8217;ve just finished building a camera module for my Kadet.  When I was building the plane I knew that I was going to try and put a camera and transmitter approximately where the pilot&#8217;s head would be in a real plane.  That means a couple of things:  First, it&#8217;s pretty cramped up there with the [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_626" class="wp-caption aligncenter" style="width: 550px"></p>
<div class="mceTemp mceIEcenter">
<div><img class="size-full wp-image-626" title="Camera installed with Transmitter" src="http://alternet.us.com/wp-content/uploads/2010/01/20100123-DSC_7702.jpg" alt="" width="540" height="361" /></div>
</div>
<p><p class="wp-caption-text">Camera installed with Transmitter</p></div>
<p>I&#8217;ve just finished building a camera module for my Kadet.  When I was building the plane I knew that I was going to try and put a camera and transmitter approximately where the pilot&#8217;s head would be in a real plane.  <span id="more-620"></span>That means a couple of things:  First, it&#8217;s pretty cramped up there with the flight pack, speed control, and motor.  Second, it&#8217;s a bit of a dirty secret, but forward visibility is usually not so great in most planes.  I tried to mount the camera as high as possible, but the front of the lens keeps hitting the glass.  I was able to get most of the view clear, but there is a margin on the bottom of the frame that is obscured by the wooden frame.  I will probably install some LEDs there to monitor battery charge, current, etc&#8230;</p>
<div id="attachment_629" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-629" title="Outer frame of kadet camera" src="http://alternet.us.com/wp-content/uploads/2010/01/20100118-DSC_7634.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Outer frame of camera module</p></div>
<p>To build the outer frame of the camera module, I traced the shape of the wooden windshield onto a piece of acrylic.  After cutting it out I traced the inside of the fuselage onto balsa.  I cut out two side pieces and just glued them onto the acrylic.  I had to cut a notch into the back side of it to make room for the dowel that the wing rubber bands stretch over.  You can see how it fits in the first photo that I posted.</p>
<div id="attachment_628" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-628" title="Camera mounted on bottom plate" src="http://alternet.us.com/wp-content/uploads/2010/01/20100118-DSC_7635.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Camera mounted on bottom plate</p></div>
<p>I made a bottom plate by tracing the outer frame onto a piece of balsa.  Then, I took some balsa stick and made some uprights.  After drilling holes for the screws I soaked some thin CA into the sticks to keep them from splitting.</p>
<div id="attachment_627" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-627" title="Camera module complete" src="http://alternet.us.com/wp-content/uploads/2010/01/20100118-DSC_7636.jpg" alt="" width="540" height="361" /><p class="wp-caption-text">Camera module complete</p></div>
<p>The image above is the completed camera module.  At this point, there aren&#8217;t any electronics other than the camera module.  If you look really close, you can see the hole in the top of the windscreen on the top-left (the plane&#8217;s right).  This is for the video transmitter&#8217;s antenna.</p>
<div id="attachment_631" class="wp-caption aligncenter" style="width: 538px"><img class="size-full wp-image-631" title="Camera module schematic" src="http://alternet.us.com/wp-content/uploads/2010/01/camera_schematic.png" alt="" width="528" height="285" /><p class="wp-caption-text">Camera module schematic</p></div>
<p>The schematic for the camera/transmitter circuit is pretty straightforward.  The main consideration is that the camera and transmitter require different voltages.  The camera works best around 12 volts, and the transmitter uses 9 volts.  I only wanted to use one battery, so I had to make a voltage regulator.  I used my old standby, the LM317.  I also wanted to be able to adjust the transmitter voltage, so I added a potentiometer.  The transmitter came with a RCA plug and the camera had a BNC plug on a long cable.  I wanted to get rid of all this extra bulk, so I cut them off and connected them using the circuit board, also.</p>
<div id="attachment_623" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-623" title="RCA Bunny ear antenna" src="http://alternet.us.com/wp-content/uploads/2010/01/20100123-DSC_7712.jpg" alt="" width="540" height="807" /><p class="wp-caption-text">RCA Bunny ear antenna</p></div>
<p>The transmitter works on 433.92 Mhz, which is surprisingly hard to find in consumer products.  The obvious reason is that it&#8217;s in the amateur radio band.  But, 433.92 is actually channel 59 on cable.  This means that you can use a commercially available USB TV tuner to receive the video.  With that in mind, I gathered a few antennas to try.  The above photo is an antenna I bought to try.  It&#8217;s a VHF/UHF type from radio shack, I think.  I just went for the cheapest available.  I also looked for some antennas with &#8220;preamplifiers&#8221;, but I haven&#8217;t found any that amplify the 400 Mhz band.</p>
<div id="attachment_622" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-622" title="Whip antenna" src="http://alternet.us.com/wp-content/uploads/2010/01/20100123-DSC_7713.jpg" alt="" width="540" height="807" /><p class="wp-caption-text">Whip antenna</p></div>
<p>I also tried a whip antenna from an old 900 mhz wireless video system.  It&#8217;s not tuned anywhere near 400 mhz, but I&#8217;ve been lucky before.</p>
<div class="wp-caption aligncenter" style="width: 435px"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/S7BqRtE_dQI&amp;hl=en_US&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/S7BqRtE_dQI&amp;hl=en_US&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object><p class="wp-caption-text">Antenna comparison</p></div>
<p>I embedded a YouTube video of me walking around the house using each antenna.  The bunny ears are much better than the whip antenna.  The good thing about the whip is that I may be able to make another whip that is tuned correctly.  If the weather&#8217;s good tomorrow, I&#8217;ll probably try it out.  I&#8217;m pretty excited!</p>
<p><strong>Update:  <span style="font-weight: normal;">There have been a few successful flights recorded with the downlink.  The <a href="http://alternet.us.com/?p=645" target="_blank" rel='nofollow'>first video</a> was pretty static-y, then I made a new <a href="http://alternet.us.com/?p=650" target="_blank" rel='nofollow'>antenna</a>, and now the <a title="New Videos" href="http://alternet.us.com/?p=672" target="_blank" rel='nofollow'>videos are much better</a>.</span></strong></p>
<p><strong><span style="font-weight: normal;"><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></span></strong></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=620" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_620_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/620?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_620_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=620&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D620' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=620</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Kadet update (and BCRCC Polar Bear)</title>
		<link>http://www.alternet.us.com/?p=604</link>
		<comments>http://www.alternet.us.com/?p=604#comments</comments>
		<pubDate>Mon, 04 Jan 2010 02:05:44 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Radio Control]]></category>
		<category><![CDATA[Blade mSR]]></category>
		<category><![CDATA[Corvallis]]></category>
		<category><![CDATA[Funtana]]></category>
		<category><![CDATA[Helicopter]]></category>
		<category><![CDATA[Kadet]]></category>
		<category><![CDATA[LT-25]]></category>
		<category><![CDATA[oregon]]></category>
		<category><![CDATA[SIG]]></category>
		<category><![CDATA[Updates]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=604</guid>
		<description><![CDATA[I&#8217;m back from the third (and fourth) flight, and it keeps getting better!  On Friday (New Years Day) I went to the BCRCC (Benton County Radio Control Club) &#8220;Polar Bear&#8221; event.  Basically, the idea is: On new years day, rain or shine, everyone comes and flies something.  There is a raffle for all those that [...]]]></description>
				<content:encoded><![CDATA[<div id="attachment_605" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-605" title="Polar Bear" src="http://alternet.us.com/wp-content/uploads/2010/01/20100101-DSC_7451.jpg" alt="" width="540" height="242" /><p class="wp-caption-text">Ready to fly at the BCRCC Polar Bear</p></div>
<p>I&#8217;m back from the third (and fourth) flight, and it keeps getting better!  On Friday (New Years Day) I went to the BCRCC (<a href="http://bentoncountyrc.org/home" target="_blank" rel='nofollow'>Benton County Radio Control Club</a>) &#8220;Polar Bear&#8221; event.  Basically, the idea is: On new years day, rain or shine, everyone comes and flies something.  There is a raffle for all those that fly.  I brought the Kadet, mostly because that&#8217;s the only plane I have, and the tiny Blade mSR that I got for X-mas.<span id="more-604"></span></p>
<div id="attachment_606" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-606" title="Blade mSR in flight" src="http://alternet.us.com/wp-content/uploads/2010/01/20091225-DSC_7432.jpg" alt="" width="540" height="324" /><p class="wp-caption-text">Micro-heli flying</p></div>
<p>The Kadet&#8217;s second flight was somewhat uneventful.  Flying during an event invariably leads to crowded skies, because I didn&#8217;t have the runway to myself I just tried to stay out of people&#8217;s way.  I was still pretty unfamiliar with my plane so it was nerve-wracking.  Luckily I did a good job landing with all those people watching <img src='http://www.alternet.us.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Today, I went back to the field with my Kadet, and a new plane that I got at the BCRCC auction for $20 in November.  It&#8217;s a &#8220;Funtana Mini&#8221; made by E-flite that has since been discontinued.  Since the auction, I&#8217;ve been slowly getting the parts I needed to complete it, including a receiver and servos.  I reused the motor from another plane that is no longer with us.</p>
<div id="attachment_609" class="wp-caption aligncenter" style="width: 550px"><img class="size-full wp-image-609" title="Funtana hanging up" src="http://alternet.us.com/wp-content/uploads/2010/01/20100103-DSC_7508.jpg" alt="" width="540" height="301" /><p class="wp-caption-text">My new sport plane</p></div>
<p>I piloted it on its maiden flight today.  It is extremely twitchy, even on low rates.  Also, something I didn&#8217;t expect was how hard it would be to land it.  It requires a fairly high airspeed to maintain altitude, and there isn&#8217;t much frontal area to slow it down, so the landing was fast.  I wasn&#8217;t able to stop it by the end of the runway so it spent some time in the mud.  Nothing was damaged, but the mud at the airstrip is very stinky.  The second flight was more fun, I actually did some aerobatics.  I still had trouble bringing it down, though.</p>
<p>I wasn&#8217;t satisfied with the prop I was using in the first flight test, which was an 11&#215;7 APC E-series.  I bought 2 more, one with higher pitch speed (for the uninitiated, &#8220;pitch speed&#8221; is the number of inches a propeller would travel forward in one revolution in an ideal fluid) and the same thrust (which how hard it &#8220;pulls&#8221;), which I think is an 11&#215;8.5 E-series, and one with the same pitch speed and more thrust; a 12&#215;7 E-series, I think.  I tried the one with more pitch speed first, and I&#8217;m not rushing to try the other one.  I&#8217;m quite happy with the performance as it is.  At full-throttle I can climb-out at 45°, and at 1/4 throttle I can maintain altitude and speed.  I&#8217;m also very happy with the observed endurance.  I ran the stop-watch on my radio during the second flight of the day while doing non-stop touch-and-go&#8217;s, and after 12 minutes of flying called it quits.  The resting battery voltage on my 3S 2100 mAh LiPo was 11.4 volts.  This roughly corresponds to 20% of the pack power remaining.  With this knowledge in hand I know that I can set the count-down timer on my radio to 12 minutes and not stress-out my batteries too much.</p>
<p>Altogether, it was a good (long) weekend of flying!</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=604" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_604_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/604?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_604_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=604&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D604' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=604</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to hand-solder a Micrel module (don&#8217;t)</title>
		<link>http://www.alternet.us.com/?p=592</link>
		<comments>http://www.alternet.us.com/?p=592#comments</comments>
		<pubDate>Thu, 19 Nov 2009 05:28:20 +0000</pubDate>
		<dc:creator>hpux735</dc:creator>
				<category><![CDATA[Electronics Projects]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[amateur radio]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[HAM]]></category>
		<category><![CDATA[Kadet]]></category>
		<category><![CDATA[Serial]]></category>
		<category><![CDATA[Soldering]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Wireless]]></category>

		<guid isPermaLink="false">http://alternet.us.com/?p=592</guid>
		<description><![CDATA[I&#8217;ve been developing a RF transceiver for use with my Kadet.  I really like these Micrel RadioWire modules, but they basically must be reflow soldered.  They&#8217;re also about $16/ea. in single unit quantities, so I want to make sure that the carrier PCB works before I solder on the module (I&#8217;ve made that mistake already!). [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve been developing a RF transceiver for use with my <a href="http://alternet.us.com/?p=488" target="_blank" rel='nofollow'>Kadet</a>.  I really like these <a href="http://www.micrel.com/page.do?page=product-info/radiowire_bluechip.shtml" target="_blank" rel='nofollow'>Micrel RadioWire modules</a>, but they basically must be reflow soldered.  They&#8217;re also about $16/ea. in single unit quantities, so I want to make sure that the carrier PCB works before I solder on the module (I&#8217;ve made that mistake already!).  With that in mind, I had to figure out how to solder the module on after all the other components were installed.  This means hand soldering.  Looking on the datasheet, they say that it can be done, using solder paste.  So, here&#8217;s documentation of my attempt.</p>
<div id="attachment_581" class="wp-caption aligncenter" style="width: 590px"><a rel="attachment wp-att-581" href="http://alternet.us.com/?attachment_id=581" rel='nofollow'><img class="size-full wp-image-581" title="20091118-DSC_5372" src="http://alternet.us.com/wp-content/uploads/2009/11/20091118-DSC_5372.jpg" alt="PCB ready for module" width="580" height="338" /></a><p class="wp-caption-text">PCB ready for module</p></div>
<p><span id="more-592"></span>This is the starting point.  I cleaned the surface with isopropyl alcohol (IPA).</p>
<div id="attachment_583" class="wp-caption aligncenter" style="width: 590px"><a rel="attachment wp-att-583" href="http://alternet.us.com/?attachment_id=583" rel='nofollow'><img class="size-full wp-image-583" title="20091118-DSC_5374" src="http://alternet.us.com/wp-content/uploads/2009/11/20091118-DSC_5374.jpg" alt="Solder paste applied" width="580" height="376" /></a><p class="wp-caption-text">Solder paste applied</p></div>
<p>I applied the solder paste as normal, and cleaned the module with IPA as well.</p>
<div id="attachment_584" class="wp-caption aligncenter" style="width: 590px"><a rel="attachment wp-att-584" href="http://alternet.us.com/?attachment_id=584" rel='nofollow'><img class="size-full wp-image-584" title="20091118-DSC_5375" src="http://alternet.us.com/wp-content/uploads/2009/11/20091118-DSC_5375.jpg" alt="Module seated, waiting for heating" width="580" height="352" /></a><p class="wp-caption-text">Module seated, waiting for heating</p></div>
<p>This is just before heating the pads with a soldering iron.  I heated each one until the solder melted, but it didn&#8217;t bond with the module.  Before I got too far, I removed the module and examined the results.</p>
<div id="attachment_585" class="wp-caption aligncenter" style="width: 590px"><a rel="attachment wp-att-585" href="http://alternet.us.com/?attachment_id=585" rel='nofollow'><img class="size-full wp-image-585" title="20091118-DSC_5379" src="http://alternet.us.com/wp-content/uploads/2009/11/20091118-DSC_5379.jpg" alt="Results of the first attempt" width="580" height="374" /></a><p class="wp-caption-text">Results of the first attempt</p></div>
<p>I cleaned all the surfaces with solder wick and IPA, and tried again.</p>
<div id="attachment_588" class="wp-caption aligncenter" style="width: 590px"><a rel="attachment wp-att-588" href="http://alternet.us.com/?attachment_id=588" rel='nofollow'><img class="size-full wp-image-588" title="20091118-DSC_5382" src="http://alternet.us.com/wp-content/uploads/2009/11/20091118-DSC_5382.jpg" alt="Results of attempt two" width="580" height="345" /></a><p class="wp-caption-text">Results of attempt two</p></div>
<p>This time, I held the soldering iron on each pad for much longer.  The solder bonded to the module and the PCB, and it held tight.  However, I took a multimeter to it, checking for continuity.  Nearly every pad was shorted with it&#8217;s neighbor.  This sucks.</p>
<div id="attachment_589" class="wp-caption aligncenter" style="width: 590px"><a rel="attachment wp-att-589" href="http://alternet.us.com/?attachment_id=589" rel='nofollow'><img class="size-full wp-image-589" title="20091118-DSC_5383" src="http://alternet.us.com/wp-content/uploads/2009/11/20091118-DSC_5383.jpg" alt="Another view of try two" width="580" height="419" /></a><p class="wp-caption-text">Another view of try two</p></div>
<p>With the module throughly bonded with the PCB, and no way to remove it and try again, I decided to try the hail-mary.  I figured that at this point, unless I could think of something, the whole thing was ruined.  With that in mind, I decided to try to reflow the whole thing.  I really had no idea if it was going to screw everything up, especially the FTDI chip on the bottom of the board.</p>
<div id="attachment_591" class="wp-caption aligncenter" style="width: 590px"><a rel="attachment wp-att-591" href="http://alternet.us.com/?attachment_id=591" rel='nofollow'><img class="size-full wp-image-591" title="20091118-DSC_5388" src="http://alternet.us.com/wp-content/uploads/2009/11/20091118-DSC_5388.jpg" alt="During reflow" width="580" height="364" /></a><p class="wp-caption-text">During reflow</p></div>
<p>The reflow went well, I&#8217;m pleased with the look of everything.  I also confirmed that the pins are electrically isolated.  Also, on first glance, everything seems to work.  The microcontroller and USB-to-serial chip still work.  I really just need to verify that the transceiver module works, and it will be a complete success.</p>
<p>The moral of the story is:  Don&#8217;t attempt to hand-solder the Micrel module.  It probably won&#8217;t work.  On the other hand, if you do get it to work, drop me a line, I&#8217;d like to know how.</p>
<p><hr /><p><center><script type="text/javascript"><!--
google_ad_client = "ca-pub-8731257147212376";
google_ad_slot = "3220239597";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</center></p><hr /></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.alternet.us.com/?p=592" target="_blank" title="Share on Facebook" rel='nofollow'>Share on Facebook</a></p><p><map name='google_ad_map_592_866c3fbe25ae756b'>
<area shape='rect' href='http://imageads.googleadservices.com/pagead/imgclick/592?pos=0' coords='1,2,367,28' />
<area shape='rect' href='http://services.google.com/feedback/abg' coords='384,10,453,23'/></map>
<img usemap='#google_ad_map_592_866c3fbe25ae756b' border='0' src='http://imageads.googleadservices.com/pagead/ads?format=468x30_aff_img&amp;client=&amp;channel=&amp;output=png&amp;cuid=592&amp;url= http%3A%2F%2Fwww.alternet.us.com%2F%3Fp%3D592' /></p>]]></content:encoded>
			<wfw:commentRss>http://www.alternet.us.com/?feed=rss2&#038;p=592</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
