Touch Orbiter for the GPE Handhelds

From LinuxMCE
Revision as of 18:21, 18 October 2010 by Cfernandes (Talk | contribs) (Installing Task-Bootstrap via Serial Port)

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.