Previous  Next  Up

3.0 INSTALLATION

Although there is a surprisingly large amount of documentation for getting Linux on your PDA, this HOWTO will focus primarily on the iPAQ and getting a custom system that runs with and without the CF card with Opie being the default GUI in both cases. Most of the information here is gathered from the offical web pages of the developers. This document simply attempts to bring those various resources into one place One awsome resource that I've found with the handhelds.org community is it's IRC support. Most other projects that I've been involved in also had IRC channels to ask questions on, but those were always occupied by bots that welcome you to the channel. Not so with handhelds. You can meet most of the developers and experienced users on the irc.handhelds.org server on channel #ipaq or #handhelds.org. So if you ever get really stuck after reading the Fine manual, hop on IRC and more likely than not, you'll at least get a pointer of where to find the answer to your Linux-driven iPAQ questions. Even I'm there occasionally :)

3.1 Overview

For my setup, I did the following, in this order:
  1. Install the bootloader
  2. Install Familiar
  3. Install Opie
  4. Install Intimate
  5. Make Opie the default WM for both Familiar and Intimate.


3.2 Ingredients

*Required* *Required for steps 3.6 and 3.7*


3.3 Installing the Bootloader

Reference: handhelds.org
Most of this information can be found at familiar.handhelds.org. After you get your Cool iPaq, the first thing we want to do is to install an appropriate bootloader on it.

****MUY IMPORTANTE!!!*** ****VERY IMPORTANT!!!*** ****FLASH NEWS!!!**** ****TOP SECRET!!!*** ****FOR U.S. MILITARY ONLY!!!***

good, now that I have your attention...

****THIS MEANS READ THE NEXT PARAGRAPH WITH GREAT ATTENTION!!!***

The following steps *CAN* cause your iPAQ to become completely useless!! Though Compaq has offered to fix "bricked" iPAQs, it's my philosophy that what we're doing here is at our own risk. That means we really shouldn't approach installing the bootloader with carelessness depending on the generosity of others who are busy working on improving things to fix our mistakes.
****END OF THE REAL IMPORTANT STUFF****


That being said, the bootloaders that the developers at handhelds.org have now refined it to a point of "very minimal opportunity for the bootloader installation to F(reeze) up". So don't be frightened away from the process,... :)

A couple of notes here:

So, let's get on with the install:

Return here after you read and followed the instructions at: ftp://ftp.handhelds.org/pub/linux/compaq/ipaq/stable/install.html

Good Job! Well done! Have a soda, the critical part is over!


3.4 Installing Familiar 0.5.1

Reference: familiar.handhelds.org
Now we're going to install Familiar 0.5.1. Briefly, you are going to:
  1. Download a jffs2 image to your desktop.
  2. Use that ultra-cool serial cable that I mentioned earlier to establish a serial connection from your desktop computer and transfer over the jffs2 image to the iPAQ.
  3. Establish a PPP connection on the iPAQ to the inter-web.
  4. SSH to the iPAQ.

This is a really easy portion of the install. Once the jffs2 image has been transferred over to the iPAQ, you should end up with the login: prompt. At this point you will have a functional, though boring, Linux on your iPAQ. Once you get into the shell, you will need to setup the PPP connection. This also is not complicated. The PPP connection is especially simple if you have a Linux box to host the ipaq. After the PPP connection is done, you can SSH to the iPAQ and start getting down to doing some wonderful magic.

Note here that if little short green people with antennas botch up your install, youre totally okay. You can always restart the installtion. It's only the bootloader that has a real hazzard.

AFTER you're done reading this paragraph, go to http://familiar.handhelds.org/familiar/releases/v0.5.1/install/H3600/install.html for details of the installation and return here when your iPAQ can ping the internet. WAIT!! Did you finish reading this paragraph? Don't bother installing packages at this point. We simply want to get Familiar installed and connected to the Internet. I'll walk you through which packages to install later. I'll wait here and have a soda while you get that set up. Go now.

You're BACK! Great! Have a soda!

Now that your iPAQ has a working Linux on it and is connected to the Internet, let's start making it useful. We'll be using a little program called ipkg to install and remove programs (packages) on our iPAQ. First thing you'll want to do is to get an updated list of available packages. You do this by issuing:

ipkg update

Super, now you can take a look and see what's available with:

ipkg list

Now copy and paste the following line into your shell:

ipkg install h3600-utils apmd vim pump udhcp udhcp pcmcia-modules-2.4.16-rmk1 pcmcia-cs dtask-intimate-modules-2.4.16-rmk1

What you're installing, as taken from the description of the ipkg list:


3.4.1 Getting your NIC to work in Familiar

First of all, we want to make sure that card services is working. Issue the command:

cardctl status

It should return with something like:

Socket 0:
3.3V 16-bit PC Card
function 0: [ready], [bat dead], [bat low]
Socket 1:
5V 16-bit PC Card
function 0: [ready]

If you get a "command not found" error, then for some whacky reason pcmcia-cs did not install. Try again. Oh that failed too? Have a soda and get onto #handhelds.org and see if someone there can help ya out.

