Linux and Psion HOWTO
  Hans Kugler, der.hans@LuftHans.com
  v0.0.6, Nov 1999

  This document describes how to use Psion palmtops with Linux, but does
  not cover running Linux on a Psion palmtop. See the Linux 7k project
  <http://www.calcaria.net/> for that.
  ______________________________________________________________________

  Table of Contents


  1. About this HOWTO

     1.1 Introduction
     1.2 This Document
     1.3 Mailing List
     1.4 Copyright notice and disclaimer

  2. General Information

     2.1 What is a Psion
     2.2 Psion models
     2.3 Psion Availability

  3. Sharing data between the Psion and Linux

     3.1 Hardware connectivity options
        3.1.1 Serial cable
        3.1.2 IrDA
        3.1.3 Builtin programs
     3.2 Programs for connectivity
        3.2.1 plptools
        3.2.2 kpsion
        3.2.3 p3nfs/p5nfs
        3.2.4 ncp
     3.3 Linux utilities
        3.3.1 Psiconv
        3.3.2 Psion SDK
     3.4 Psion utilities
        3.4.1 hermes
        3.4.2 perl
        3.4.3 python
        3.4.4 E_Shell
        3.4.5 c2f

  4. Series 3

     4.1 Further Information
     4.2 Programs for connectivity
        4.2.1 p3nfs/p5nfs
     4.3 Psion utilities
        4.3.1 nfsc
     4.4 Informational Web Pages
        4.4.1 Disassembling a Series 3a (in German only)


  ______________________________________________________________________

  1.  About this HOWTO



  1.1.  Introduction


  Psion has been making PDA's for years. This document will initially
  concentrate on the newer Series 5* models, e.g. Series 5, Series 5mx
  and Series 5mx PRO, but I hope to eventually include info about using
  older models such as the Series 3* with Linux.


  1.2.  This Document


  The latest version of this document can be found at
  <http://home.pages.de/~lufthans/unix/docs/HOWTO/psion-HOWTO.html> and
  will hopefully be included in the Linux Documentation Project (LDP
  <http://www.LinuxDoc.org/>).

  Please send updates, corrections or suggestions to psion@LuftHans.com.


  1.3.  Mailing List


  There is a mailing list dedicated to using Psions with Linux and
  developing tools to enhance communication between them.

  To subscribe, send a message to majordomo@geekstuff.co.uk, containing
  the message "subscribe Linux-Psion".

  There is also a mailing list dedicated to porting Linux to the Psion
  5* models at linux-7110@redhat.com


  1.4.  Copyright notice and disclaimer


  (c) 1999 Hans Kugler

  This document may be distributed under the terms set forth in the LDP
  license at http://www.linuxdoc.org/COPYRIGHT.html
  <http://www.linuxdoc.org/COPYRIGHT.html>.

  This document is provided ``AS IS'', with no express or implied
  warranties. Use the information in this document at your own risk.


  2.  General Information



  2.1.  What is a Psion


  Psion is a powerful Personal Digital Assistant (PDA) with pen-based
  touch screen as well as keyboard. There are several models. This HOWTO
  currently only covers the Series 5* models, e.g. Series 5, Series 5mx
  and Series 5mxPro.



  2.2.  Psion models


  There are several models of Psion PDAs. All have a foldout case where
  the screen is in the cover and opening the Psion causes the keyboard
  to jut out to a more usable position. They also feature the instant on
  and instant off capabilities of the EPOC operating system.

  Psion 3* are older PDAs that still have a lot of functionality and
  still get sold new due to their meeting needs and being lower cost.
  This HOWTO doesn't currently cover the Psion 3* series.

  Psion 5* has two main product lines with each having two models. The
  Psion series 5 has a green limited edition counterpart with no
  functional difference between itself and the standard Series 5. The
  series 5mxPro, however, has some fundamental differences from the
  Series 5mx.

  All four of the Series 5* products have: compact flash, serial port,
  keyboard and stylus (for the touchscreen). They all operate on 2 AA
  batteries and have a backup battery to maintain state when changing
  out the main batteries. Check out
  <http://www.aha.ru/~akaev/english/indexe.htm> to take a tour of a
  dissected Series 5 classic.

  Both of the Series 5 models as well as the Series 5mx have system ROMs
  where the EPOC operating system is stored. After boot they operate out
  of the RAM (8MB for the Series 5 models and 16MB for the Series 5mx).
  The Series 5mxPro, however, has no ROM and operates entirely out of
  its 24MB of RAM. This enables software upgrades to the Series 5mxPro,
  whereas the other 3 models must exchange hardware to update EPOC.

  Psion recently released the Series 7, which is set to compete against
  the subnotebook class of PC, but running EPOC.

  There are rumors of a Series 6 coming out before the end of 1999. No
  formal indication of what type of product the Series 6 will be.


  2.3.  Psion Availability


  Psion products are no longer available at retail stores in the US.
  They are available from retail shops in Europe as well as through mail
  order. Psion maintains a list of mail order
  <http://www.psion.com/resellers/index.html> firms by country on their
  web site.


  3.  Sharing data between the Psion and Linux



  3.1.  Hardware connectivity options


  The Psions have both serial and infra red ports. Either can be used
  for connectivity, but most connectivity programs currently only have
  features for the serial port connection.


  3.1.1.  Serial cable


  Armin Podtschaske x-rayed the "honda" connector. His page
  <http://home.t-online.de/home/armin.podtschaske/pocci.htm> has an
  explanation of the pin out in German.

  Here it is for those who don't speak German :).

  Pin 1 is on the top and pin 15 is on the bottom. Only pins 2 through 8
  and 15 are connected.
  o  Pin 2: RTS

  o  Pin 3: DTR

  o  Pin 4: TXD

  o  Pin 5: DSR

  o  Pin 6: DCD

  o  Pin 7: CTS

  o  Pin 8: RXD

  o  Pin 15: GND - Signal and Power ground

  o  Frame: GND - Shield frame ground


  3.1.2.  IrDA


  See the IrDA HOWTO <http://www.LinuxDoc.org/HOWTO/IR-
  HOWTO-6.html#ss6.6> for information about using the Linux IrDA driver
  with a Psion. It is possible to beam files from Psion 5 (mx) via
  Linux-IrDA to a Linux System.  The irda-utils include a special client
  psion5.c which can beam files between them.


  3.1.3.  Builtin programs


  There are two builtin software methods to use the communications
  ports. The first is the remote link, <ctrl>-l from the main file menu,
  which can be set to serial, infrared or off.

  EPOC also provides the program comms. The remote link must be set to
  off for the comms program to have access to the serial port.


  3.2.  Programs for connectivity



  3.2.1.  plptools



     Description
        plptools <http://www.gumbley.demon.co.uk/plptools.html> (current
        releases from Matt Gumbley) was originally developed by Fritz
        Elfert, who had merged plp and ``p3nfs/p5nfs''. plptools is
        currently being worked on by members of the Linux-Psion <linux-
        psion@geekstuff.co.uk> mailing list.

        plptools comprises of 3 different programs. ncpd provides a
        socket connection to the Psion. plpnfsd provides mounted
        filesystem access to the Psion and plpftp provides ftp access to
        the Psion.

        See  <ftp://ftp.to.com/pub/psion/> for Fritz' original releases.


     Usage
        ncpd [-V] [-v logclass] [-d] [-p <port>] [-s <device>] [-b
        <baudrate>]
        plpnfsd [-v] [-V] [-p port] [-d mountdir] [-u user]

        First start ncpd get it to listen on a port (7501 by default)
        for connection requests. Then, start either plpnfsd or plpftp.
        plpnfsd defaults to mount the Psion under /mnt/psion.



  3.2.2.  kpsion



     Description
        kpsion
        <ftp://ftp.cs.unm.edu/mirrors/kde/unstable/apps/utils/kpsion-0.1.tar.gz>
        is available under unstable/apps/utils/
        <ftp://ftp.cs.unm.edu/mirrors/kde/unstable/apps/utils/> at your
        favorite KDE mirror.

        It provides a method to use kfm (KDE File Manager) to directly
        access files on the Psion via a serial link. Psion files can be
        opened by using 'psion:' or 'epoc:' URLs. It uses ncpd from the
        plptools package, which must be running to use kpsion, to handle
        the serial connection.

        kpsion also has a Psion Word->HTML/Text viewer/ converter built
        from psiconv to allow viewing documentation created with Psion
        Word under Linux.

        kpsion is currently ALPHA support for connecting to a Psion
        Series 5*. It is only available in source and only builds
        against KDE 1.1 and KDE 1.2. Please read the README and INSTALL
        files that come with the tarball.



  3.2.3.  p3nfs/p5nfs



     Description

        p3nfs <http://www.koeniglich.de/> mounts the psion drives over
        the serial cable at /psion.stand/mnt, by default.



  3.2.4.  ncp



     Description
        Matt Gumbley originally started ncp
        <http://www.gumbley.demon.co.uk/ncp.html> for use with his Psion
        Series 3. Now that he's working on ``plptools'', you should use
        that :). However, ncp might still be of interest to users of a
        Psion Series 3, which this HOWTO doesn't cover :). Matt's ncp
        page also has information about the plp protocol.



  3.3.  Linux utilities



  3.3.1.  Psiconv



     Description
        Psiconv <http://huizen.dds.nl/~frodol/psiconv/> translates Psion
        Word documents to HTML (3.2 or 4.0) or plain text.



  3.3.2.  Psion SDK



     Description
        The EPOC SDK works on Linux via WINE, see Olaf Flebbe's web page
        <http://www.linuxstart.com/~oflebbe/sdk/> for instructions on
        how to get it working.



  3.4.  Psion utilities



  3.4.1.  hermes



     Description
        hermes <http://www.iota.demon.co.uk/psion/hermes/hermes.html> is
        a fully featured vt100 emulator.



  3.4.2.  perl



     Description
        Olaf Flebbe has perl
        <http://www.linuxstart.com/~oflebbe/perl/perl5.html> running
        under EPOC.



  3.4.3.  python



     Description
        Duncan Booth has python <http://dales.rmplc.co.uk/Duncan/>
        running under EPOC.



  3.4.4.  E_Shell



     Description
        E_Shell <http://www.epocworld.com/downloads/progs/e-shell.html>
        is a DOS-like shell environment. It provides ways to launch
        programs from a command line; to check for file system
        corruption; to create, edit and display plain text files; to
        check on currently active processes and threads.
  3.4.5.  c2f



     Description
        c2f <http://home.pages.de/~lufthans/unix/packages/> converts the
        Psion contact file to a comma delimited format.



  4.  Series 3



  4.1.  Further Information


  As I said earlier, this HOWTO doesn't cover the Series 3 ( e.g.
  3/3a/3c/3mx/Sienna ), however, as I run into information, I will try
  to place it here anyway. This section will probably never be organized
  (unless someone else keeps it uptodate), but it still might contain
  useful information.


  4.2.  Programs for connectivity



  4.2.1.  p3nfs/p5nfs



     Description
        p3nfs <http://www.koeniglich.de/>, referenced ``above'' mounts
        the psion drives over the serial cable at /psion.stand/mnt, by
        default.



  4.3.  Psion utilities



  4.3.1.  nfsc



     Description
        nfsc <http://www.koeniglich.de/> is a vt100 emulator.



  4.4.  Informational Web Pages



  4.4.1.  Disassembling a Series 3a (in German only)


  Zerlegeanleitung Psion Serie 3a <http://www.home.unix-
  ag.org/fionn/d/Psion/Inside.html>