Supported Devices
-----------------

There are 3 different models of HP iPAQ h6300 series that has been tested to work.
(At least english and deutch editions.)
- HP iPAQ h6315 (USA model)
- HP iPAQ h6340 (European model)
- HP iPAQ h6365 (Asian model)

Requred Files and Tools
-----------------------
To install and boot Linux on iPAQ h6300 series device you will need following
1) 1 empty MMC or SD card. (Many different 128 - 512 MB MMC and SD cards has been tested)
2) 1 MMC/SD card reader that can be connected to your computer
3) h6300 bootloader files (available in h6300_linux_bootloader.tar.bz2)
	bootstrap.bin
	wililo.exe
	wililo.cfg
	zImage
4) h6300 GPE or OPIE rootfs image in tar.bz2 format
5) Linux desktop from where you can partition the MMC/SD card to FAT32 and EXT2 partitions by
  using the card reader as a help
6) /ipk directory contains the python packages you need to install afterwards to be able to execure gprs-config tool
   written in python

Basic Installation Steps
------------------------
1) Connect SD/MMC card reader to your Linux desktop
2) Insert SD/MMC card to your card reader and backup files from there
3) Check where the SD/MMC card was added in /dev/ by using command
	- "ls -la /dev/sd*"
4) Unmount the SD/MMC card while still keeping it in the card reader
5) Repartition the SD/MMC card to 2 partitions
	- partition 1: FAT32, minimun size 10-20 MB	(Type b in fdisk)
	- partition 2: Ext2, minimum size 150 mb	(type 83 in fdisk)
6) Format the FAT32 and EXT2 partitions	
	- fat32 partition 1: mkfs.vfat /dev/sd*1	(replace the * with the correct alphabet in your system)
	- ext2 partition 2: mkfs.ext2 /dev/sd*2		(replace the * with the correct alphabet in your system)
7) Remount the fat32 and ext2 partitions		(by removing and inserting back to card reader should work in most of the systems)
8) Extract the GPE or OPIE rootfs tar.bz2 to EXT2 partition in your MMC/SD card
	- change to root user so that file permissions of extracted files gets correct
	- use command: tar -xvjf <rootfs image> -C </mnt/removable1>	
	  (replace </mnt/removable1> with the EXT2 mount point you have)
9) Extract the bootloader files to FAT32 partition in you MMC/SD card
	- use command: "tar -xvjf h6300_linux_bootloader.tar.bz2 -C </mnt/removable>"	
	  (replace </mnt/removable> with the FAT32 mount point you have)
	- copy the latest zImage from the "/boot" folder from your EXT2 partition to your FAT32 partition
10) Unmount the FAT32 and EXT2 partitions before removing the card to make sure that files gets copied properly

Booting to Linux
----------------
1) Insert MMC/SD card to your HP iPAQ
2) Backup your iPAQ by using "Backup/Restore" tool in WINCE
3) Reset WINCE by pressing small hole in the left side of the iPAQ for a while
4) Enable the phone after WINCE has started (and enter pin code if needed)
5) Launch the file explorer in WINCE and go to FAT32 partition in MMC/SD card.
   ("\Storage Card" in english version)
6) Launch the wililo.exe by double clicking it in the FAT32 partition
   (Note this must be done in a couple of minutes after resetting wince, other boot will fail)
7) Select boot option from the list (note list is editable via wililo.cfg)
	- SD/MMC card boot for normal boot
	- NFS boot if you have installed rootfs image 
          to your computer's NFS partition and have connected iPAQ to your computer via 
          USB cradle cable
8) Wait for Linux to boot up
	- first you should see text that bootstrap.bin and kernel are loaded
	- then you should see kernel console messages
	- then you will see a black screen for a while
	- then you should see a white GPE logo appearing in white image
	- finally you should see the X starting 
	- touschreen calibration screen for your
8) Calibrate screen in Linux
9) Enter the super user password
10) Add normal user and password
11) Login as a user
12) enjoy :-)

GSM Phone Usage
---------------
1) Enable phone in wince before booting to WINCE
2) Launch gomunicator in Linux by clicking the panel and selecting "add/gomunicator"

GPRS Usage
----------
Note you need to close gomunicator to be able to use gprs as they both use /dev/ttyS1 serial port 
and can not share that currently. See http://www.handhelds.org/moin/moin.cgi/hpipaqh6300gprs for the details

1) Open console and change to root user
2) go to /ipk directory and install python
	- ipkg install /ipk/libpython2.4-1.0_2.4.2-ml4_arm.ipk
	- ipkg install /ipk/python-core_2.4.2-ml2_arm.ipk
	- ipkg install /ipk/python-shell_2.4.2-ml1_arm.ipk
	- ipkg install /ipk/python-re_2.4.2-ml2_arm.ipk
	- ipkg install /ipk/python-pygtk2_2.6.2-r4_arm.ipk
3) configure gprs
	- gprs-config
	- add your ISP's DNS name servers to /etc/resolv.conf
4) Start GPRS with command 
	- usr/sbin/pppd call gprs
5) and you are in the net...

Booting back to wince
---------------------
1) Reset Linux
2) Make hard reset by pressing the power button and small hole in the left side of the ipaq down about 3-5 seconds
3) Wait WINCE to boot (if wince boot fails you made normal reset instead of hard reset. --> Try to make hard reset again)
4) Calibrate WINCE screen
5) Restore your backup

news
----
- This release is based on to familiar-0.84.1 git tree but contains various patches
  not yet applied to there. (see http://aragorn.kortex.jyu.fi:8080/gitweb/gitweb.cgi for details)
- Phone application (gomunicator) will work in GPE image. 
  You are required to enable the Phone in wince before booting to Linux to be able to use
  phone
- gomunicator is now applet (add it to panel as launching via menu is not possible anymore)
- gprs can be started with command: "/usr/sbin/pppd call gprs"
  Note multiplexer support is missing so, gomunicator must be closed while using gprs over ppp.
- battery information is now available in gomunicator in matchbox-battery-applet.
  Gomunicator is used to optain battery information and battery-applet queries the data
  by using d-bus API
- apmd is able to suspend the device after a couple of minutes in activity. 
  (actually we use command "echo mem > /sys/power/state" instead of apm kernel api here)
- suspend/resume with power button works
- gpe-mini-browser updated to latest svn version
- hciattach command can now accept bts init script as a parameter to raise the speed to 921600.

For more detailed information from the install process, please follow out instructions in
	- http://aragorn.kortex.jyu.fi:8080/h6300/H6300_Boot.html and
	- http://www.handhelds.org/moin/moin.cgi/HpIpaqH6315

Fastest way to get h6300 specific support is to connect us in "h6300-port" irc channel at freenode or by sending questions to 
h6300-port@handhelds.org mailing list. (Subscribe via http://www.handhelds.org/mailman/listinfo/h6300-port)

br,
	Mika Laitio
	<lamikr@cc.jyu.fi>

