--------------------------
AutoGPS V1.2  User's Guide
--------------------------

Mike Rudin, July 1996


Introduction
~~~~~~~~~~~~
AutoGPS is an add-on for AutoRoute Express which gives you a moving
map, when you connect up a Global Positioning System receiver.  It
is intended for use only within the British Ordnance Survey
National Grid area.

You need the following:

o  a Psion Series 3a (512K or bigger)
o  Microsoft AutoRoute Express, version 1.00
o  a GPS receiver with NMEA 0183(1.5 or higher) output,
   including the $GPRMC sentence
o  a Psion 3-Link (or PsiWin) RS232 serial interface lead
o  a lead to connect the GPS receiver to the 3-Link

If you're thinking of buying a GPS receiver, bear in mind that some
of the cheaper ones don't have a serial data output, nor an
external antenna input.  I use and recommend a Garmin GPS 45.
However, note that most of the Garmin models stop generating
position information at speeds above 90 kt.  If you have internet
access, try Usenet newsgroup sci.geo.satellite-nav, and Peter
Bennett's Web site ftp://sundae.triumf.ca/pub/peter/index.html,
and Steve Litchfield's Web page,
http://ourworld.compuserve.com/homepages/slitchfield/incar.htm

AutoRoute Express (TM) is commercial software supplied on SSD.  It
contains a fairly detailed road map of Britain and Ireland, and it
calculates road routes between named places.

AutoGPS observes the behaviour of AutoRoute by looking at its
working memory, and controls it by sending messages to it that
simulate key presses.  Because specific memory locations are
polled, this version of AutoGPS will not work with Automap Road
Atlas (the U.S. equivalent to AutoRoute Express), nor with any
version of AutoRoute Express other than v1.00.


Installation
~~~~~~~~~~~~
Create a directory \APP\AUTOGPS on any disk, and copy AGHELP.RZC
into it.
Copy AUTOGPS.OPA to any directory (e.g. \APP) on any disk, and
install it on the System screen.  If you like, you can un-install
(remove) AutoRoute, as AutoGPS will start it automatically from
either SSD slot.
AutoGPS will keep a record of settings in a small file,
\OPD\AUTOGPS.ODB, which it creates on the internal disk.

Connect up the GPS receiver (see Appendix A) and get it to acquire
its satellites.  Adjust the receiver to output NMEA 0183 data
(preferably 2.0 for higher position resolution), using the WGS 84
or OSGB 36 map datum.

Start up AutoRoute Express temporarily, and ensure that "Calculate
dialog at startup" is set to "No" (in the Psion-Q dialog).  This is
to avoid a crash when AutoGPS starts up AutoRoute; see "Known
Problems".

Use in a car
~~~~~~~~~~~~
It is dangerous and probably illegal to use the Psion 3a while
driving; you need to keep your eyes on the road.  Please only use
AutoGPS as a passenger or when stopped.

You may well get adequate GPS reception with the receiver's
internal antenna just inside the windscreen (but not touching it),
but you'll probably need an external antenna if you have a heated
windscreen.

See Appendix A for notes on powering from the car battery.


Starting AutoGPS
~~~~~~~~~~~~~~~~
If AutoRoute is already running, AutoGPS will connect to it on
startup.  Otherwise, AutoGPS will normally attempt to start
AutoRoute (looking for it on both SSDs).  In the second case, the
two applications are tied together; if you exit AutoRoute, AutoGPS
will exit, and vice versa.


Switching between AutoGPS and AutoRoute Express
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If AutoGPS has started AutoRoute, then you can switch to AutoGPS in
one keystroke using Shift+System.  Alternatively you can assign a
button to AutoGPS (Psion-A in the System screen) to make it easy to
switch to.

From AutoGPS, you can switch to AutoRoute using Esc or Psion-A (or
just "A").  AutoRoute will be started if it isn't already running.

Each time AutoGPS switches to AutoRoute (including at startup), it
will force the map window to become active, so gaining control of
the cursor position, as part of the process of keeping track of
what AutoRoute is doing (see "Known Problems").


Jumping to a location
~~~~~~~~~~~~~~~~~~~~~
Switch to the AutoGPS screen, then use Psion-J (or just J) to move
the AutoRoute cursor to a specific location.
Type in a grid reference, which must be two letters plus an even
number of digits, with or without spaces.

An Ordnance Survey road atlas is useful here, as it is clearly
marked with grid references, and has a place index with grid
references.  Also, A-to-Z street atlases often have
Eastings/Northings marked on their grid lines.

GPS position fixes
~~~~~~~~~~~~~~~~~~
When enabled (Psion-G), AutoGPS will attempt to receive NMEA data
from the GPS receiver.  Typical reasons for this failing are:

o  Remote Link is on; see Psion-L on the System screen.
o  The 3-Link is not plugged in.
o  You plugged in the 3-Link while powered-up; try switching
   the Series 3a off and back on.
