<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.3" -->
<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/"
	>

<channel>
	<title>Dustin's Weblog</title>
	<link>http://dustin.runnells.name</link>
	<description>The Weblog of Dustin Runnells</description>
	<pubDate>Mon, 05 Apr 2010 03:45:52 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<item>
		<title>OAuth, J2ME and FireEagle</title>
		<link>http://dustin.runnells.name/?p=80</link>
		<comments>http://dustin.runnells.name/?p=80#comments</comments>
		<pubDate>Mon, 05 Apr 2010 03:45:52 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=80</guid>
		<description><![CDATA[Recently I have started developing a web app to do some location based stuff.. but I&#8217;ll save that for another post. The point here is OAuth, J2ME and FireEagle. I don&#8217;t want to loose this information, so I&#8217;m posting it here, maybe it will help someone else someday too:
OAuth - Lots of services offer this [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I have started developing a web app to do some location based stuff.. but I&#8217;ll save that for another post. The point here is OAuth, J2ME and <a href="http://fireeagle.com">FireEagle</a>. I don&#8217;t want to loose this information, so I&#8217;m posting it here, maybe it will help someone else someday too:</p>
<p>OAuth - Lots of services offer this for communicating with their APIs.</p>
<p>J2ME - Java on my phone. I don&#8217;t care for Java much at all and I am not good at it, but I do like the fact that I can write applications for my phone and install them without much hassle.</p>
<p>FireEagle - VERY cool &#8220;Location Broker&#8221; from Yahoo! I love the idea of being able to report my lat/lon to one place and allow other services to retrieve my location information from there to do what they need to with it. Running several apps on my phone that report my location back to whatever service they come from seems kind of stupid. How about one app to report to fireeagle and everyone else can ask fireeagle where i am instead of requiring me to run their own special app!?</p>
<p>There are a few FireEagle applications for J2ME already, but none are light weight enough for me to run on my phone 24 hours a day, most are mapping applications that happen to do FireEagle updates. I wanted just a simple update to FireEagle every so many minutes and if i traveled at all.. and I was stuck trying to write it myself. To talk to FireEagle&#8217;s API I needed to do OAuth in J2ME.. which turned out to be a bigger pain that I had hoped. J2ME is very very stripped down and doesn&#8217;t have any of the methods I needed to do any SHA or other encryption very easily without getting too involved with third party libraries.  Luckily FireEagle&#8217;s OAuth does let you do OAuth with a &#8220;PLAINTEXT&#8221; signature - no encryption needed! These OAuth transactions can happen over SSL, so I&#8217;m comfortable with it. It took me a while to figure out how to do OAuth with plaintext signatures on my own, and I experimented with it using curl first. Here is how I did OAuth for FireEagle using only curl.. hopefully this eventually leads to someone writing a better J2ME FireEagle updater than I have! <img src='http://dustin.runnells.name/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You will need the Consumer Key and Consumer Secret from FireEagle before proceeding. For this example I&#8217;ll use:</p>
<p>Consumer Key: <font color="red"><strong>myConsumerKey</strong></font></p>
<p>Consumer Secret:  <font color="red"><strong>myConsumerSecret</strong></font></p>
<p>And you&#8217;ll need some way to generate a unix timestamp and an &#8220;nonce&#8221;, which can be just a random string that you will never duplicate. Replace all occurrences of &#8220;<font color="#339966">myTime</font>&#8221; and &#8220;<font color="#339966">myNonce</font>&#8221; with something appropriate.</p>
<h3>STEP 1: Retrieve a Request Token:</h3>
<p>Execute:<br clear="none" /></p>
<pre>curl  "https://fireeagle.yahooapis.com/oauth/request_token.json?oauth_consumer_key=<font color="#ff0000">myConsumerKey</font>&amp;oauth_version=1.0&amp;oauth_signature_method=PLAINTEXT&amp;oauth_signature=<font color="red">myConsumerSecret</font>%2526&amp;oauth_timestamp=<font color="green">myTime</font>&amp;oauth_callback=oob&amp;oauth_nonce=<font color="green">myNonce</font>&#8220;</pre>
<p>You should receive a response like:</p>
<pre> oauth_token=<font color="blue">theOauthToken</font>&amp;oauth_token_secret=<font color="blue">theOauthTokenSecret</font>&amp;oauth_callback_confirmed=true</pre>
<p>Your J2ME application will present the oauth_token to the user and ask them to enter it at the mobile auth url that you were given at the same time you got your consumer key and secret, probably something like https://fireeagle.yahoo.net/mobile_auth/12345. After your user enters the oauth_token they will be given a verification code, you will need that verification code from the user along with the oauth_token and oauth_token_secret for the next step.</p>
<h3>STEP 2: Retrieve a more permanent Access Token that you will store for future use when making FireEagle transactions on behalf of your user.</h3>
<p>Execute:</p>
<pre> curl  "https://fireeagle.yahooapis.com/oauth/access_token.xml?oauth_consumer_key=<font color="#ff0000">myConsumerKey</font>&amp;oauth_verifier=<font color="blue">usersVerificationCode</font>&amp;oauth_token=<font color="blue">theOauthToken</font>&amp;oauth_nonce=<font color="green">myNonce</font>&amp;oauth_timestamp=<font color="green">myTime</font>&amp;oauth_signature_method=PLAINTEXT&amp;oauth_version=1.0&amp;oauth_signature=<font color="red">myConsumerSecret</font>%2526<font color="blue">theOauthTokenSecret</font>&#8220;</pre>
<p>You should get a response like:</p>
<pre> oauth_token=<font color="#993366">perminantOauthToken</font>&amp;oauth_token_secret=<font color="#993366">perminantOauthToeknSecret</font></pre>
<p>You can now store <font color="#993366">perminantOauthToken</font> and <font color="#993366">perminantOauthTokenSecret</font> somewhere, you will need them every time you want to do something for this user. You can safely discard of <font color="#0000ff">usersVerificationCode</font> and <font color="#0000ff">theOauthToken</font> and <font color="#0000ff">theOauthTokenSecret</font> from earlier.</p>
<h3>Step 3: Do something with the FireEagle API!</h3>
<p>For example, if you want to post updated coordinates to FireEagle you can do so with the information you now have without encrypting anything with complex methods that will be difficult to reproduce in a simple J2ME application. Some FireEagle API methods  will require you to make a http POST request, which you can still do with curl for experimentation. Lets say your the coordinates you want to set are:</p>
<p>lon=<font color="#ff6600">-77.409813</font><br clear="none" />lat=<font color="#ff6600">43.201931</font></p>
<p>You can update FireEagle with that information by executing:</p>
<pre> curl "oauth_consumer_key=<font color="#ff0000">myConsumerKey</font>&amp;oauth_token=<font color="#800080">perminantOauthToken</font>&amp;lon=<font color="#ff6600">-77.409813</font>&amp;lat=<font color="#ff6600">43.201931</font>&amp;oauth_nonce=<font color="green">myNonce</font>&amp;oauth_timestamp=<font color="green">myTime</font>&amp;oauth_signature_method=PLAINTEXT&amp;oauth_version=1.0&amp;oauth_signature=<font color="red">myConsumerSecret</font>%2526<font color="#800080">myPerminantOauthTokenSecret</font>&#8221; https://fireeagle.yahooapis.com/api/0.1/update</pre>
<p>If all went well you will get something like:</p>
<p><br clear="none" /></p>
<pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;</pre>
<pre>&lt;rsp stat="ok"&gt;</pre>
<pre>  &lt;user  token="bba6Y0a86WaV" located-at="2010-03-24T05:37:59-07:00"/&gt;</pre>
<pre>&lt;/rsp&gt;</pre>
<pre>&lt;!-- api1.bh.sp1.yahoo.net  uncompressed/chunked Wed Mar 24 05:37:59 PDT 2010 --&gt;</pre>
<pre></pre>
<p>And that covers it.. with that I was able to write up a crude J2ME FireEagle updater. Hopefully this helps someone someday!</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=80</wfw:commentRss>
		</item>
		<item>
		<title>Vacation!</title>
		<link>http://dustin.runnells.name/?p=79</link>
		<comments>http://dustin.runnells.name/?p=79#comments</comments>
		<pubDate>Fri, 11 Dec 2009 22:39:33 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Personal]]></category>

		<category><![CDATA[Technology]]></category>

		<category><![CDATA[cat]]></category>

		<category><![CDATA[eternity]]></category>

		<category><![CDATA[evernote]]></category>

		<category><![CDATA[j2me]]></category>

		<category><![CDATA[kia]]></category>

		<category><![CDATA[medication]]></category>

		<category><![CDATA[morgan]]></category>

		<category><![CDATA[samsung]]></category>

		<category><![CDATA[sawyer]]></category>

		<category><![CDATA[van]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=79</guid>
		<description><![CDATA[Its 5:30 and I now have a week off! Since its been a nice long four months since my last post I guess I have some catching up to do.. and will probably miss most of the important stuff, if there was any. If you follow me on Twitter or Facebook this is all stuff [...]]]></description>
			<content:encoded><![CDATA[<p>Its 5:30 and I now have a week off! Since its been a nice long four months since my last post I guess I have some catching up to do.. and will probably miss most of the important stuff, if there was any. If you follow me on Twitter or Facebook this is all stuff you probably already know <img src='http://dustin.runnells.name/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Family Events: The kids are growing fast! Sawyer is talking about everything AND he plays a few games on the Wii and a racing game on Xbox. I think that he also said his first swear word.. but we are going to try and forget about that. Morgan is even starting to <a href="http://www.flickr.com/photos/drunnells/4158931580/">play the Wii</a> and doing a little bit of talking now, she has a few words down pretty good including &#8220;Dada&#8221;, &#8220;Mama&#8221;, &#8220;Baba&#8221;, &#8220;Kitty&#8221;, &#8220;Hot&#8221;, &#8220;Cold&#8221; and &#8220;Meow&#8221;. I don&#8217;t think that the kids are huge Thomas The Train fans, but we have an electronic Thomas train set that we will be buying additional track and cars for to give on Christmas that we all enjoy playing with. OH, AND we found out that our baby due in April will be a BOY!  We are planning to do a home birth again if all continues to go smoothly, the only pain about that (for me anyway) is the insurance company - CIGNA. When Morgan was born in 2008 UnitedHealthcare covered us 100% after only a little back-and-fourth. CIGNA on the other hand is not being as nice about it.. but I think that NY State law is on our side and we will be covered in the end.With the third child on the way we needed to upgrade Kim&#8217;s truck to a van - a Kia. So on top of all of our other bills, we now have a more expensive auto-loan to pay for. Oh well.. I&#8217;m getting used to the debt and being poor I guess. To add to that, we now have a cat with no name.. exactly what vowed never to get after having to find a new home for our ferrets when Sawyer was born, but sometimes family life isn&#8217;t about me and what I believe are the right choices I guess! Seemingly related to all this, but possibly not, I am now on blood pressure medication to try and control my chronic high blood pressure.. something my doctor and I had talked about years ago, but I initially resisted.. but I don&#8217;t think that I can put it off any longer. So far it seems to be going well.. we&#8217;ll see though.</p>
<p>Other: I&#8217;ve been trying to do some &#8220;casual&#8221; life-logging lately to keep a digital record of things that I would usually forget, but might need to recall someday. I&#8217;ve been using a free <a href="http://evernote.com">Evernote</a> account for this, and so far it has been pretty awesome. I can scan in documents, or jot them down with my <a href="http://livescribe.com">Livescribe</a> pen and be able to search for text within them from their web gui or my phone! I&#8217;ve also tried to tie it together with my social media accounts using <a href="http://tarpipe.com">Tarpipe</a>, which is another cool site that I would recommend if you use Evernote, <a href="http://www.flickr.com/photos/drunnells">Flickr</a>, <a href="http://twitter.com">Twitter</a>, <a href="http://facebook.com/drunnells">Facebook</a>, <a href="http://del.icio.us/drunnell">Delicious</a> and other such sites. For this vacation I have a pile of tasks that I&#8217;ve been trying to keep track of with <a href="http://rememberthemilk.com">RememberTheMilk.com</a>.. we&#8217;ll see how well it works out as a to-do list over the next 9 days.</p>
<p>Oh yeah, I also tried some J2ME programming for my phone over the last couple months. If anyone is interested I wrote a little app to run in the background while you take pictures with the Samsung Eternity to geoTag your photos. I posted it <a href="http://www.samsung-eternity.com/index.php?topic=7278.0">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=79</wfw:commentRss>
		</item>
		<item>
		<title>Almost Did Mt. Marcy</title>
		<link>http://dustin.runnells.name/?p=78</link>
		<comments>http://dustin.runnells.name/?p=78#comments</comments>
		<pubDate>Wed, 05 Aug 2009 01:31:19 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=78</guid>
		<description><![CDATA[

I took last Thursday and Friday off to climb Mt Marcy with a friend. We got off to a late start because we traveled from Rochester, NY to Keene, NY through the night because the weather called for rain on Friday. With Thursday being the only day to make this work, we didn’t even get [...]]]></description>
			<content:encoded><![CDATA[<div class="goalimage"><a href="http://media.43places.com/entry/559680xl.jpg"><img src="http://media.43places.com/entry/559680pw400.jpg" class="goalimagetag" alt="" /></a></div>
<div class="goalentry">
<p>I took last Thursday and Friday off to climb Mt Marcy with a friend. We got off to a late start because we traveled from Rochester, NY to Keene, NY through the night because the weather called for rain on Friday. With Thursday being the only day to make this work, we didn’t even get on the trail until after noon. Luckily we found out that the trail split to the summit of Mt Marcy or Mt Phelps three or four miles in. Since we had pretty much no chance of reaching the top of Mt Marcy and getting back before dark we took the path to Mt Phelps. The last mile was a killer, but we did it! The last couple of miles on the way back was in the dark however. Next time it will be Mt Marcy – for real!</p>
</div>
<div class="goalprogresslink">See more progress on: <a href="http://www.43things.com/people/progress/drunnells/13316773">Climb Mount Marcy</a></div>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=78</wfw:commentRss>
		</item>
		<item>
		<title>New Phone!</title>
		<link>http://dustin.runnells.name/?p=77</link>
		<comments>http://dustin.runnells.name/?p=77#comments</comments>
		<pubDate>Mon, 06 Jul 2009 19:55:22 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[phone]]></category>

		<category><![CDATA[Samsung Eternity]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=77</guid>
		<description><![CDATA[Last month I finally upgraded my Sony S710a to a Samsung Eternity (SGH-A867). I had been eying the iPhone for a while, and I know a few people that have one, but there were a couple of things that I just couldn&#8217;t get past when picking a new phone. The iPhone is WAY cool for [...]]]></description>
			<content:encoded><![CDATA[<p>Last month I finally upgraded my Sony S710a to a <a href="http://www.wireless.att.com/cell-phone-service/cell-phone-details/?device=samsung+eternity&amp;q_sku=sku3130239">Samsung Eternity (SGH-A867)</a>. I had been eying the iPhone for a while, and I know a few people that have one, but there were a couple of things that I just couldn&#8217;t get past when picking a new phone. The iPhone is WAY cool for sure, but I don&#8217;t use MS Windows at all for anything.. period, and I&#8217;m afraid to get the full awesomeness out of the iPhone I would be tied to itunes running on a windows machine. I have an iPod, and use it frequently with gtkpod on my Linux workstation, but the iPhone does soo much more that I think I&#8217;d just be missing out.  With Apple intentionally making 3rd party interaction with their devices difficult and (at the time) Bluetooth being crippled was enough to make me look at other phones.</p>
<p>So anyway, the Eternity is pretty enough and touchscreeny enough for me to feel like I&#8217;m living in 2009 AND bluetooth wasn&#8217;t crippled. My requirements for the new phone were: Bluetooth, GPS, run J2ME apps, camera and not be a Windows device. I thought the out-of-the-box Eternity would do all of that.. but unfortunately AT&amp;T restricted the GPS on it. Everything else worked great though! I lived without the GPS for a couple of weeks, and then the good folks at samsung-eternity.com came up with a great hack to get free gps going with 3rd party apps! You can go read all about it <a href="http://www.samsung-eternity.com/index.php/topic,4711.0.html">here</a>, but in short all you have to do to get <a href="http://www.mgmaps.com/" title="Mobile Gmaps">Mobile GMaps</a> and <a href="http://www.amazegps.com/" title="amAze GPS">amAze GPS</a> going is to use a usb cable to get to your phone with TKFileExplorer (or Bitpim) and remove everything in the exe/java/games/&lt;yourapp&gt;/appdb directory and the exe/java/games/&lt;yourapp&gt;/MANIFEST.MF file. If you are on linux you can try to get Bitpim to do the job, but after trying for a couple hours to get all of its Python dependancies working I gave up and ran TKFileExplorer through wine.. you can read about doing that in my post <a href="http://www.samsung-eternity.com/index.php/topic,4696.msg35725.html#msg35725">here</a>.</p>
<p>I&#8217;d love to rant about how pissed I was about AT&amp;T locking the GPS to their own stupid nav service, but was unable to keep that level of emotion after finding the above hack. But seriously, I was angry at the world.. do they want people to just buy iPhones that are not as restricted? Why wouldn&#8217;t Samsung be upset about this? Oh  well.. I&#8217;m happy now, and thats all that matters. AT&amp;T can still go to hell though.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=77</wfw:commentRss>
		</item>
		<item>
		<title>2009 Is Half Over</title>
		<link>http://dustin.runnells.name/?p=76</link>
		<comments>http://dustin.runnells.name/?p=76#comments</comments>
		<pubDate>Mon, 06 Jul 2009 19:00:46 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Personal]]></category>

		<category><![CDATA[morgan]]></category>

		<category><![CDATA[sawyer]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=76</guid>
		<description><![CDATA[First post in a few months, so here are a couple of updates.
Sawyer is growing up fast! He is saying quite a bit more these past few weeks. When before he would just kind of make sounds if he didn&#8217;t know how to say a specific word, now I think he is actually trying to [...]]]></description>
			<content:encoded><![CDATA[<p>First post in a few months, so here are a couple of updates.</p>
<p>Sawyer is growing up fast! He is saying quite a bit more these past few weeks. When before he would just kind of make sounds if he didn&#8217;t know how to say a specific word, now I think he is actually trying to say the word.. even if it doesn&#8217;t come out quite right all the time. Some words he has no problems saying at all are NO!, Momo (Morgan), Lawnmower, Cars and Bike.</p>
<p>Morgan is also getting big! She is trying really really hard to start walking. She pulls herself up on her own when she is near a chair or table, but that first real step on her own might still be a few weeks off. She has four teeth now and getting good at biting.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=76</wfw:commentRss>
		</item>
		<item>
		<title>Family Portrait 6/09</title>
		<link>http://dustin.runnells.name/?p=75</link>
		<comments>http://dustin.runnells.name/?p=75#comments</comments>
		<pubDate>Wed, 01 Jul 2009 03:10:06 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=75</guid>
		<description><![CDATA[



Family 6/09

Originally uploaded by drunnells


Last weekend the whole family packed up and headed to Sears for a more recent family photo. Didn&#8217;t come out too bad! Not even close to the mount of kicking and screaming that I thought we would run into either. One thing that I really do like about Sears is that [...]]]></description>
			<content:encoded><![CDATA[<div style="float: right; margin-left: 10px; margin-bottom: 10px;">
<a href="http://www.flickr.com/photos/drunnells/3676606867/" title="photo sharing"><img src="http://farm4.static.flickr.com/3546/3676606867_8b92bfd501_m.jpg" alt="" style="border: solid 2px #000000;" /></a><br />
<br />
<span style="font-size: 0.9em; margin-top: 0px;"><br />
<a href="http://www.flickr.com/photos/drunnells/3676606867/">Family 6/09</a><br />
<br />
Originally uploaded by <a href="http://www.flickr.com/people/drunnells/">drunnells</a><br />
</span>
</div>
<p>Last weekend the whole family packed up and headed to Sears for a more recent family photo. Didn&#8217;t come out too bad! Not even close to the mount of kicking and screaming that I thought we would run into either. One thing that I really do like about Sears is that they give you license to do whatever you want with the pictures, unlike most of the other places we have been to. And you can buy a CD the same day with your images on it, when we go elsewhere we wind up scanning them in just to have a digital copy.<br />
<br clear="all" /></p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=75</wfw:commentRss>
		</item>
		<item>
		<title>Kim&#8217;s New Phone</title>
		<link>http://dustin.runnells.name/?p=74</link>
		<comments>http://dustin.runnells.name/?p=74#comments</comments>
		<pubDate>Mon, 04 May 2009 17:58:57 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[bluetooth]]></category>

		<category><![CDATA[linux]]></category>

		<category><![CDATA[pantech matrix]]></category>

		<category><![CDATA[phonebook backup]]></category>

		<category><![CDATA[razor]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=74</guid>
		<description><![CDATA[I have to post about this because I spent more than three hours on it, and for me any non-parenting/husbanding activity that takes more than a few minutes is a significant event. Kim replaced her broken Razor V3 with a Pantech Matrix last week. I&#8217;m not that big of a phone geek, BUT I am [...]]]></description>
			<content:encoded><![CDATA[<p>I have to post about this because I spent more than three hours on it, and for me any non-parenting/husbanding activity that takes more than a few minutes is a significant event. Kim replaced her broken Razor V3 with a <a href="http://www.pantechusa.com/web/guest/matrix">Pantech Matrix</a> last week. I&#8217;m not that big of a phone geek, BUT I am liking this phone a lot.. mostly because it doesn&#8217;t run an MS operating system and it has a real QWERTY keyboard. Its been a while since I&#8217;ve looked at any recent phones other than the iphone or G3.. my own phone is approaching old age and the features I thought were cool on it are now pretty much standard. The problem with Kim&#8217;s old Razor is that the keypad is busted.. no keys worked on it. The people at Cingular were unable to transfer her contacts or photos to her new phone so I thought that I would give it a try. Here is how I did it.</p>
<p>After compiling USB_ACM into the kernel on my Linux (LFS) machine I was able to use <a href="http://moto4lin.sourceforge.net/wiki/Main_Page">moto4lin</a> to copy her photos off with a usb cable. For anyone else that needs to do this with a Razor, I needed to put it into P2K mode.. the only way I found to do this on this phone was from a  terminal do:</p>
<pre>AT+MODE=8</pre>
<p>From there moto4lin was able to bring up the file list and I copied everything down.</p>
<p>Next step was to get the phone book.. which as it turns out was the most difficult part. Using a terminal again I did a:</p>
<pre>AT+MPBR=1,100</pre>
<p>to retrieve contacts #1-100. This gave me a list with each row looking something like:</p>
<pre>+MPBR: 17,"5855551234",129,"Some Name",3,0,255,0,1,1,255,255,0,"",0,0,"","","","","","","",""</pre>
<p>The information I needed was the first few fields: Contact Id, Phone Number, nType,  Name, eType. Since she had less than 60 rows, I copied these out and pasted it into a file and wrote a little PHP script to pull out the number, name and eType and put them into the insert format for her new phone. The eTypes are:</p>
<p>0 Work<br />
1 Home<br />
2 Main<br />
3 Mobile<br />
4 Fax<br />
5 Pager<br />
6 Email<br />
7 Mailing list</p>
<p>For her new phone I used Bluetooth to insert the new contacts. To get this working I needed to find the phone &#8217;s address with:</p>
<pre>hcitool scan</pre>
<p>And then get a /dev device for it with rfcomm. But first I needed to find the modem channel on this phone.  To get this I did a:</p>
<p>sdptool browse</p>
<p>And looked for &#8220;Dialup Networking&#8221;. In the case of the Matrix this is channel 1 so the rfcomm command line was:</p>
<pre>rfcomm &lt;ADDRESS&gt; 0 1</pre>
<p>The address was the address we found with hcitool, the 0 is the rfcomm device number i&#8217;m giving it (will show up as /dev/rfcomm0) and the 1 is the channel. From here I can use minicom or whatever terminal program and do my AT commands to insert. But first I had to set the phonebook to insert to. I couldn&#8217;t figure out where to put the phone&#8217;s own phonebook entries, so I used the SIM card, which is set with:</p>
<pre>AT+CPBS="SM"</pre>
<p>I had the PHP script that I mentioned earlier to pull out the name and number spit them out in the preformated GSM phonebook insert commands. Which look like:</p>
<pre>AT+CPBW=1,"5855551234",129,"Some Name"</pre>
<p>The 1 is the index number, you&#8217;ll need to increment this for each entry and the 129 is the non-international phone number.. for me it was the same for every entry and matches what I pulled off of the Razor. Once the numbers were inserted I needed to power cycle the phone to get them to show up. I also wanted the entries to show up with the extra phonebook features offered on this phone (like picture identification and such) so from the phone&#8217;s own interface I copied all the SIM phonebook entries onto the phone and then deleted them from the SIM card to avoid duplicates. Seems like everything worked.. one ugly thing about doing this was that the Razor has a separate entry for each number, so a cell number and a home number for &#8220;Joe Smith&#8221; would be two separate entries in the Razor&#8217;s CPBR list, I had my script use the eType to put a (M) or (H) next to the name to signify the type of number it was.</p>
<p>For anyone else interested in doing something similar, you will find more information on the Razor&#8217;s AT commands <a href="http://www.csparks.com/MotoBackup/MotorolaAT.xhtml">here</a>. And the standard GSM AT commands <a href="http://www.ctiforum.com/standard/standard/etsi/0707.pdf">here</a>.</p>
<p>This was a fun project that I don&#8217;t get to do much of anymore.. and I am really liking the Matrix.. and I&#8217;m seriously thinking that when the time comes to replace my own (now ancient) phone I&#8217;ll go for this instead of an iPhone or G3.. we&#8217;ll see though.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=74</wfw:commentRss>
		</item>
		<item>
		<title>OpenID &#038; Verisign VIP</title>
		<link>http://dustin.runnells.name/?p=72</link>
		<comments>http://dustin.runnells.name/?p=72#comments</comments>
		<pubDate>Mon, 09 Mar 2009 21:42:21 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Technology]]></category>

		<category><![CDATA[paypal verisign secureid vip]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=72</guid>
		<description><![CDATA[A while back I purchased a PayPal Security Key, which is a physical key fob that generates a number to use in addition to my normal login. The key fob itself was $5, and I like the idea of having &#8220;two-factor&#8221; authentication where my money is. A really cool thing that I just found out [...]]]></description>
			<content:encoded><![CDATA[<p>A while back I purchased a <a href="https://www.paypal.com/us/cgi-bin/webscr?cmd=xpt/Marketing/securitycenter/general/PPSecurityKey">PayPal Security Key</a>, which is a physical key fob that generates a number to use in addition to my normal login. The key fob itself was $5, and I like the idea of having &#8220;two-factor&#8221; authentication where my money is. A really cool thing that I just found out about today is that the key fob from <a href="http://paypal.com">PayPal</a> is actually a <a href="http://www.verisign.com/authentication/consumer-authentication/vip-authentication/">Verisign VIP</a> (Verisign Identity Protection) token.. and can be used everywhere that their own $30 token can be used, including for <a href="http://openid.net/">OpenID</a> authentication at the <a href="https://pip.verisignlabs.com">Verisign Personal Identity Portal</a>! Very cool.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=72</wfw:commentRss>
		</item>
		<item>
		<title>First post of the year!</title>
		<link>http://dustin.runnells.name/?p=71</link>
		<comments>http://dustin.runnells.name/?p=71#comments</comments>
		<pubDate>Mon, 09 Mar 2009 21:27:41 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Personal]]></category>

		<category><![CDATA[elliptical sawyer morgan]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=71</guid>
		<description><![CDATA[Now that we are three months into 2009, its probably a good time to post.
Sawyer is now TWO friggen years old (as of 2/14).. and he is definitely a two year old, he plays a lot with MegaBlocks (Legos for little kids, which I also enjoy playing with) and his taste in TV shows has [...]]]></description>
			<content:encoded><![CDATA[<p>Now that we are three months into 2009, its probably a good time to post.</p>
<p>Sawyer is now TWO friggen years old (as of 2/14).. and he is definitely a two year old, he plays a lot with MegaBlocks (Legos for little kids, which I also enjoy playing with) and his taste in TV shows has changed a little since when he was a baby-baby, instead of Teletubies, we watch more &#8220;Imagination Movers&#8221; and &#8220;Handy Many&#8221;. Morgan is starting to become a lot more alert over the past few weeks, she watches her big brother and her parents move around the house and she is a lot more vocal than I remember Sawyer being at that age.</p>
<p>In other news Kim and I decided to stimulate the economy some by purchasing an Elliptical exercise   machine. Even though I know exercise equipment is notorious for being a waste of money, I&#8217;m determined (today anyway) to use it for every dollar its worth.. I&#8217;m getting oldish, and being fat is probably not a good idea anymore. If nothing else, I now have something to blame when I gain wait.. I can be one of those people who say &#8220;____ doesn&#8217;t work, I tried it.&#8221; and exclude my personal laziness from the equation.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=71</wfw:commentRss>
		</item>
		<item>
		<title>Honda Radio Code</title>
		<link>http://dustin.runnells.name/?p=70</link>
		<comments>http://dustin.runnells.name/?p=70#comments</comments>
		<pubDate>Tue, 30 Dec 2008 03:11:01 +0000</pubDate>
		<dc:creator>drunnells</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[avic-n1]]></category>

		<category><![CDATA[honda]]></category>

		<category><![CDATA[radio code]]></category>

		<guid isPermaLink="false">http://dustin.runnells.name/?p=70</guid>
		<description><![CDATA[Saturday my AVIC-N1 nav/mp3/cd/radio system crapped out on me.. and I think that it may be gone for good. That sucks.. a lot, since it was pretty expensive (5 years ago).. what sucks more is that we are pretty broke right now, and it doesn&#8217;t look like that will be changing any time soon.. which [...]]]></description>
			<content:encoded><![CDATA[<p>Saturday my AVIC-N1 nav/mp3/cd/radio system crapped out on me.. and I think that it may be gone for good. That sucks.. a lot, since it was pretty expensive (5 years ago).. what sucks more is that we are pretty broke right now, and it doesn&#8217;t look like that will be changing any time soon.. which means no new radio any time soon either. My commute to Syracuse is 1.5 hours on a good day, and 1.5 hours each way with no radio will be pretty darn unbearable. SO, I dug out my stock radio that shipped with my civic and that has been collecting dust in the basement for the past few years and hooked it up. I&#8217;m posting this here in case anyone else ever needs it, or I manage to forget the next time I need it - To get your Honda radio code you can go to: https://radio-navicode.honda.com and enter the radio&#8217;s serial number and owner&#8217;s details.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.runnells.name/?feed=rss2&amp;p=70</wfw:commentRss>
		</item>
	</channel>
</rss>
