This applies to all H4000 series iPAQs (although there may be specific issues here and there).
The files you will need can be downloaded here: http://www.angstrom-distribution.org/releases/2007.12/images/h4000/
You will only need a SD Card for this. It must be 256MB or bigger (total file size is around 180MB).
Download the following files
Angstrom-boot-2.6.21-hh20-r6-h4000.exe
Angstrom-x11-image-glibc-ipk-2007.12-h4000.rootfs.tar.gz
startup.txt
zImage-2.6.21-hh20-r6-h4000.bin
We do this instead of using the “liveramdisk” image in order for wireless to work, and to be able to hard reset your device without losing any linux files/settings.
Using cfdisk or a graphical partition editor create two partitions.
A first (smaller) FAT partition in order to store the *.exe, *.bin and *.txt file(s).
The second (larger) EXT2 partition to store the filesystem. (rootfs)
Mount the ext2 partition, and do the following
tar xpzf Angstrom-x11-image-glibc-ipk-2007.12-h4000.rootfs.tar.gz -C /media/disk2
Where /media/disk2 is your mounted ext2 partition.
You need to edit a file for wireless to work.
/etc/modprobe.d/acx.conf
Remove/blank this file, for some reason the acx module is blacklisted. Perhaps it causes some issues with other 4000 devices?
You should also check out
/etc/network/interfaces
to add some wireless networks.
You should also get rid of some startup programs (if you don’t need them)
Move the following to a safe place (/root?)
/etc/rc5.d/S10dropbear
/etc/rc5.d/S20syslog
/etc/rc5.d/S23bluetooth
This will disable bluetooth support, logging and remote SSH access.
In order for wireless to work after suspend, you need to make two files.
/etc/apm/suspend.d/S50ifdown
case $1 in
start)
ifdown wlan0
rmmod -f acx
;;
esac
/etc/apm/resume.d/S50ifup
case $1 in
start)
modprobe acx
sleep 1
ifup wlan0
;;
esac
Set up your /etc/network/interfaces file (or use the GUI) for ifdown/ifup to work.
You might also want to remove /etc/apm/resume.d/50-gpe-bluetooth-resume
In Windows, browse to your ‘Storage Card’ and run the exe file. Choose the second of the three options for booting linux, and if all goes well you’ll running linux in no time! You will lose all your Windows settings.
If anything goes wrong, do the following to perform a ‘hard reset’
1. Hold down the power button
2. Use the stylus to press down the reset button on the side of the PDA
3. Let go of the power button while still pressing the reset button
4. Let go of reset. Device should boot into Windows.
Other issues/Comments
For some reason, my battery is not detected under Windows 2003 (can’t tell there’s a battery, nor the charge). Works with Linux, so not sure what’s up with that.
Wireless so far has performed flawlessly. I get the same latency I get from my laptop when pinging yahoo.com, and see 2-4ms latency on the same network. Very surprising, since on Windows internal network latency would be around 20-40, with outside networks having horrible (100-200) latency.
All in all, I think I’m going to have a lot of fun with this device. And for around $80 on ebay, it’s not a bad deal.