Touch Orbiter for the GPE Handhelds

From LinuxMCE
Jump to: navigation, search

This is only preliminary info, more will follow

Touch Orbiter for GPE Handhelds (IPAQ ) Install Linux on Ipaq Installing the bootldr via BootBlaster

The first step in running Linux on the iPAQ in Native or Dualboot configuration is to upgrade the firmware to one that can boot Linux. We use firmware that we wrote at Compaq Research and that has been extended by members of the community, called bootldr.

Installing BootBlaster via ActiveSync

Connect your iPAQ via the USB or serial cradle or cable.

If using a serial cradle or cable, then configure your iPAQ to use the serial port for ActiveSync.

Select settings from the Start Menu (the Microsoft flag icon)

Click the Connections tab, and then double-click the PC icon.

Ensure the Automatically synchronize when serial cable is connected using is checked.

Change USB to 115200 Default.

click OK (top right of the screen).

Use the ActiveSync application to connect to your iPaq 3600 from your PC. If there is not an ActiveSync icon in the tool tray, then use the Start->Program->ActiveSync menu item to start it. Start->Program->ActiveSync

Copy BootBlaster_1.18.exe [1] to the default folder on your iPaq from your Windows machine using drag and drop or cut and paste. You may safely ignore any messages that say it "may need to convert" file formats.

Copy bootldr-2.18.01.bin[2] to the default folder on your iPaq from your Windows machine. Again, You may safely ignore any messages that say it "may need to convert" file formats.

Starting BootBlaster

On your iPaq H3600, use the File Navigator to find BootBlaster_1.18.exe wherever you put it, and then invoke it by tapping it with the stylus.

Backing Up PocketPC

From the "Flash" menu, select "Save". This will save a copy of your current bootloader to DRAM on the iPAQ (under the name "saved_bootldr.bin").

Copy the "saved_bootldr.bin" off of your iPAQ and put it in a safe place in case you wish to restore it later.

From the "Flash menu, select Save Windows gz This will copy and compress all the flash ROM on your ipaq into a .gz file along with a file containing the asset information from your iPAQ. This will take a while. After it is complete, copy these files to your PC to save them. Under normal circumstances, installing Linux will not touch the asset partition in flash, but it is safer to have a backup copy.

Wait very patiently This will take many minutes, but a progress bar is displayed.

Installing the Bootldr

From the "Flash" menu on BootBlaster, select "Program". A file dialog will open allowing you to select the bootloader to use. Select the bootloader from step #5.

First, BootBlaster protects all the flash blocks containing PocketPC so that there is no way that an interruption in the programming process can cause the OS to be corrupted.

Sometimes BootBlaster freezes during this process. If it sits for more than 15 seconds with no activity, then reboot the iPAQ by pushing the recessed reset button at the bottom right and repeat this step. It is perfectly safe to reset the iPAQ if it freezes while protecting flash.

After protecting flash, BootBlaster erases the boot sector and then it programs the new boot loader into the boot sector.

Installing Task-Bootstrap via Serial Port

Installing Familiar 0.8.4 with a serial line

You will need a serial sync cable or serial sync cradle. The dual USB/Serial cradle that comes with the H3800 and H3900 will also work. You will need to use a terminal program such as minicom, kermit, or Hyperterminal.

If you use minicom or kermit, you will need to use an external ymodem program such as sb, which is available in the Linux lrzsz package.

Hold down the joypad and push the reset button on the iPAQ. You will need to remove it from the cradle to access the reset button.

For non-H5xxx: When the bootloader splash screen appears, release the joypad.


For H5xxx: When the iPAQ buzzes, release the joypad. The screen will not change from whatever was previously displayed (blank, PocketPC, etc). If the iPAQ does not stop vibrating, remove the AC adapter and the battery, then reinsert the battery and the AC adapter and perform try this step again. Press the calendar button on the iPAQ. This is the leftmost action button, labelled "Serial Bootldr Console" on the screen.

Make sure the terminal emulator is up and running, and is properly interacting with the bootloader. Proper interaction consists of being able to issue commands, and get responses (e.g. the help command should return the bootloader usage). Your terminal emulator must be set to 115200 8N1 serial configuration, no flow control, no hardware handshaking. Failing to use these settings will lead to trouble, so double and triple check all settings.

If you cannot interact with the bootloader, make sure your terminal settings are correct, the iPAQ is properly connected to the host computer, and the iPAQ is actually on. If everything seems fine, try restarting the host terminal emulator and resetting the iPAQ again.

Hyperterminal is particularly ill-behaved. Sometimes it uses 100% of the CPU without allowing any interaction with the iPAQ. In that case, you will need to use the task manager to terminate Hyperterminal before you can restart it.

At the "boot>" prompt, issue the following command: load root

Proceed to send or "upload" the jffs2 file (from the tarball that you downloaded earlier) with ymodem, using the terminal emulator. If you have not used ymodem before or you have any trouble with this command, please see handhelds-faq/getting-started.html#USING-XYZMODEM.

Note that the bootldr now expects ymodem by default, not xmodem as in earlier versions. If you are unable to use ymodem for some reason, you can revert to xmodem operation with the command set ymodem 0

You should see something like:

boot> load root loading flash region root ready for YMODEM download.. Erasing sector 00140000 Erasing sector 00180000 Erasing sector 001C0000 Erasing sector 00200000 . . . addr: 00360000 data: 781590DB addr: 00370000 data: 642637AE addr: 00380000 data: E0021985 addr: 00390000 data: 15DA97EC Erasing sector 00FC0000 writing flash.. addr: 00100000 data: E0021985 addr: 00110000 data: E3BAD617 addr: 00120000 data: 0FA1F57B addr: 00130000 data: 9343AEEB . . . addr: 00600000 data: E0021985 addr: 00610000 data: FFFFFFFF addr: 00620000 data: FFFFFFFF addr: 00630000 data: FFFFFFFF verifying ... formatting ... done. boot>

At the "boot>" prompt, issue the following command: boot

Linux should now start booting.

Installing Familiar 0.8.4 from CompactFlash

Bootloader GUI (h3600, h3700, h3800 and h3900)

Copy reflash.ctl, md5sums and the appropriate jffs2 files to the root directory of the CF card. The CF card should have a vfat filesystem. Almost all cards come pre-formatted with a vfat filesystem. Insert the CF card into the iPAQ. (If you are using a dual-CF sleeve, the card must be in the first slot.) Hold down the joypad and push the reset button on the iPAQ. You will need to remove it from the cradle to access the reset button. When the bootloader splash screen appears, release the joypad.


Check the version number on the splash screen. If it is lower than 2.21.12, or there is no version number at all, you should upgrade the bootloader before proceeding. Push the record button on the side of the iPAQ. After a short pause, you will be offered a menu of images and invited to select one. Move the highlight using the joypad, then press the centre of the joypad to select the desired item. Press the record button again when prompted to do so. Wait patiently. The flashing process will take a few minutes. When installation is complete, reset the machine by pressing the action button (centre of the joypad) again. Bootloader console (h5400, h5500)

As the bootloader doesn't currently support the screen on the h5400/h5500, you will need to use the serial console to flash your iPAQ from CF. Connect to the bootldr serial console as described in the serial installation instructions, but instead of load root, do the following:

Insert your CF card Load the jffs2 image into the root by entering the following bootloader command (replacing filename.jffs2 with the name of the jffs2 image file on the card): copy hda1:filename.jffs2 root Boot it: boot