<?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/"
		xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
	xmlns:media="http://search.yahoo.com/mrss/"
>

<channel>
	<title>Micks Distractions&#187; Mobiles</title>
	<atom:link href="http://onut.net/blog/archives/category/tech/mobiles/feed" rel="self" type="application/rss+xml" />
	<link>http://onut.net/blog</link>
	<description>Life is too short to be not interested in everything.</description>
	<lastBuildDate>Thu, 15 Dec 2011 10:59:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
	<copyright>Copyright &#xA9; Micks Distractions 2011 </copyright>
	<managingEditor>website@boutade.net (Micks Distractions)</managingEditor>
	<webMaster>website@boutade.net (Micks Distractions)</webMaster>
	<image>
		<url>http://onut.net/wp/wp-content/plugins/podpress/images/powered_by_podpress.jpg</url>
		<title>Micks Distractions</title>
		<link>http://onut.net/blog</link>
		<width>144</width>
		<height>144</height>
	</image>
	<itunes:subtitle></itunes:subtitle>
	<itunes:summary>Life is too short to be not interested in everything.</itunes:summary>
	<itunes:keywords></itunes:keywords>
	<itunes:category text="Society &#38; Culture" />
	<itunes:author>Micks Distractions</itunes:author>
	<itunes:owner>
		<itunes:name>Micks Distractions</itunes:name>
		<itunes:email>website@boutade.net</itunes:email>
	</itunes:owner>
	<itunes:block>no</itunes:block>
	<itunes:explicit>no</itunes:explicit>
	<itunes:image href="http://onut.net/wp/wp-content/plugins/podpress/images/powered_by_podpress.jpg" />
		<item>
		<title>Prowl — the “anything” push to your iPhone</title>
		<link>http://onut.net/blog/archives/565#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://onut.net/blog/archives/565#comments</comments>
		<pubDate>Thu, 10 Sep 2009 22:53:49 +0000</pubDate>
		<dc:creator>Mick</dc:creator>
				<category><![CDATA[Mobiles]]></category>

		<guid isPermaLink="false">http://onut.net/blog/archives/565</guid>
		<description><![CDATA[I came across this cool little iPhone app in my recent adventures into the world of distractedness. A growl client for the iPhone. What Prowl does is send “push” events to your iPhone from virtually anything. Install the app, register on the Prowl website, generate an API key, and you’re home and hosed for some [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>I came across this cool little iPhone app in my recent adventures into the world of distractedness. A growl client for the iPhone.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/10/506.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/10/s_506.jpg' border='0' width='187' height='281' style='margin:5px'></a></center><br />
<span id="more-565"></span></p>
<p>What Prowl does is send “push” events to your iPhone from virtually anything.<br />
Install the app, register on the Prowl website, generate an API key, and you’re home and hosed for some good hacking.</p>
<p>This means that any application that wants to push a notification to your iPhone contacts the Prowl servers, which then sends the notification on to your iPhone. So far it’s reliable enough, but even they say not to trust it for critical or emergency applications.</p>
<p>There is an API, and it is fairly complete, supporting all your language preferences, (Java, perl, PHP, etc, etc — sorry no COBOL).</p>
<p>Of course, there’s even a plugin for WordPress, (which I have to say is <b>so much easier</b> than Joomla). It will send push alerts for new posts, comments, and other things.</p>
<h4>WordPress post alert</h4>
<p>Looks like someone has posted another blog entry.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/10/692.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/10/s_692.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<p>Viewing the notification brings you here:</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/10/693.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/10/s_693.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<h4>Alerts</h4>
<p>Alerts can be adjusted, the nice feature is being able to silence them for a given time.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/11/5.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/11/s_5.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<p>And adjust what sounds are played and when, although the default sounds are too quiet I find.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/11/6.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/11/s_6.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<h4>Redirects</h4>
<p>Redirects allow a specified application to start when a particular event comes in. Trouble is that there’s no way of selecting anything else but the given set of applications. Maybe in the next release.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/11/7.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/11/s_7.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/11/8.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/11/s_8.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/11/9.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/11/s_9.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/11/10.jpg' rel='shadowbox[sbpost-565];player=img;'><img src='http://blogpress.w18.net/photos/09/09/11/s_10.jpg' border='0' width='187' height='281' style='margin:5px'></a></center><br />
– Posted from my iPhone<br /></p>
<p class="fbconnect_share"><fb:share-button class="url" href="http://onut.net/blog/archives/565" /></p><p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://onut.net/blog/archives/565/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress + iPhone + BlogPress</title>
		<link>http://onut.net/blog/archives/525#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://onut.net/blog/archives/525#comments</comments>
		<pubDate>Wed, 09 Sep 2009 12:34:50 +0000</pubDate>
		<dc:creator>Mick</dc:creator>
				<category><![CDATA[Mobiles]]></category>

		<guid isPermaLink="false">http://onut.net/blog/archives/525</guid>
		<description><![CDATA[I recently moved my blog away from Joomla and over to WordPress. This was for several reasons: 1. Joomla is a pain in the bum for blogging. Its too complex for a blog and I keep forgetting the differences between a “com”, “module” and a “plugin”. 2. Upgrading is a pain in the bum. I [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>I recently moved my blog away from Joomla and over to WordPress. </p>
<p>This was for several reasons:<br />
1. Joomla is a pain in the bum for blogging. Its too complex for a blog and I keep forgetting the differences between a “com”, “module” and a “plugin”.<br />
2. Upgrading is a pain in the bum. I just recently noticed that half my content went missing as part of a recent upgrade.<br />
3. I had bought an iPhone and wanted to be able to post while out and about. Getting this going in Joomla was a pain in the bum, (although I discovered after switching to WordPress that it wasn’t really Joomla’s fault).<br />
4. My old TreeCam blog was running on an old version of s9y, and I wanted to combine it all.<br />
<span id="more-525"></span><br />
Not that Joomla is all bad, it’s a great CMS app, but just not for blogging. It has a fantastic plugin, (module or whatever the heck you call it), for eCommerce, (virtuemart), and even a blog thingy. I always found it to be a struggle. One of those things. It’s not designed for blogging.</p>
<p>It was a good decision to move. WordPress is infinitely easier than Joomla. None of the learning curve. So far there seems to be the same number of plugins for both, but it looks like Joomla is getting a little “stale”. Installing plugins for WordPress is damn easy. Almost a “one click” install or upgrade for all plugins and templates.</p>
<p>Since the switch I’ve discovered all sorts of goodies. EG out of the box weblog API, RPC calls, blog pings, dead link monitoring.</p>
<p>Nice. Really polished app.</p>
<p>Even better is the fact that I didn’t need to do anything for my iPhone to start posting to my blog. Just install BlogPress, (and the free WordPress app), from the Apple app store, enter in my site, and start blogging. I even used it to migrate from Joomla to WordPress, as you can post to multiple sites in one hit.</p>
<h3>BlogPress’ settings page</h3>
<p>You can post piccies and videos to Picasa and YouTube. Specify multiple blogs to post to.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/148.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_148.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<h3>Pulling down posts</h3>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/149.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_149.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<h3>Posting a story</h3>
<p>Is dead easy, although may be a problem for those who don’t know their HTML.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/150.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_150.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<h3>Inserting images</h3>
<p>Just click on the camera icon top right, and you can insert photos directly into the post.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/151.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_151.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<h3>Save or post?</h3>
<p>You can post it, or save it as a draft for later.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/152.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_152.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/154.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_154.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<h3>Posting an entry</h3>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/157.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_157.jpg' border='0' width='187' height='281' style='margin:5px'></a></center></p>
<p>You’re also given the option of viewing it in Safari, which is a minor annoyance for me. It’d be good to be able to turn it off.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/158.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_158.jpg' border='0' width='187' height='281' style='margin:5px'></a></center><br />
Which ends up looking like the following of you have installed the iPhone WordPress plugin.</p>
<p><center><a href='http://blogpress.w18.net/photos/09/09/09/160.jpg' rel='shadowbox[sbpost-525];player=img;'><img src='http://blogpress.w18.net/photos/09/09/09/s_160.jpg' border='0' width='187' height='281' style='margin:5px'></a></center><br />This is all cool stuff, and it just all works the way you’d expect it to.</p>
<p>– Posted from my iPhone<br /><!--more--></p>
<p class="fbconnect_share"><fb:share-button class="url" href="http://onut.net/blog/archives/525" /></p><p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://onut.net/blog/archives/525/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HOWTO — Opera Mini + Linux</title>
		<link>http://onut.net/blog/archives/58#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://onut.net/blog/archives/58#comments</comments>
		<pubDate>Thu, 11 Sep 2008 02:45:25 +0000</pubDate>
		<dc:creator>Mick</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mobiles]]></category>

		<guid isPermaLink="false">http://onut.net/wp/archives/58</guid>
		<description><![CDATA[I’ve been a user of Opera Mini for a long time. On my mobile it’s great. However, there’s times when I need to view the web in a bigger than 240x320 format. I spend a fair amount of time on the train, and I have a laptop with bluetooth, and a phone with GPRS and [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>I’ve been a user of <a href="http://www.operamini.com/" target="_self">Opera Mini</a>  for a long time. On my mobile it’s great. However, there’s times when I need to view the web in a bigger than 240x320 format. I spend a fair amount of time on the train, and I have a laptop with bluetooth, and a phone with GPRS and bluetooth.… but GPRS is slow and running firefox over it is a pain… even with images turned off.</p>
<p>So, this howto shows you how to run Opera Mini on Linux in glorious 1440x900.… and take advantage of the speed increase.<br />
<span id="more-58"></span></p>
<h4>Requirements</h4>
<p>The Linux distribution I run is Debian, but this HOWTO will apply to any distribution really. In fact it should work on Windows as well. All you need initially is a running version of Java. However the complete list is:<br />
<a href="http://www.java.com/en/download/index.jsp" target="_self">Java 6</a><br />
<a href="http://www.microemu.org/" target="_self">Micro Emulator</a><br />
<a href="http://www.operamini.com/" target="_self">Opera Mini</a></p>
<h4>Installing Java</h4>
<p>On Debian I just do the usual installation process:</p>
<pre>root@localhost % apt-get install sun-java6-bin sun-java6-jre</pre>
<p>That’s it for java.</p>
<h4>Installing MicroEmulator</h4>
<p>Now for MicroEmulator. Fetch whatever the <a href="http://sourceforge.net/project/showfiles.php?group_id=30014" target="_self">latest release is</a> . I used 2.0.2 for this setup.</p>
<p>Extract the tarball to somewhere. Doesn’t matter where. I put it under $HOME/lib</p>
<pre>mick@localhost [~/lib] # tar zxvf microemulator-2.0.2.tar.gz</pre>
<p>I put in a symlink so that I can reference different version if need be. But you can skip this step if you want.</p>
<pre>mick@localhost [~/lib] # ln -s microemulator-2.0.2 microemulator</pre>
<p>Now, fire up java and point it to the microemulator jar file.</p>
<pre>mick@localhost [~/lib] # java -jar $HOME/lib/microemulator/microemulator.jar</pre>
<p>This window will now pop-up.<br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-1.png" /></p>
<p>Now Click on ‘Options’, and then ‘Select device’. There’s nothing stopping you from running Opera in this virtual device. But remember you want to run it in a big window, right!<br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-2.png" /></p>
<p>The window below will pop-up.<br />
<img src="/media/howto-operamini/Screenshot-Select_device-1.png" /></p>
<p>Click on Add… You want to traverse to your {directory where you installed the microemulator}/devices/, and select the microemu-device-resizable.jar file.<br />
<img src="/media/howto-operamini/Screenshot-Open.png" /></p>
<p>It will now appear in your virtual devices list. Click on ‘Set as default’ to use it every time you start it up.<br />
<img src="/media/howto-operamini/Screenshot-Select_device-2.png" /><br />
<img src="/media/howto-operamini/Screenshot-Select_device-3.png" /></p>
<p>The MicroEmulator window will change to a ‘not as snazzy’ window like this:<br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-2b.png" /></p>
<p>That’s it for the microemulator.</p>
<h4>Installing Opera Mini</h4>
<p>Installing Opera Mini is easy too. There’s two ways to do it.<br />
Click <a href="http://mini.opera.com/download-4/opera-mini-latest-advanced-int.jad" target="_self" class="broken_link">here</a> , and <a href="http://mini.opera.com/download-4/opera-mini-latest-advanced-int.jar" target="_self" class="broken_link">here</a>  and save somewhere.</p>
<p>Or follow these instructions, (I’ve put them here, because, as you know, links change on the internet, and I hate 404s).</p>
<p>Just fetch the <a href="http://www.operamini.com/download/" target="_self">latest version</a>  from Opera. There’s 4 steps to download:<br />
1. Select ‘Download to PC’.<br />
2. Select ‘Generic version’.<br />
3. Select ‘Advanced MIDP 2′<br />
4. Select you preferred language, and download the JAD and JAR files.</p>
<p>I placed these two files under $HOME/lib/opera. You will have to create a symlink so that the version you have downloaded will be used properly.</p>
<pre>mick@localhost [~/lib/opera] # ln -s opera-mini-latest-advanced-int.jar opera-mini-4.1.11355-advanced-int.jar</pre>
<p>Your version may/will vary. You’ll need to symlink, (or rename), the file for it to work, though.</p>
<p>Now you want to open the Opera Mini JAD file you just downloaded.<br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-3.png" /></p>
<p>Find it and open it.<br />
<img src="/media/howto-operamini/Screenshot-Open_JAD_File.png" /></p>
<p>Now you will see it in the list of applications that can be launched by Micro Emulator.<br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-4.png" /></p>
<p>Now just double click on it.<br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-5.png" /></p>
<p>Hooley Dooley Batman! It works! Cool!<br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-6.png" /><br />
<img src="/media/howto-operamini/Screenshot-MicroEmulator-last.png" /></p>
<p>
Either use your mouse and click, or you can use up/down/left/right keys and enter to traverse web pages.
</p>
<h4>One last thing</h4>
<p>I created the following script to make it easier for me to startup, and called it ‘operamini’.</p>
<pre>
#!/bin/bash

exec >&#038; /tmp/operamini.log

java -jar $HOME/lib/microemulator/microemulator.jar $HOME/lib/opera/opera-mini-latest-advanced-int.jad
</pre>
<p>Now I have my super fast GPRS internet connection. Also, a side benefit is that all my bookmarks are synced up to my phone.</p>
<p class="fbconnect_share"><fb:share-button class="url" href="http://onut.net/blog/archives/58" /></p><p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://onut.net/blog/archives/58/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HOWTO — Running familiar Linux from CF/SD/MMC</title>
		<link>http://onut.net/blog/archives/42#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://onut.net/blog/archives/42#comments</comments>
		<pubDate>Thu, 20 Sep 2007 02:51:38 +0000</pubDate>
		<dc:creator>Mick</dc:creator>
				<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mobiles]]></category>

		<guid isPermaLink="false">http://onut.net/wp/archives/42</guid>
		<description><![CDATA[This howto covers one way of running familiar Linux from your CF, SD, or MMC card. OK, it doesn’t actually boot from SD, but uses a snazzy Linux trick called pivot_root. Which switches over one root with another. This, IMHO, is probably the best way of doing it apart from actually directly booting from SD. [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>This howto covers one way of running familiar Linux from your CF, SD, or MMC card.</p>
<p>OK, it doesn’t actually boot from SD, but uses a snazzy Linux trick called pivot_root. Which switches over one root with another. This, IMHO, is probably the best way of doing it apart from actually directly booting from SD. Although, I’ve only tried this on a 38xx based iPAQ it should work for all handhelds based on familiar. Heck, it should work for anything really.</p>
<p><span id="more-42"></span></p>
<h3>Preface</h3>
<p>The general idea is to boot up Linux from the internal flash of the iPAQ to just before it runs the environment. Check the SD slot for a loopfs file, if one is there, then mount it up, switch roots, and continue to boot. </p>
<h3>Why?</h3>
<p>There’s several benefits to doing it this way:</p>
<ol>
<li>Backups — Since you have a copy of the root filesystem on SD, you can back it up very easily. Every PC these days has a SD slot. Just whack it in and copy the file across, you don’t even need Linux to do it either.</li>
<li>Choices — You can startup either environment GPE or OPIE, just by changing SD cards. (Further updates to setMMCroot will allow selecting environment by buttons.</li>
<li>Saving files — regardless of what environment you run, you can still save the files directly to the SD card. If you need them elsewhere, turn off the iPAQ, pop the SD card out and chuck it into a PC and read them. Easy!</li>
<li>Dead SD — If your SD card dies, you can still run with a basic environment that is already loaded up on your iPAQ. With other methods, if your SD dies that’s it. Things start going wierdo. </li>
</ol>
<h3>Pre-requisites</h3>
<p>You’re going to need several things to do this:</p>
<ol>
<li>Linux based PC, any dist will do.</li>
<li>An iPAQ — with familiar Linux already loaded up on to it, (doesn’t matter what environment). </li>
<li>A copy of <a href="http://familiar.handhelds.org/">familiar Linux</a> , with either the <a href="http://gpe.handhelds.org/">GPE</a>  or <a href="http://opie.handhelds.org/">OPIE</a>  will do. I used version 0.8.4 for this HOWTO. You will need the <a href="http://familiar.handhelds.org/releases/v0.8.4/install/files/" class="broken_link">tarballs from here</a>  and not the jffs files, (IE either of the *.rootfs.tar.bz2 files). </li>
<li>Any SD, MMC, or CF card formatted with FAT16, (if you just bought it you don’t need to do anything as all flash cards are formatted these days).</li>
</ol>
<h3>Step 1 — Create root filesystem.</h3>
<p>First we’ll need to create the filesystem that gets mounted up I’m creating a 1G filesystem, because I tend to load up a lot of applications onto my iPAQs. Since I also have a 2G SD card, I will be able to store both the GPE and OPIE environments on it.</p>
<pre>dd if=/dev/zero of=loopfs-gpe bs=1024 count=991680</pre>
<p>Note the size is just under 1G? This is because a 1G filesystem on an SD card will consume slightly more than 1G. So, I’ve allowed for that. I can fit two filesystems on that card this way. Adjust the “count” to whatever size you want or care for.</p>
<p>Now, you’ll need to setup the filesystem.</p>
<pre>mkfs.ext2 loopfs-gpe</pre>
<p>This will create a Linux ext2 filesystem. You can really use any filesystem, but you <strong>don’t</strong> want to use a journelling filesystem like ext3, reiserfs, xfs, as flash memory can’t stand too many writes to it. Journelling filesystem tend to write a lot of data even when not being used, (from a flash point of view). </p>
<p>Mount up the filesystem on your Linux box, (requires root).</p>
<pre>
mkdir loopfs-gpe.mount
mount -o rw,loop loopfs-gpe loopfs-gpe.mount
</pre>
<p>Extract the environment tarball into the loopback mount point.</p>
<pre>
cd loopfs-gpe.mount
tar jxf ../gpe-image-v0.8.4-h3600.rootfs.tar.bz2
</pre>
<p>You will need to edit /etc/passwd and change the root password to something sensible if you want to login, the following entry will set the password to ‘root’.</p>
<pre>root:dquXGWQyEH.uI:0:0:root:/home/root:/bin/sh</pre>
<p>Unmount the loopfs filesystem.</p>
<pre>umount loopfs-gpe.mount</pre>
<p> You now have a brand spanking new filesystem that will be used on your iPAQ.</p>
<h3>Step 2 — Prepare your SD.</h3>
<p>There are a number of files that need to be created and copied over to your SD card. These are all required.</p>
<ul>
<li>Your root filesystem that you just created, ensure it is called either <strong>loopfs-opie</strong> or <strong>loopfs-gpe</strong>.</li>
<li>The <a href="/files/ipaq/setMMCroot#utm_source=feed&amp;utm_medium=feed&amp;utm_campaign=feed">setMMCroot script</a> , which does all the work.</li>
<li>Create a file called <strong>loopfs.boot</strong> on the SD card with the full path of the loopfs file you created. For example: /media/card/loopfs-gpe, or /media/card/loopfs-opie, or /media/card/i.like/it.here </li>
</ul>
<p>Remove the SD card and plonk it into your iPAQ.</p>
<h3>Step 3 — Prepare your iPAQ.</h3>
<p>Fire up your favourite serial port communication program, (I use minicom), to connect to your iPAQ, which should be connected to your PC by now. If you can’t do this, or don’t want to, then you can run these commands from within a console on your iPAQ, (under the Applications tab). The preferred option is to run the ppp daemon from your Linux box and ‘ssh 20.0.0.1′ into your iPAQ, using the following command, (needs root on your PC):</p>
<pre>/usr/sbin/pppd /dev/ttyS0 230400 20.0.0.5:20.0.0.1 nodetach local noauth nocrtscts lock user ppp connect "/usr/sbin/chat -v -t3 ogin--ogin: ppp"</pre>
<p>Run the following commands in a shell on your iPAQ.</p>
<pre>
ln -s /etc/init.d/setMMCroot /etc/rc5.d/S01setMMCroot
ln -s /etc/init.d/setMMCroot etc/rc2.d/S01setMMCroot
cp /media/card/setMMCroot /etc/init.d/setMMCroot
</pre>
<p>I had suggested using the ppp daemon because then the next part becomes easy. You ned to install the extra packages on your iPAQ. e2fsprogs, e2fsprogs-e2fsck, kernel-module-loop-2.4, and kernel-module-ext2-2.4. Run this on your iPAQ, or use the package manager to do it.</p>
<pre>ipkg install e2fsprogs e2fsprogs-e2fsck kernel-module-loop-2.4 kernel-module-ext2-2.4</pre>
<p>Holy toledo batman! You’re almost there!</p>
<h3>Step 4 — Reboot your iPAQ.</h3>
<p>Reboot your iPAQ, via Start -&gt; Settings -&gt; Shutdown.</p>
<p>When you reboot you should see the following appear just underneath the Linux penguin logo.</p>
<pre>
#### 1. Checking MMC: #
Found MMC!
Using loopfs: /media/card/loopfs-gpe
#### 2. FSCK filesystem:
/media/card/loopfs-gpe has gone 48850 days without being checked, check forced.
/media/card/loopfs-gpe: 2817/124160 files (0.1% non-contiguous), 12110/247900 blocks
#### 3. Setting up loopback FS:
Using /lib/modules/2.4.19-rmk6-pxa1-hh42/kernel/drivers/block/loop.o
#### 4. Mounting:
#### 5. Ballet:
#### 6. Tidying up:
killall: Xfbdev: no process killed
#### 7. Handover:
</pre>
<p>The script will wait for 16 seconds for an SD card to be inserted, (a hash will appear every second), else it will just boot up straight from the internal flash. This allows you to just run with whatever is there already, if need be.</p>
<p>Depending on what environment you have running will change some of the messages between each stage. I’ll see if I can take a photo of the bootup stage and chuck it on here. (EDIT: I’ve put up some bloody horrible images of the iPAQ booting, taken with my mobile.)</p>
<h5>Boot loader screen.</h5>
<p><img src="/files/ipaq/booting.png" alt=" " /></p>
<h5>FSCKing the filesystem.</h5>
<p><img src="/files/ipaq/fsck.png" alt=" " /></p>
<h5>Ballet school</h5>
<p><img src="/files/ipaq/ballet.png" alt=" " /></p>
<p>From there onwards, it’s just the normal boot procedure.</p>
<h3>Step 5 — Final install.</h3>
<p>Because this is a ‘fresh’ install you will be asked all the questions you would have been asked when you did the initial install of familiar on your iPAQ. If you get to this stage you’ve done it! Congratulations!</p>
<p>Once you have gone through the final install procedure, if you open up a console session and type ‘df’ , you’ll see what the setMMCroot script does. /mnt/realroot points to your iPAQ flash filesystem, and / is the SD filesystem. Cool eh?!</p>
<pre>root@h3600:~# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/root 976056 387164 539308 42% /
tmpfs 31676 40 31636 0% /mnt/realroot/var
tmpfs 31676 0 31676 0% /mnt/realroot/media/ram
/dev/mmc/part1 1983360 991712 991648 50% /mnt/realroot/media/card
/dev/loop/0 976056 387164 539308 42% /
</pre>
<p class="fbconnect_share"><fb:share-button class="url" href="http://onut.net/blog/archives/42" /></p><p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://onut.net/blog/archives/42/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nokia GPRS with Linux iPAQ</title>
		<link>http://onut.net/blog/archives/41#utm_source=feed&#038;utm_medium=feed&#038;utm_campaign=feed</link>
		<comments>http://onut.net/blog/archives/41#comments</comments>
		<pubDate>Mon, 17 Sep 2007 07:51:45 +0000</pubDate>
		<dc:creator>Mick</dc:creator>
				<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mobiles]]></category>

		<guid isPermaLink="false">http://onut.net/wp/archives/41</guid>
		<description><![CDATA[If you have an iPAQ installed with familiar Linux and want it to connect to the net using your Nokia mobile via GPRS; then this is how you do it. Work In Progress, (sorry it’s a bit sparse and hurried, but it’ll give you the general idea). I haven’t used this method for a while, [...]
No related posts.]]></description>
			<content:encoded><![CDATA[<p>If you have an iPAQ installed with familiar Linux and want it to connect to the net using your Nokia mobile  via GPRS; then this is how you do it.<br />
<span id="more-41"></span></p>
<p>Work In Progress, (sorry it’s a bit sparse and hurried, but it’ll give you the general idea).</p>
<p>I haven’t used this method for a while, but just started playing with my iPAQ again, somewhere between then and now it stopped working. Apparently Telstra have made some changes to their APNs. So I’ve updated this page to reflect the changes.</p>
<h3>1. Create/modify a couple of files.</h3>
<p>Note: Telstra have changed their APN, (Access Point Number), since I last tried this.</p>
<p><strong>File: /etc/ppp/peers/gprs</strong></p>
<pre>nodetach
defaultroute
nocrtscts
lock
noauth
# lcp-echo-interval 5
# lcp-echo-failure 3
usepeerdns
230400
local
asyncmap 0
connect /etc/ppp/peers/gprs.chat.connect
disconnect /etc/ppp/peers/gprs.chat.disconnect
</pre>
<p><strong>File: /etc/ppp/peers/gprs.connect</strong></p>
<pre>
#!/bin/sh
exec chat TIMEOUT 5 \
ECHO ON \
ABORT 'nBUSYr' \
ABORT 'nERRORr' \
ABORT 'nNO ANSWERr' \
ABORT 'nNO CARRIERr' \
ABORT 'nNO DIALTONEr' \
ABORT 'nRINGINGrnrnRINGINGr' \
'' \
rAT TIMEOUT 12 OK \
ATH OK \
'ATDT+cgdcont=2,"IP,"telstra.internet"\n' '' \
AT OK \
'ATDT*99#' TIMEOUT 22 CONNECT \
"" SAY " - Connected."
</pre>
<p><strong>File: /etc/ppp/peers/gprs.disconnect</strong></p>
<pre>
#!/bin/sh

exec /usr/sbin/chat -V -s -S \
ABORT "BUSY" \
ABORT "ERROR" \
ABORT "NO DIALTONE" \
"" "K" "" "K" "" "K" "" "+++ATH" "" "+++ATH" "" "+++ATH"
</pre>
<p><strong>File: /etc/bluetooth/givepin</strong></p>
<pre>
#!/bin/sh
echo 'PIN:2222'
</pre>
<p><strong>File: /etc/bluetooth/hcid.conf</strong></p>
<pre>
options {
        autoinit yes;
        security auto;
        pairing multi;
        pin_helper /etc/bluetooth/givepin
}

device {
        name "iPAQ";
        class 0x120112;
        lm accept;
        iscan enable;pscan enable;
        lp rswitch,hold,sniff,park;
        encrypt enable;
}
</pre>
<h3>2. Pair the phones together.</h3>
<p>Get the Nokia to scan for bluetooth devices, and use the PIN that you used in the givepin file to pair the iPAQ found to your Nokia.</p>
<h3>3. Create the GPRS connection.</h3>
<p>From your iPAQ you can access your phone and connect to GPRS using the following:</p>
<pre>dund --nodetach --encrypt --connect 42:42:42:42:42:42 --channel 3 call gprs</pre>
<p>Replace 42:42:42:42:42:42 with your mobile phone’s address. To find this you can use hcitool to scan for it.</p>
<pre>
root@nowhere % hcitool scan
Scanning ...
        00:42:A0:42:26:42  Nokia N70
        00:16:42:DC:42:B8 AUSYDN000649
        42:42:42:42:42:42  I'm right behind you
        00:15:42:DB:42:24  n/a
</pre>
<p class="fbconnect_share"><fb:share-button class="url" href="http://onut.net/blog/archives/41" /></p><p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://onut.net/blog/archives/41/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