o  The 3-Link is not correctly connected to the GPS.
o  The GPS receiver is not sending NMEA 0183 data.
o  The NMEA data does not contain the $GPRMC sentence.
o  You have selected too high a data speed under the Psion-F dialog.
o  There is no position fix (poor satellite coverage).

The 3-Link is powered-up while getting a fix, but it only takes
about 10-20% more power than when AutoGPS is doing other things.
If you want to maximise battery life and can put up with infrequent
updates, set a pause between getting GPS fixes (Psion-F dialog).


GPS Moving Map
~~~~~~~~~~~~~~
Each time a GPS fix is obtained, AutoRoute's cursor will normally
be forced to show the position.  AutoGPS can only do this while
AutoRoute is 'under control', i.e. when its map window is active
and there is no menu etc. displayed.

In AutoRoute, you can use all the controls as normal.  If you
manually move the cursor away from the GPS position, AutoGPS will
detect this, and temporarily suspend its cursor-control activity.
It will resume 20 seconds after you stop moving the cursor, or the
next time you switch from AutoGPS to AutoRoute, whichever is the
earlier.

A "GPS" message is shown in the top left corner while the cursor
position is being controlled.  You can configure this (see Psion-D
dialog) to show position, speed, mileometer, and track direction
(figures and/or arrow); the arrow gives a coarse indication of your
track (north, south, east or west), and is updated while you are
moving faster than the limit set in the Psion-F dialog.  Once
you've been stationary for more than two minutes, no track
direction is shown.

As the AutoRoute cursor nears the edge of the screen, AutoGPS re-
centres it; you can select the limit in "Screen around cursor" in
the Psion-D dialog.  One option is "Depends on track" - if you
select this, AutoGPS will average your track direction over the
past few minutes, and attempt to keep more map visible ahead of
you, at the expense of more frequent re-draws.

Accuracy
~~~~~~~~
Your reported position will often appear off-road.  The two main
sources of error are:

1. AutoRoute's approximations in road positions; this can be up to
   a couple of km, especially outside towns.

2. SA (Selective Availability) errors in the GPS signal
   deliberately introduced by the US military.  At the time of
   writing, this causes your apparent position to wander randomly,
   with 100m root mean square "noise", meaning that occasionally
   you may be a couple of hundred metres off.  Lobbying of the US
   government may result in this corruption being turned off
   permanently.

For best accuracy, you must ensure that the GPS's NMEA positional
output is adjusted to the WGS 84 or OSGB 36 map datum, and use the
Psion-F dialog to make AutoGPS match the one selected.  AutoGPS
converts lat/long positions to grid-reference form slightly faster
with OSGB NMEA data, as there are fewer adjustments to make.

On the Garmin GPS 38/40/45/90, for example, use the "Navigation
Setup" page to set the Map Datum to "WGS 84" or "Ord Srvy GB".
If you use WGS 84, and also set "Position Format" to "British
Grid", you may notice discrepancies of up to a few hundred metres
between the Garmin display and AutoGPS; most of
this is due to map datum differences.  Apart from this, AutoGPS's
idea of a position should agree with the GPS receiver to within
about 15 metres over most of Britain.


Mileometer
~~~~~~~~~~
To calculate how far you've travelled since the last GPS fix, the
mileometer (odometer) multiplies the current speed reported by the
GPS receiver by the time since the last successful fix, so the
accuracy is improved by making the fixes as frequent as possible
(pause time zero).

If you turn off the Series 3a, then turn it on some time later, the
mileometer will update to a very inaccurate value, as it will
assume you've been travelling at your current speed while powered
off.

After you start up AutoGPS or turn on GPS fixes, the first
subsequent GPS fix is not counted in the calculation.

When stationary, the mileometer will slowly clock up distance due
to a 'wandering' GPS position, especially when Selective
Availability errors are on.


Track
~~~~~
The displayed track direction is true (not magnetic, nor grid), and
only gets updated when your speed is above that set in the Psion-F
dialog.  If you move slower than this, or stop getting GPS fixes,
the track display will vanish after two minutes.

Copyright etc.
~~~~~~~~~~~~~~
AutoGPS is Copyright (c) 1996 by Mike Rudin, its author.
You use it on the condition that the author is not held responsible
for any loss or damage, however caused.

AutoGPS may be freely distributed, provided that only minimal
charge is made for distribution, and provided that it remains
unaltered and is always accompanied by this file.
There is no charge for using it, but please feel free to send
tokens of appreciation, as well as bug reports, comments etc. to:

Mike Rudin
9 Highfield Rd,
Coventry CV2 4GU

My address is due to change during 1996, but my mail will be
redirected, and you should be able to email me at
mrudin@cix.compulink.co.uk, or Mike.Rudin@camcon.co.uk.


Known Problems
~~~~~~~~~~~~~~
While AutoGPS is active (e.g. no menu displayed), the Series 3a's
auto-power-off is inactive.  This may be fixed in a future release.

If AutoGPS crashes (e.g. due to lack of system memory), it may
leave a copy of AutoRoute running, without it appearing on the
System screen.  You should be able to find it by stepping through
the running applications using Shift+System, or by re-starting
AutoGPS.

