Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
ipaq_notes [2020-02-22 11:03]
nik old revision restored (2012-04-06 14:41)
ipaq_notes [2020-02-22 11:06] (current)
nik old revision restored (2020-02-22 00:25)
Line 1: Line 1:
 +
 +
 +
 +===== Compaq ipaq H3650 =====
 +
 +
 +
 +==== disassembly (physical) ====
 +
 +  * http://​www.dalecoffing.com/​iPAQ/​iN_the_iPAQ/​iN_the_iPAQ.htm
 +  * http://​www.pocketpcpassion.com/​iPAQ/​iN_the_iPAQ/​iN_the_iPAQ.htm
 +
 +==== GNU/Linux =====
 +
 +  * best place to start is http://​ww.handhelds.org
 +  * Setting up USB link between PC and iPAQ (using Linux) http://​dredd.crimea.edu/​ipaq/​ipaq-usb-howto-new.html
 +  * iPAQ hypermail archive http://​www.handhelds.org/​pipermail/​ipaq/​
 +  * handhelds.org - source archive with CVS access http://​www.handhelds.org/​sources.html
 +
 +
 +==== GNU/Linux distributions ====
 +
 +  * Familiar http://​familiar.handhelds.org/​
 +  * http://​www.ipaqlinux.com/​
 +  * http://​www.pocketlinux.com/​
 +  * http://​www.arm.linux.org.uk/​
 +  * ftp://​ftp.de.debian.org/​debian/​dists/​stable/​main/​binary-arm/​
 +  * Building Linux for the nanoEngine http://​recycle.lbl.gov/​~ldoolitt/​bse/​
 +  * Debian/ARM
 +    * Embedded Debian http://​www.emdebian.org/​
 +    * Debian on the iPAQ http://​primates.helixcode.com/​~vladimir/​ipaq/​debian-ipaq-howto.html
 +    * Debian/ARM distribution ftp://​ftp.de.debian.org/​debian/​dists/​stable/​main/​binary-arm/​
 +    * installation http://​www.jimpick.com/​pub/​debian/​arm/​image/​README.Install
 +
 +
 +==== Familiar project ====
 +
 +  * Currently Familiar'​s Linux distribution supports some of the following key features
 +    * Entirely based on XFree86'​s/​keithp'​s Tiny-X server, which includes the latest RENDER extension.
 +    * Anti-Aliased True-Type Font support in rxvt, ion, blackbox, and fltk (this is extended to any X application using the Xft APIs).
 +    * OpenSSH'​s ssh and sshd included by default.
 +    * The latest releases include JFFS2 supported, which enables you to have read/write access to the iPAQ's Flash.
 +    * Integrated Python v2.0 w/ PyGtk and PyGDKImlib.
 +    * Binary and Library compatible w/ Debian'​s ARM distribution. In most cases, programs (as long as their dependencies are met) can be taken from Debian and executed on the iPAQ w/out issue.
 +    * Full package support based on ipkg.
 +  * http://​familiar.handhelds.org/​
 +  * Familiar v0.5.1-pre http://​familiar.handhelds.org/​familiar/​releases/​v0.5.1-pre/​
 +  * Familiar dependency graph http://​handhelds.org/​~cworth/​dependencies/​graphs.html
 +  * stock root password: rootme
 +  * Hints for setting up PPP http://​www.handhelds.org:​8080/​wiki/​PPPHowto
 +  * file transfer is easiest using: wget <URL>
 +  * X11 configuration:​ /​mnt/​ramfs/​etc/​rc2.d/​S99x
 +  * window manager
 +    * blackbox
 +    * SWM - a small window manager http://​swm.sourceforge.net/​
 +  * additional software: /usr/local (/​dev/​mtdblock6 on /usr/local type ext2 (rw,​noatime))
 +  * PPM image viewer http://​vulcan.tky.hut.fi/​~jkirma/​stuff/​ppmview.c
 +  * X server for PCMCIA VGA card
 +    * http://​www.fairlite.demon.co.uk/​handhelds.html
 +    * Xipaq -screen 320x240 -card pcmcia -screen 800x600
 +  * customizing the window manager ​
 +    * /​usr/​X11R6/​bin/​pyditor ​
 +    * /​etc/​X11/​blackbox/​blackbox-menu
 +
 +
 +==== working with intimate/​familiar ====
 +
 +
 +  * Intimate Distribution http://​intimate.handhelds.org
 +  * bootparams: noinitrc root=/​dev/​mtdblock3 init=/​linuxrc.intimate console=ttySA0 devfs=mount
 +  * microdrive partitioning
 +
 +<​file>​
 +    Disk /dev/hde: 32 heads, 63 sectors, 347 cylinders
 +    Units = cylinders of 2016 * 512 bytes
 +
 +    Device Boot    Start       ​End ​   Blocks ​  ​Id ​ System
 +    /​dev/​hde1 ​            ​1 ​      ​281 ​   283216+ ​ 83  Linux
 +    /​dev/​hde2 ​          ​282 ​      ​347 ​    ​66528 ​  ​82 ​ Linux swap
 +</​file>​
 +
 +
 +  * mounting the microdrive later
 +  * insmod reiserfs (for reiserfs support. most filesystems are jffs2)
 +  * mount /dev/hda1 /mnt
 +  * network configuration
 +  * /​etc/​network/​interfaces
 +  * standard ifconfig
 +  * QPE for iPAQ
 +  * Installation instructions http://​qpe.sourceforge.net
 +  * ipkg distribution files http://​qpe.sourceforge.net/​packages/​ipaq/​
 +  * Stowaway activation when using intimate
 +
 +<​file>​
 +   ln -s /dev/tts/0 /dev/ttySA0
 +   ​insmod h3600_stowaway
 +   /​usr/​bin/​stowd &
 +</​file>​
 +
 +==== ARM cross-compilation ====
 +
 +  * CrossCompiler notes for setting up a toolchain
 +  * Linux ARM http://​www.tazenda.demon.co.uk/​phil/​armlinux/​
 +  * Linux ARM toolchain / cross-compiler http://​www.tazenda.demon.co.uk/​phil/​arm-tools.html
 +  * ARM compiler from LART project http://​www.lart.tudelft.nl/​lartware/​compile-tools/​
 +
 +<​file>​
 +  export CC=arm-linux-gcc
 +  ./configure --enable-speed --enable-fpm=arm --enable-sso arm-linux
 +  make
 +</​file>​
 +
 +
 +  * most recent bootldr ftp://​lorien.handhelds.org/​pub/​linux/​feeds/​bootldr/​
 +  * iPAQ download site ftp://​lorien.handhelds.org/​pub/​linux/​feeds/​demo/​
 +  * iPAQ kernel compilation - from the CRL CVS
 +  * http://​cvs.handhelds.org/​cgi-bin/​viewcvs.cgi/​linux/​kernel/​arch/​arm/​def-configs/​ WWW CVS access to e.g. .config file (use with: make oldconfig)
 +  * using standard CVS tools
 +
 +<​file>​
 +       ​export CVSROOT=:​pserver:​anoncvs@cvs.handhelds.org:/​cvs
 +      # # Password: anoncvs
 +      cvs checkout -r {tag} linux
 +      e.g.: cvs checkout -r K2_4_6-rmk2-np1-hh2 linux
 +      make mrproper
 +      # this removes e.g. version.h (check this file later if unsure)
 +      cp arch/​arm/​def-configs/​h3600-familiar .config
 +      make oldconfig
 +      # CONFIG_EXTRAVERSION="​-fam4"​ (don't forget the -)
 +      make bzImage
 +</​file>​
 +
 +
 +==== Cross-compile hints ====
 +
 +  * add the option: ​ --with-tools=/​path/​to/​cross-compiler/​prefix-for-gcc- for example, if your cross-gcc were /​usr/​arm/​bin/​arm-linux-gcc,​ then  you'd use the option "​--with-tools=/​usr/​arm/​bin/​arm-linux-" ​ (with trailing ​ dash - the commands gcc, cl, g++, ... will be appended to this option'​s value!)
 +  * make sure, it doesn'​t try to link the host-platforms libraries.
 +  * you have to add the options: --with-fgllib=../​../​fgl --with-ipllib=../​../​ipl (the values for the options are the defaults, so perhaps you might omit them)
 +  * stripping executables:​ arm-linux-strip hello-world
 +
 +
 +
 +==== StrongARM kernel compilation ====
 +
 +  * TU Delft ARM cross-compile tools http://​www.lart.tudelft.nl/​lartware/​compile-tools/​
 +  * the LART precompiled cross-compiler goes to: /​data/​lart/​cross/​
 +  * 2.4 kernel source (mirrored) ftp://​linux.mathematik.tu-darmstadt.de/​pub/​linux/​mirrors/​sites/​ftp.kernel.org/​kernel/​v2.4/​
 +  * rmk patches ftp://​ftp.arm.linux.org.uk/​pub/​armlinux/​source/​kernel-patches/​
 +     patch -p1 -d `pwd`/linux < patch-2.4.4-rmk3
 +  * np patches ftp://​ftp.arm.linux.org.uk/​pub/​armlinux/​people/​nico/​
 +     patch -p1 --verbose -f -d `pwd`/linux < diff-2.4.4-rmk3-np1
 + 
 +  * General list of patches for various ARM machines http://​www.arm.linux.org.uk/​developer/​machines/​
 +  * cross-compiled gcc must be at correct place (e.g.: /​opt/​arm-cross-gcc,​ just setting the PATH is not sufficient and results in complaints about components not found)
 +
 +
 +
 +
 +
 +===== Hardware + accessories =====
 +
 +
 +  * 3600 Hardware specifications http://​www.handhelds.org/​Compaq/​iPAQH3600/​iPAQ_H3600.html
 +  * Sleeve modification discussion http://​www.brighthand.com/​ubb/​Forum33/​HTML/​002034.html
 +
 +  * ipaq battery extender http://​www.integrityonline10.com/​dcoffing/​Casio/​DennisWolfe/​BatteryExtender/​BatteryExtender.htm
 +  * Compaq info on PCMCIA compatible products http://​www.compaq.de/​produkte/​handheld/​infos/​pcmcia.htm
 +  * German vendor for supplementary ipaq equipment http://​z-com.de/​web/​Notebook-HandheldHandheld-Organizer.htm
 +  * Colorgraphics
 +    * maker of the Voyager PCMCIA VGA card http://​www.colorgraphic.net/​products/​navigvoyager.html
 +    * review http://​www.zdnet.co.uk/​pcmag/​labs/​2000/​04/​pda/​30.html
 +    * vendor http://​www.peak-development.co.uk/​multimedia_windows_ce/​vga_out_pc_card.htm Vendor for colorgraphics voyager PCMCIA vga
 +    * German Vendor:​Promise-Computer Oliver Devrient, Bretonischer Ring 9, 85630 Grasbrunn.Tel.:​+49 (0)89 4620 4080
 +    * product limitations http://​faqs.org/​faqs/​pc-hardware-faq/​laptops/​compaq-aero/​section-104.html
 +    * vendor FAQ http://​www.colorgraphic.co.uk/​voyagerfaq.htm
 +  * Margi DVD-to-Go PCMCIA card outputs PAL or NTSC
 +    * http://​www.margi.com/​products/​dvdtogo.html
 +    * Linux driver http://​www.linuxtv.org/​developer/​margi.xml
 +  * Keyboard to RS232/IrDA adaptor for Pocket PC devices http://​www.microfoundry.com/​
 +  * Memory/Disk layout
 +
 +<​file>​
 +
 +   /​dev/​flash4 on / type cramfs (ro)           => load flash 0x200000
 +   /​dev/​flash3 on /mnt/init type cramfs (ro)   => load flash 0x100000
 +   /​dev/​flash5 on /usr type cramfs (ro)        => load flash 0x500000
 +   ramfs on /mnt/ramfs type ramfs (rw)
 +   ramfs on /dev type ramfs (rw)
 +   none on /proc type proc (rw)
 +   none on /dev/pts type devpts (rw,​mode=0622)
 +</​file>​
 +
 +  * Foxconn - Reseller for iPAQ connectors http://​www.foxconn.com/​products/​ipaq.asp
 +  * using the serial port http://​www.handhelds.org/​minihowto/​h3600-serial-cable.html
 +  * Pinout of the internal/​external connectors http://​www.handhelds.org/​Compaq/​iPAQH3600/​iPAQ_H3600.html
 +
 +
 +==== serial connection to the ipaq ====
 +
 +connect using a terminal program with the settings - 11520 8nl no flowcontrol ​
 +on unix try
 +
 +<​file>​
 +cu -s 115200 -l /dev/ttyS0
 +</​file>​
 +
 +==== usb conection to the ipaq ====
 +
 +it is possible to make a terminal connection to the ipaq (running linux) if the usb-net kernel module is installed to enable ethernet over usb. (needs more details!)
 +
 +see handhelds.org discusion/​docs on usb networking ​
 +
 +how to set it up http://​www.handhelds.org/​z/​wiki/​How%20do%20I%20setup%20USB%20networking ​
 +
 +how to survive suspension http://​www.handhelds.org/​z/​wiki/​Setting%20Up%20USB%20Networking%20to%20Survive%20Suspension ​
 +
 +
 +==== pinout of the connector taken from the serial cradle ====
 +<​file>​
 +CON 1     01 02 03 04 05 06 07 08 09 10 11 12
 +
 +CON 2     01 02 03 04 05 06 07 08 09 10 11 12 13 14
 +
 +towards serial connector (9-pin): 01-10
 +          (bl vio bl rd ora bn gb gre gr bl)
 +
 +serial ​  ​PC ​  ​CON2 ​   CON1  iPAQ
 +                      01,02 V_ADP (AC adapter power in)
 +
 +01       ​DCD ​ 01      03    DTR
 +06       ​DSR ​ 01      03    ???
 +05       ​GND ​ 09      04,10 GND
 +07       ​RTS ​ 02      05    CTS
 +08       ​CTS ​ 03      06    RTS
 +02       ​RXD ​ 04      07    TXD
 +03       ​TXD ​ 05      08    RXD
 +04       ​DTR ​ 07      09    DCD
 +09       ​RI ​  ​08 ​     ??    NC
 +
 +
 +                      10    GND                              - USB 4 (gb  - my wire)
 +              11      11    UDC_P (USB positive data signal) - USB 3 (ora - my wire)
 +              12      12    USB_N (USB negative data signal) - USB 2 (gr  - my wire)
 +
 +1 VCC Red   +5V
 +2 D-  White Data -
 +3 D+  Green Data +
 +4 GND Black Ground
 +
 +THIS IS A LOOK AT THE PLUGS ON THE CABLE - NOT THE SOCKETS !
 +
 + ​--------- ​      ​______
 +| 4 3 2 1 |     / 1  2 \
 +|         ​| ​    ​| ​     |
 +|---------| ​    | 4  3 |
 +|---------| ​     ------
 +</​file>​
 +
 +===== software links =====
 +
 +
 +
 +  * OSLoader specific questions http://​www.handhelds.org/​z/​wiki/​OSloader
 +  * Embedded QT http://​www.linuxdevices.com/​news/​NS6133695536.html
 +  * madplay MP3 player http://​www.mars.org/​home/​rob/​proj/​mpeg/​
 +  * GQView and GQmpeg http://​www.geocities.com/​SiliconValley/​Haven/​5235/​
 +  * gqmpeg for the ipaq http://​www.cs.washington.edu/​homes/​swanson/​ipaq/​gqmpeg.html
 +  * splay MP3 player for StrongARM ftp://​ftp.netwinder.org/​users/​n/​nico/​
 +  * aumix for ARM ftp://​ftp.handhelds.org/​pub/​linux/​arm/​carleton-winder-rpms/​RPMS/​aumix-1.18.2-2.armv4l.rpm
 +  * Speech synthesis (rsynth) running on the iPAQ http://​www.angelfire.com/​my/​sgodsell/​
 +  * Deep Sleep http://​www.handhelds.org:​8080/​wiki/​DeepSleepNow
 +  * The Embedded Debian Project - includes cross compiler instructions http://​www.emdebian.org/​
 +  * Building Linux for the nanoEngine (includes cross-compiler setup instructions) http://​recycle.lbl.gov/​~ldoolitt/​bse/​
 +  * Java on the iPAQ
 +    * Java on ARM http://​www.netwinder.org/​~andrewt/​java.html
 +    * IBM jikes bytecode compiler http://​oss.software.ibm.com/​developerworks/​opensource/​jikes/​
 +    * Visual Age Micro Edition http://​oss.software.ibm.com/​developerworks/​opensource/​jikes/"​
 +    * JDK 1.1.8 for ARM from BlackDown http://​www.mirror.ac.uk/​sites/​ftp.blackdown.org/​java-linux/​JDK-1.1.8/​arm/​v2/​
 +
 +
 +
 +==== wireless + networking ====
 +  * network setup =&gt; /etc/pcmcia =&gt; network / network.opts
 +  * DHCP via /sbin/pump
 +  * WaveLAN card in adhoc mode
 +
 +<​file>​
 +     ​iwconfig wvlan0 essid any mode ad-hoc
 +     ​ifconfig wvlan0 192.168.1.70 netmask 255.255.255.0
 +</​file>​
 +
 +==== notes ====
 +  * changes can be done in init filesystem =&gt; will be copied to /etc ... in ramfs by /linuxrc
 +  * usb-serial kernel module args: insmod usbserial vendor=0x049f product=0x0003
 +
 +==== Mailing Lists ====
 +
 +  * Mailing list archive (www.handhelds.org) http://​www.handhelds.org/​pipermail/​ipaq/​
 +
 +----
 +
 +-- authors: rac@iptel-now.de,​ [[nik Gaffney]] and the [[Network Mind]]