Getting Debian running on a iPAQ hx4700 (work in
progress). Touchscreen is working in X. GPE working.
Some time ago I bought a iPAQ hx4700. This handheld has almost
complete support for linux, only the WLAN is not yet supported.
The installation guide on
handhelds.org.
Installing using these installation instruction went pretty good.
I just followed the instruction carefully and everything worked.
Only familiar is a bit clumsy, maybe some people don't mind not
having the man pages, or don't mind not having subversion, emacs,
firefox, gcc, etc. but I do. So I decided to try to install debian on it.
After a bit looking around I found out I should use
debootstrap
Getting the base system installed this way was pretty
straightforward.
I am currently trying to get X to work. The debian included
xserver-xorg, fails to start. Familiar included the tiny, so I am
trying to build tinyx now. Building tinyx was terrible, there
wasn't enough space on the CompactFlash and it takes ages. After
finally having a tinyx it starts and something appears on the
screen, but it is doubled.
So I tried the default debian xorg-xserver again, which didn't
work, but it gave me the following error:
(EE) FBDEV(0): FBIOPUT_VSCREENINFO: Invalid argument
(EE) FBDEV(0): mode initialization failed
After searching for FBIOPUT_VSCREENINFO, I managed to find out
that it had something to do with the Depth. Thus I removed the
DefaultDepth and Depth lines in the Screen section of xorg.conf,
and now it is only complaining that I don't have a input device.
After telling the thing that I have a mouse at /dev/input/event0,
I finally get my xclock.
Now I still need to get the touchscreen and gpe to work.
Found out that familiar uses tslib. Got tslib from
ARM Linux CVS (I think
that is the base source). Managed to get it to work using
ts_calibrate and ts_test. It appears that tslib is only supported
by tinyx, not by the normal xorg-xserver, but I found
this a hack to
get tslib working with gpm. I modified the hack to get absolute
positioning instead of relative positioning, and I still needs to
get the scaling right, but the cursor is working in X.
Still trying to get the cursor properly working in X. Tought
about creating a X Input driver, so I will need to compile
X. Tried getting nfs working, but I couldn't get it to work. But
nbd works, so now I have an additional 4GB device.
The XInput driver is working.
Basic Debian installation
# debootstrap --arch arm --foreign etch /mnt/image http://ftp.nl.debian.org/debian/
On the hh:
# chroot /media/cf
# ./debootstrap/debootstrap --second-stage
Mounting nbd
nbd looses connection after some time, so I recommend that you don't use it.
GPE
I made deb packages for gpe-login, gpe-dm, gpe-ownerinfo, mb-applet-input-manager, xkbd.
matchbox is already included with debian, thus creating a workable debian X-windows setup.
I couldn' get dbus to work with an X-session, therefore gpe-bluetooth also doesn't work.
Getting X to work
# apt-get install xserver-xorg xbase-clients xfonts-base matchbox-window-manager matchbox-desktop matchbox-panel
Add to /etc/fstab
proc /proc proc defaults,noatime 0 0
/etc/X11/xorg.conf
# cd /dev && MAKEDEV tty1 tty2 fb0 input
# /usr/bin/X11R6/startx /usr/bin/X11R6/xcalc