Next, you'll want to configure your NIC to be recognized. This is done by editing the /etc/pcmcia/config file. If your card is not specified there, I suggest you take a look at ihttp://www.handhelds.org/z/wiki/IpaqHardwareCompatibilityEthernet to see what special drivers you'll need to use. For example, my FA411 card isn't in the options file. I had to manually enter in information about the card like this:

card "NetGear FA411 Fast Ethernet"
version "NETGEAR", "FA411"
bind "pcnet_cs"

Hopefully your card is already supported and you won't have to make any changes.

The /etc/pcmcia/network.opts file is where you will specify an IP address for your iPAQ. In my situation, I had a spare IP address that I assigned to the iPAQ, so it was fairly easy to get it on the network. For those of you who don't have a spare IP, I suggest setting up one of your Linux boxes (you DO have one, don't you?) with DHCP services to provide the iPAQ an IP address. Setting up DHCP is outside the realm of this document, but here are two hints:

Reboot. - JUST to make sure everything boots up, your NIC works and can connect to the Inter-web.

Now if you have any problems upto this point, I'd suggest:

  1. Searching through the Mail archive at http://handhelds.org/mailman/listinfo/handhelds.
  2. Mailing the problem to the mailing list.
  3. Hop on IRC to look for someone that has an answer.
Please remember, that though IRC might SEEM like the quickest solution, it's really likeley that you'll get your answer faster from digging through the mailing list. Really, I've timed people before and the average was 4 minutes and 37 seconds to find the answer on the Mailing List archives as opposed to 11 minutes and 2 seconds to get an answer on IRC. These are actual average times that I've tested.


3.5 Installing Opie

Reference: opie.handhelds.org
Wonderful! By now you should have a fully networked Linux (match?)box on the iPAQ. This part will walk you through the RIGOROUS process of installing Opie on your handheld. Copy and paste the following line at your command prompt:

echo "src opie http://opie.handhelds.org/feed/ipaq" >> /etc/ipkg.conf && ipkg update && ipkg install task-opie

Tough, huh?

What you just did was edit the /etc/ipkg.conf file (the file that tells your iPAQ where to get it's packages) and added in "src opie http://opie.handhelds.org/feed/ipaq" (without the quotes). Then you updated your list with the opie packages and installed the task-opie package. Now you can have some fun and start installing any opie package that you'd like. I normally comment out the line that has handhelds.org in it and ipkg update. This makes for a MUCH smaller list, and thus more readable. You can always uncomment it later to get the full list of available packages. When you're satisfied with your packages, reboot to see it's effects. Have fun, play around with these new apps. I'm sure you're gonna like it.


3.6 Installing Intimate

Reference: intimate.handhelds.org
This also is going to be a very complicated process. The instructions can be found at http://intimate.handhelds.org/install.shtml. TAKE NOTE of the first line of that web page, which reads:

"*** Do not use the intimateboot package from the familiar 0.5 feed (intimateboot_2.2). It does not work with the 2.4.16 series bootloaders. Instead, you should use http://intimate.handhelds.org/installer/intimateboot_0.5-1_arm.ipk which will work correctly."

Do that. Download that .ipk and install it. LATER, when you get prompted by Intimate's last question of it's install script "Would you like to install the intimateboot package [y/N] ?" SAY NO Thank you. Just did that. This boot package is a REALLY convenient way of having your iPAQ dual-boot depending on whether or not you have a CF card. Basically, if you want to boot into Intimate, the scripts starts up Familiar with it's modules and most importantly, the pcmcia-cs card manager and then pivot roots to the CF card. Neato, huh?

Next, put in your CF card but do not mount it.

Then, copy and paste the following line at your command prompt:

mkdir -p /tmp/intimate && cd /tmp/intimate && wget http://intimate.handhelds.org/installer/installer && sh installer

Check the Intimate web page for details of what's happening but in brief, it's downloading the 15MB base2_2.tgz tarball from Deban (yap, that's why we set up your NIC beforehand), xfree86, some X apps and the default Blackbox window manager. Once that's all done, let's reboot to make sure everything works. Now you'll notice that you have a menu on the iPAQ screen after the bootloader does it's thing.

Now there is a bug that I haven't gotten around to troubleshooting yet. When I select "boot Intimate", the script informs me that it "Can't find /dev/hda1", the CF card. Simply eject the card, and re-insert it, and the loader will like that and continue booting. I'll update this document when I find a fix for it.


3.7 Making Opie default

Reference: intimate.handhelds.org
Though Blackbox is a really cool window manager, I prefer to run Opie. Now, Intimate is running X-windows, so we'll have to install opie on the CF card. Hang on a second! I thought Intimate was Debian, and Debian doesn't have "ipkg". Hmmm,..you're right! Welp,...let's fix that. Following the instructions found at http://intimate.handhelds.org/QPEHowTo.shtml, I see that we have to copy over the ipkg script and the /etc/ipkg.conf file from the Familiar ROM to the Intimate CF. Also notice, that those instructions are for installing QPE. Hmm, close, but I'd rather run Opie. No problem, I simply substituted the suggested :

IPKG_SOURCE="http://qpe.sourceforge.net/packages/ipaq/"

with

IPKG_SOURCE="http://opie.handhelds.org/feed/ipaq"

After completing those instructions, one last reboot to make sure everything is working, and Viola! You now have a fully functional iPAQ whether or not you have the CF card installed.