<?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>robotguy.net/Blog &#187; Mirf</title>
	<atom:link href="http://robotguy.net/blog/index.php/category/mirf/feed/" rel="self" type="application/rss+xml" />
	<link>http://robotguy.net/blog</link>
	<description>Robotics &#038; Electronics gone bad</description>
	<lastBuildDate>Fri, 24 Jun 2011 19:43:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>From the &#8220;Because I can&#8221; Department&#8230;</title>
		<link>http://robotguy.net/blog/2007/02/25/from-the-because-i-can-department/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=from-the-because-i-can-department</link>
		<comments>http://robotguy.net/blog/2007/02/25/from-the-because-i-can-department/#comments</comments>
		<pubDate>Sun, 25 Feb 2007 08:51:53 +0000</pubDate>
		<dc:creator>Robotguy</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[lcd]]></category>
		<category><![CDATA[Mirf]]></category>
		<category><![CDATA[NRF24L01]]></category>
		<category><![CDATA[pda]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[RF]]></category>

		<guid isPermaLink="false">http://robotguy.net/blog/2007/02/25/from-the-because-i-can-department/</guid>
		<description><![CDATA[While waiting for my RF boards to arrive from Sparkfun, I started another project (ooh, look! Something shiny!). I have always liked building things that I could carry around with me, so I decided to build my own PDA. I had the graphic LCD and plenty of processors laying around. I figured adding an RF [...]]]></description>
			<content:encoded><![CDATA[<p>While waiting for my RF boards to arrive from <a title="http://www.sparkfun.com/commerce/categories.php" target="_blank" href="http://www.sparkfun.com/commerce/categories.php">Sparkfun</a>, I started another project (<a target="_blank" title="http://www.sluggy.com/daily.php?date=980919" href="http://www.sluggy.com/daily.php?date=980919">ooh, look! Something shiny!</a>). I have always liked building things that I could carry around with me, so I decided to build my own PDA. I had the graphic LCD and plenty of processors laying around. I figured adding an RF link back to the PC would not only make it more functional but also help produce code that would be useful for the Spoka project. I also figured that I could combine it with my <a target="_blank" title="http://en.wikipedia.org/wiki/Tricorder" href="http://en.wikipedia.org/wiki/Tricorder">Tricorder</a> project (<a target="_blank" title="http://robotguy.net/notebook2-3.html" href="http://robotguy.net/notebook2-3.html">notebook pages 3-12</a>) and add as many sensors as I could fit in this little <a target="_blank" title="http://www.okwenclosures.com/products/okw/soft-case.htm" href="http://www.okwenclosures.com/products/okw/soft-case.htm">OKW enclosure</a>.<br />
<a title="http://www.robotguy.net/pda/pda_inside.jpg" target="_blank" href="http://www.robotguy.net/pda/pda_inside.jpg"><img title="Inside" alt="Inside" src="http://www.robotguy.net/pda/th_pda_inside.jpg" /> </a>   <a title="http://www.robotguy.net/pda/pda_hand.jpg" target="_blank" href="http://www.robotguy.net/pda/pda_hand.jpg"><img title="Size Comparison" alt="Size Comparison" src="http://www.robotguy.net/pda/th_pda_hand.jpg" /></a>   <a title="http://www.robotguy.net/pda/pda_screen.jpg" target="_blank" href="http://www.robotguy.net/pda/pda_screen.jpg"><img title="Screenshot" alt="Screenshot" src="http://www.robotguy.net/pda/th_pda_screen.jpg" /></a>   <a title="http://www.robotguy.net/pda/pc_base.jpg" target="_blank" href="http://www.robotguy.net/pda/pc_base.jpg"><img title="PC RF Base" alt="PC RF Base" src="http://www.robotguy.net/pda/th_pc_base.jpg" /></a></p>
<p>The processor is an <a target="_blank" title="http://www.atmel.com/dyn/products/product_card.asp?family_id=607&#038;family_name=AVR+8%2DBit+RISC+&#038;part_id=2014" href="http://www.atmel.com/dyn/products/product_card.asp?family_id=607&#038;family_name=AVR+8%2DBit+RISC+&#038;part_id=2014">ATMega32</a>.  I have added a <a title="http://www.sparkfun.com/commerce/product_info.php?products_id=710" target="_blank" href="http://www.sparkfun.com/commerce/product_info.php?products_id=710">128 X 64 graphic LCD</a>, a <a title="http://www.sparkfun.com/commerce/product_info.php?products_id=691" target="_blank" href="http://www.sparkfun.com/commerce/product_info.php?products_id=691">2.4GHz RF Transceiver</a>, <a target="_blank" title="http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2686" href="http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2686">battery-backed real time clock</a>, <a target="_blank" title="http://www.analog.com/en/prod/0%2C2877%2CADXL320%2C00.html" href="http://www.analog.com/en/prod/0%2C2877%2CADXL320%2C00.html">2 axis accelerometer</a>, <a title="http://www.allegromicro.com/sf/3515/" target="_blank" href="http://www.allegromicro.com/sf/3515/">linear Hall effect sensor</a>, and a white led flashlight. The <a title="http://www.junun.org/MarkIII/Info.jsp?item=46" target="_blank" href="http://www.junun.org/MarkIII/Info.jsp?item=46">IR receiver</a> is not connected yet. I still plan to add an RGB color sensor and an IR transmitter.</p>
<p>The source code was compiled with <a target="_blank" title="http://winavr.sourceforge.net/" href="http://winavr.sourceforge.net/">WinAVR</a> and is available <a target="_blank" title="http://robotguy.net/pda/code/" href="http://robotguy.net/pda/code/">here</a>. The library for the graphic LCD is from Gregor Horvat (<a target="_blank" title="http://www.indata.si/grega/" href="http://www.indata.si/grega/">http://www.indata.si/grega/</a>) for the compatible HD61202 controller. After updating a few deprecated commands, it worked first time! I can&#8217;t remember where I got the library for the DS1307 clock that I converted for the DS1305. If anyone recognizes it, please let me know. The defines for the NRF24L01 came from <a title="http://forum.sparkfun.com/viewtopic.php?t=6202" target="_blank" href="http://forum.sparkfun.com/viewtopic.php?t=6202">S. Brennen Ball</a>.</p>
<p>As you might be able to see from the screenshot, I am currently reading the battery voltage (upper left), magnetic field strength (upper right), x and y acceleration (lower left), and the current time (lower right). The cross-hairs and &#8220;bubble&#8221; in the center of the screen form a  2-axis level. See the picture of it in my hand for an example with the unit tilted on one axis. The RF transceiver is working well and capable of exchanging data with a <a title="http://www.robotguy.net/pda/pc_base.jpg" target="_blank" href="http://www.robotguy.net/pda/pc_base.jpg">PC base unit</a> that connects via serial at 115200 baud.</p>
<p>(BTW, my order arrived from Sparkfun, but I&#8217;m having so much fun with this project, I may not get back to Spoka)</p>
]]></content:encoded>
			<wfw:commentRss>http://robotguy.net/blog/2007/02/25/from-the-because-i-can-department/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Watson, come here. I want to see you!</title>
		<link>http://robotguy.net/blog/2007/02/09/watson-come-here-i-want-to-see-you/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=watson-come-here-i-want-to-see-you</link>
		<comments>http://robotguy.net/blog/2007/02/09/watson-come-here-i-want-to-see-you/#comments</comments>
		<pubDate>Fri, 09 Feb 2007 16:58:00 +0000</pubDate>
		<dc:creator>Robotguy</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Mirf]]></category>
		<category><![CDATA[NRF24L01]]></category>
		<category><![CDATA[RF]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://robotguy.net/blog/2007/02/09/watson-come-here-i-want-to-see-you/</guid>
		<description><![CDATA[I finally managed to send some data over the RF link. Somehow I managed to break the printf function, so I only saw the data on the scope as it clocked out of the transceiver on the SPI bus, but it was the correct data. Here&#8217;s a hint if you are using the NRF24L01 chip. [...]]]></description>
			<content:encoded><![CDATA[<p>I finally managed to send some data over the RF link. Somehow I managed to break the <a target="_blank" title="http://hubbard.engr.scu.edu/avr/avrlib/docs/html/group__rprintf.html" href="http://hubbard.engr.scu.edu/avr/avrlib/docs/html/group__rprintf.html">printf</a> function, so I only saw the data on the scope as it clocked out of the transceiver on the SPI bus, but it was the correct data. Here&#8217;s a hint if you are using the <a target="_blank" title="http://www.nvlsi.no/index.cfm?obj=product&#038;act=display&#038;pro=89" href="http://www.nvlsi.no/index.cfm?obj=product&#038;act=display&#038;pro=89">NRF24L01</a> chip. Go to <a target="_blank" title="http://www.nvlsi.no/" href="http://www.nvlsi.no/">the Nordic website</a> and make sure you have the latest datasheet. There is a step by step guide to the minimum config for enhanced shockburst mode. Once I had all of my generic SPI problems worked out, it just fell into place. Now to wrap it all up into a nice library and install it on a <a title="http://www.robotguy.net/#RobotGallery" href="http://www.robotguy.net/#RobotGallery">robot</a>!</p>
<p>P.S. If the title didn&#8217;t make any sense, try <a target="_blank" title="http://www.loc.gov/exhibits/treasures/trr002.html" href="http://www.loc.gov/exhibits/treasures/trr002.html">here</a>. Be sure to check out his <a target="_blank" title="http://lcweb2.loc.gov/cgi-bin/ampage?collId=am-reas&#038;fileName=trr002page.db&#038;recNum=0&#038;itemLink=http://www.loc.gov/exhibits/treasures/trr002.html&#038;linkText=9" href="http://lcweb2.loc.gov/cgi-bin/ampage?collId=am-reas&#038;fileName=trr002page.db&#038;recNum=0&#038;itemLink=http://www.loc.gov/exhibits/treasures/trr002.html&#038;linkText=9">notebook</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://robotguy.net/blog/2007/02/09/watson-come-here-i-want-to-see-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reading the Status Register</title>
		<link>http://robotguy.net/blog/2007/02/07/reading-the-status-register/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=reading-the-status-register</link>
		<comments>http://robotguy.net/blog/2007/02/07/reading-the-status-register/#comments</comments>
		<pubDate>Thu, 08 Feb 2007 05:47:01 +0000</pubDate>
		<dc:creator>Robotguy</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Mirf]]></category>
		<category><![CDATA[NRF24L01]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[RF]]></category>
		<category><![CDATA[Robotics]]></category>

		<guid isPermaLink="false">http://robotguy.net/blog/2007/02/07/reading-the-status-register/</guid>
		<description><![CDATA[After playing around with the idea of getting an SD card running in order to get enough storage for the data structures described in my last post, I decided that it would be better, if not neccessarily easier, to get an RF link up and running and prototype the learning algorithm on the PC. So [...]]]></description>
			<content:encoded><![CDATA[<p>After playing around with the idea of getting an <a target="_blank" title="http://www.sparkfun.com/commerce/product_info.php?products_id=204" href="http://www.sparkfun.com/commerce/product_info.php?products_id=204">SD card</a> running in order to get enough storage for the data structures described in my last post, I decided that it would be better, if not neccessarily easier, to get an RF link up and running and prototype the learning algorithm on the PC. So I pulled out the <a title="http://www.sparkfun.com/commerce/product_info.php?products_id=705" target="_blank" href="http://www.sparkfun.com/commerce/product_info.php?products_id=705">Mirf-V2</a> that I have bought from <a title="http://www.sparkfun.com/" target="_blank" href="http://www.sparkfun.com/">Spark Fun</a> for just such an occasion. After perusing the <a title="http://www.sparkfun.com/cgi-bin/phpbb/" target="_blank" href="http://www.sparkfun.com/cgi-bin/phpbb/">forums</a> for a while I realized that this is a tricky beast to get running, but it should be worth the effort. I also came to the decision that I am not going to hurry, but instead I am going to enjoy the process.</p>
<p>Knowing all of this, I began programming the base unit that will connect to the PC and convert <a title="http://en.wikipedia.org/wiki/Serial_port" target="_blank" href="http://en.wikipedia.org/wiki/Serial_port">serial</a> to <a title="http://en.wikipedia.org/wiki/Serial_Peripheral_Interface" href="http://en.wikipedia.org/wiki/Serial_Peripheral_Interface">SPI</a> for the Mirf. I built this board almost a year ago, and it has an <a title="http://www.atmel.com/dyn/products/product_card.asp?family_id=607&#038;family_name=AVR+8%2DBit+RISC+&#038;part_id=2004" target="_blank" href="http://www.atmel.com/dyn/products/product_card.asp?family_id=607&#038;family_name=AVR+8%2DBit+RISC+&#038;part_id=2004">ATMega8</a>, a <a title="http://www.maxim-ic.com/quick_view2.cfm/qv_pk/1798" target="_blank" href="http://www.maxim-ic.com/quick_view2.cfm/qv_pk/1798">MAX233</a>, a <a title="http://en.wikipedia.org/wiki/7805" target="_blank" href="http://en.wikipedia.org/wiki/7805">7805</a> and a Mirf. I had a little trouble getting the SPI working, but using the scope, I managed to figure out the problem.</p>
<p>Finally knowing that I would need two to tan.. er send data, I wired the Mirf up to an <a title="http://www.sparkfun.com/commerce/product_info.php?products_id=36" target="_blank" href="http://www.sparkfun.com/commerce/product_info.php?products_id=36">ATMega128 breakout board</a> that I also got from sparkfun. Tomorrow I can start writing code that will make the &#8217;128 board send a packet continuously, and receive it with the Mega8 board.</p>
]]></content:encoded>
			<wfw:commentRss>http://robotguy.net/blog/2007/02/07/reading-the-status-register/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