If you stop getting cursor movements and messages in AutoRoute
(this seems to happen after calculating a route or switching the
scale bar on/off), then switching to AutoGPS and back should
restore operation.

AutoGPS should only try to display messages and control the cursor
in AutoRoute when the map window is active.  However, in AutoRoute
if you press Menu and Help in that order, AutoGPS will mistakenly
send control messages.

The running AutoRoute process is expected to have a name like
"ROUTE.$12".  This is unlikely to concern you, but if you've
somehow renamed the process, or you have another application that
starts up with that name, then there could be problems.

I've not found a way to force a continuous display of grid
reference on the AutoRoute screen; it needs updating every couple
of seconds.  You get the best effect with zero pause between GPS
fixes, and a GPS receiver that sends $GPRMC sentences frequently.

If AutoRoute is set to display the "Calculate route" dialog at
startup, then AutoGPS will probably cause it to crash with Exit
number 158.

Appendix A  - Connecting Up
~~~~~~~~~~~~~~~~~~~~~~~~~~~

The most tricky part of getting AutoGPS to work is probably
connecting the GPS receiver.  Some of the following advice on how
to do it is due to Steve Litchfield, who has been through it all
for the moving-map feature in his excellent shareware application
"Mapper 3a".

The most compact arrangement is to have a cable directly from the
GPS receiver to a 9-pin mini-DIN plug which plugs into the 3-Link
"podule".  However you may already have a lead from your receiver,
and it might be easier to connect the 3-Link's PC or Mac cable to
that.  In any case, only the following two wires need be connected
(see your 3-Link manual page 66):

     GPS               9 pin mini-DIN
       Ground ---- Pin 5, SG (signal ground)
Serial output ---- Pin 2, RD (received data)

                      View of socket
                         9  8   7
                        6  5  4  3
                           2  1

Steve Litchfield says that Tony Denson or Peter Kitsen at
Positioning Ltd on 01403 271114 can help, as they have the
expertise and stock to put together all the elements you might
want, from cables to cradles.  Also Maritec, on 0141 5542492, do
cables from most GPS systems to the 3-Link podule.

If you use AutoGPS in a car, I recommend you run the GPS receiver
and Series 3a off a good-quality power regulator to save batteries
(while AutoGPS is running the Series 3a draws about twice as much
current as when idle), but you need to be careful to avoid damaging
both devices.

Don't use the car battery voltage directly on the Series 3a,
because the voltage is too high.
The Garmin GPS 45 will run directly from a car battery, but it is
risky to do so because a car's electrical system can sometimes
surge to very high voltages that can cause damage.  The almost
identical GPS 40, and the new GPS 38, definitely need an external
regulator.

The negative side of the power input to the Series 3a is connected
through the 3a to the 3-Link interface ground, so if your GPS
receiver also needs a positive supply relative to its interface
ground (the Garmin GPS 45 does), then it's OK to power both
machines from the same supply.  The Series 3a needs a 9 Volt
supply, and you may be able to run the GPS receiver off the same
supply; check the manuals for voltage details and possible warranty
problems if you use unapproved power regulators.

The whole lot may look like this:

Optional     _
external    | |    9 Volt regulator
antenna    _| |_   plugged into cigar
  _____   |     |  lighter socket
 |_____|  |     |
    |     |_____|
    |       | |
 ___|___    | |
|       |   | |
|       |   | | +9 Volt Power to GPS and 3a
| O O O |   | |____________________________
| O O O |   |                              |
| _____ |   |                              |
||     ||___|   _________     ___________  |
||     ||______/         \___|           |_|
||     ||  **  \_________/   |           |
||_____||     Psion 3-Link   |___________|
|_______|                   Psion Series 3a
GPS Receiver

** This bit might be two leads plugged together.

Appendix B - Description of the OS National Grid
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The Ordnance Survey British National Grid is based on metric
"eastings" and "northings" coordinates within a system of nominally
100 km squares (distorted by the earth's curvature).  A typical
letters/figures grid reference like "TL 012 678" is made up as
follows:
T   Identifies the 500-km square in the overall 2500 km
    square extent of the grid system.
L   Identifies the 100-km square within this.
012 Eastings  (01200 metres), and
678 Northings (67800 metres), both measured from
    the southwest corner of the square.

Both square letters use this scheme:
ABCDE
FGHJK
LMNOP
QRSTU
VWXYZ

Some maps, e.g. A-to-Z street maps, use a completely numeric
representation of eastings and northings, so the above grid
reference (to 1 km resolution) would be:
501 268
The "5" and "2" should be superscript, and they identify the 100-km
square in place of the letters, with 0,0 corresponding to the
southwest corner of square SV.  In AutoGPS, locations to the West
or South of this origin are shown negative, including the sub-100
km parts of the numbers, and I'm not sure if this is correct.  In
letter/digit form, the sub-100 km parts are always positive.


[End of AUTOGPS.TXT]
