CoDriver Help File
Introduction
CoDriver takes the a route from a PC or Psion based routeplanning program
(eg MS AutoRoute or Palmtop's Routeplanner) and presents the instructions
"turn by turn" in clear pictographic and spoken form.
The spacebar may be used to step between instructions as you come to
each junction. Alternatively, if you can plug in a GPS, the program will
present the instructions automatically at the correct point. It uses the
GPS data to record how far you've travelled and so "knows" when you've
reached each junction.
When using the GPS in this way, small inaccuracies in distance would
tend to add up, causing the program's position to "drift" away from your
real position Thus the program also uses the speed and direction information
from the GPS to identify when you make each turn. It is thus able to reset
its distance counter at each junction, improving the accuracy of its instructions.
Getting started
Although CoDriver loads an example route on running it for the first time,
you will want to load your own routes before you actually use the program.
Since CoDriver doesn't generate the route instructions itself, these first
need to be imported from your RoutePlanner program. You need to choose
"Import" from the file menu in order to do this.
Route instructions can be imported from either a PC based route program
(such as MS AutoRoute) or one on the Psion (such as Palmtop's "RoutePlanner").
See later in the help file for detailed instructions on importing routes.
Once you've imported a route, the Psion will initially present the first
instruction. If you have a GPS, now's the time to plug it in, make sure
"Remote Link" is set to off on the Psion and that the GPS is on. Go to
the Preferences... General menu option and tick "Use GPS" to tell
the Psion to start "listening" for a GPS signal.
Without a GPS, tap the spacebar once to go to the next instruction,
twice to go back to the previous one. With a GPS attached, just start driving
and the instructions should keep coming at the appropriate moment! If they
get out of step with your actual position, you too can use the spacebar
to step forwards or backwards, although this time you're telling the Psion
that you've arrived at that junction rather than asking for the next instruction.
Note, even with a GPS attached, the Psion doesn't actually know where
you are - only how far you've gone. So its quite possible to take a wrong
turning and know nothing about it until the subsequent instructions don't
match up with reality! Even if you don't actually go wrong, small errors
in the RouteFinding program's measure of distance can accumulate to put
the Psion's dead reckoning position out of sync with reality. If this happens,
once you get back to a junction which is on your planned route, use the
Actions... Goto junction... option to tell the program where you are so
that it can start giving you accurate instructions again.
See also the section on "Autosense junctions" in the General preferences
help for a further discussion of cumulative errors.
Importing from a PC
There are two ways to import routes from your PC routeplanner, one largely
automatic and one manual in case the automatic version doesn't work!
The first method makes use of the "ClipSync" program on the PC which
comes as part of recent versions of PsiWin. This gives the Psion access
to data stored on the PC's clipboard. The principle is thus simple - you
copy the route to the clipboard on the PC, then tell CoDriver to start
importing
it.
Automatic
On the PC: Make sure the PsiWin connection server, ClipSync
and your RoutePlanner are all running. In the routeplanner, choose to "Copy
itinerary". The Psion should beep to confirm its received the clipboard
data.
On the Psion: Make sure remote link is set to Cable (from the
system screen). In CoDriver, choose "Import" from the file menu. Select
"Import from PC (AutoRoute)" and specify a filename with which to save
the route data on the Psion. Specify the units that AutoRoute is using.
Press OK, then in the next dialog choose "Import from PC clipboard". Press
OK and the file should be successfully imported.
Note: CoDriver needs to know in which columns it will find each type
of data (distance, road number etc). The default settings for import are
for the default settings of MS AutoRoute 97. If your routeplanner's columns
are in a different order, you will need to alter the preferences. Press
the "Preferences" button in the initial Import dialog. You can then
specify in which columns are to be found the distance (cumulative), turn
direction and road number information.
Manual
The Manual method of importing a routefile doesn't use the clipboard
as an intermediary. Instead, you will need to save the route data to a
plain text file on the PC, with tabs between the columns (perhaps best
done by pasting the data into Notepad, then saving this file). Copy the
file to the Psion and choose the "Import from plain text file" option.
Importing from Palmtop's RoutePlanner
Palmtop's excellent "RoutePlanner" (previously "EnRoute") would seem to
provide the perfect source for route information, giving a completely self-contained
"In car navigation system" on the Psion. However, its distances are not
as accurate as AutoRoute's. If you're using CoDriver with a GPS, its critically
dependent on accurate distances between junctions, and thus this is a significant
failing. RoutePlanner is also more reluctant to commit itself to "Left"
or "Right" than Autoroute, preferring a less helpful "Go onto". However,
as an "in-car backup" or for relatively short journeys (the distance inaccuracy
increases with distance) it can be a useful source of route information.
Once again, there are two methods of importing the data, one automatic
and one manual. This has only been tested with the latest version of RoutePlanner
(1.4) Feedback on other versions would be welcome.
Automatic:
In RoutePlanner: RoutePlanner must be running with your chosen
route ready planned. Instruction type (choose the "Table" menu, then "Instruction
type") is best set to "Instructions by road", although CoDriver will try
to interpret other formats. You must be displaying the "At" column, which
gives a cumulative distance.
In CoDriver: Choose Import from the File menu.. Choose to "Import
from Psion RoutePlanner" and give a filename under which to save the route
data. Specify the units that RoutePlanner is using. If you've changed the
default column setup in RoutePlanner, press preferences to tell the Psion
how its been changed. Press OK.
Choose to "Import from RoutePlanner automatically", and after a short
delay the route should be imported in CoDriver. What is actually happening
is that CoDriver sends the keystrokes to RoutePlanner which are needed
to cause it to print the route data to a file using the LaserJet III printer
driver. If your version of RoutePlanner has different keystrokes for this
from mine, it won't work. This is particularly a problem with non-English
versions of RoutePlanner. Hence there is a manual option!
Manual:
To import the route manually, you need to print the route to a file
using the LaserJet III printer driver.
in RoutePlanner choose print setup, set the printer to "LaserJet III
via File", and use "Settings" to specify a filename. Choose print and the
details of the route should be output to your chosen file.
In CoDriver, choose "Import from Print file" instead of "Import from
RoutePlanner automatically" and identify the file that you previously "printed".
The program should then import the file.
Opening files
As soon as a file has been imported, its loaded into the program which
is ready to issue instructions. However, it is also saved on the Psion
in a form which can be simply opened in future, without the bother of re-importing
it.
To use the file in the future either choose "Open" from the file menu
or double tap on the file on the system screen.
The "Open file" dialog has an option to reverse the route if you wish
to follow the same route on a return journey.
Actions menu - With GPS
When attached to a GPS, the program should keep up with your position automatically.
It attempts to compensate for small inaccuracies in distances by sensing
when you reach the junction. However, large errors, or if you yourself
take a wrong turning, can throw the program's "dead reckoning" out.
In this situation you can use the Actions menu to reset the program
to your actual position. You can choose to go forward to the next junction,
back to the previous or to goto any specific junction.
The "forward" and "backward" options are available in two other ways
as well. Either use the buttons on the toolbar or, most easily, a single
tap on the spacebar moves forward while a double tap moves backwards.
Actions menu - Without GPS
Without a GPS attached, its up to you to advance through the instructions
manually. In practice, its easiest to do this with the space bar - single
tap to go forwards, double tap to go backwards. However, it can also be
done from the Actions menu, which also provides the option to go to a specific
junction. The "Forward" and "Back" buttons on the toolbar also step through
the instructions.
General Preferences
The General Preferences dialog is, I hope, fairly self-explanatory. It
allows selection of whether or not to use a GPS and allows speech, beeps
and backlighting at junctions to be turned on or off.
Import Preferences
The "Import preferences" dialog box allows the alteration of various settings
to do with importing files. The settings are different for importing from
a PC or from the Psion, therefore the first thing is to specify which of
these you are using.
CoDriver assumes a route file will be presented as a table, with data
in rows and columns. It automatically ignores titles and initial blank
rows, but once it comes to a row with data in it needs to know which columns
contain the various pieces of information that it needs. The initial settings
are for the default setup of AutoRoute 97 on the PC and RoutePlanner on
the Psion. Two different pieces of data may share one column (eg in RoutePlanner
both turn direction and road number are in column 3).
The second section of the dialog is probably best left alone! When using
a GPS, CoDriver tries to identify when you actually reach junctions based
on a large change in speed and direction near the expected position of
the junction. By correcting its position at each junction, the program
is (when it gets it right!) able to avoid gradually "drifting" out of sync
with reality, as it otherwise would due to the accumulation of small inaccuracies.
The settings in this part of the dialog box all affect how close to
the expected position a junction needs to be to be counted. The program
will be alert for possible junctions within a "window" at least "minimum
window" miles either side of the junction, but up to "error factor" ×
distance since last junction either side. Within this window, junctions
are weighted according to how close to the expected position they are.
The scoring gradient affects the size of this weighting, from 0 (no weighting)
to 1 (maximum weighting).
Junction Preferences
The first section of the dialog allows you to specify the distances in
miles at which you are warned of junctions. There are three warnings. The
first (initially set to 1 mile before the junction) gives turn direction
and road number information. The second (initially 0.15 miles before the
junction) repeats the turn direction. Finally, (0.5 miles after the junction)
the new road number is confirmed, along with the distance to travel to
the next junction.
"Autosense junctions" refers to the method I've used of looking for
a sharp change in speed and direction to identify when you reach the junction.
The reason for this is that small errors in distance, particularly as measured
by your routefinding program, soon accumulate to put the Psion's "dead
reckoning" position out of sync with reality. You can, of course, correct
this manually if you notice it, by using the spacebar or "goto junction"
function to get back on track. However, "Autosense" is an attempt to do
this automatically.
But... Inevitably, sometimes it gets it wrong. This tends to happen
particularly in towns, when you might be stopping and starting in traffic
or at lights in many places other than the actual junction. Although "Autosense"
is weighted to take most account of turns nearest the expected position
of the junction, this sort of situation can obviously mislead it. So there's
an option to turn it off if you want to try without.
The last section of the dialog is specific to PalmTop's RoutePlanner.
As I've described elsewhere, RoutePlanner tends to be slightly inaccurate
in its estimation of distance to travel. This comes about because it doesn't
have the space to store every twist and turn in roads, so often thinks
they're slightly straighter than they really are. As a result, it usually
slightly underestimates the distance. CoDriver can attempt to compensate
for this by multiplying RoutePlanner distances by a scale factor. Obviously
this doesn't make RoutePlanner distances always accurate, but it does tend
to improve the accuracy overall. I've found 1.02 to give quite good results,
but then I live in a part of the world with quite twisty roads!
If you find that with routes from RoutePlanner CoDriver almost invariably
thinks you've arrived at a junction before you really have, try increasing
this number. Equally, if CoDriver is usually giving its instructions too
late, try decreasing this number. Note that this scale factor is only applied
to routes from Palmtop's RoutePlanner - routes from a PC I've usualy found
to be very accurate from the start, and these are left untouched regardless
of the setting here.
Finally, RoutePlanner is quite reluctant to commit itself to a turn
direction, preferring "Go onto" to "Turn left" or "Turn Right". The "Guess
RoutePlanner turn direction" option is an attempt to get round this. This
uses the compass heading that RoutePlanner gives for each leg of the route
to try and decide whether a turn is left or right. There are three settings.
"Never" doesn't attempt to guess and uses "Left/Right/Go onto" as given
by RoutePlanner. "If Confident" only guesses when the change in compass
heading is 90 degrees or more (so from north to east counts as "turn right",
north to north-east as "go onto"). "If Possible" interprets any change
in compass heading as a turn direction, so even from north to north-east
is confidently stated to be "Turn right".
It will be obvious that if CoDriver guesses the turn direction then
it will sometimes get it wrong. This is particularly true with the "If
possible" setting, but will can sometimes happen even with the "If confident"
setting. So if "Guess direction" is turned on, remember to be just a little
bit sceptical about the quoted turn direction!
Registration
This program is shareware. You are free to try it out. However, if you
wish to keep it for continued use, you must pay a registration fee of £15.
The unregistered version is fully working but has a "nag" screen on startup.
On registering, this disappears and you will also receive email notification
of future upgrades, as well as encouraging me to continue working on and
improving the program!
You can register online at www.reg.net.
Alternatively, you can register by post - see the details within the
program.
You will receive a registration code which "unlocks" the full version.
I'm happy to answer queries by email at patrick.fox@virgin.net
Problems - Setup
-
The "Import" function fails:
-
Have you set the columns up correctly? The default settings are for the
default setup of Autoroute (PC) and Route (Psion), but if your versions
differ you may need to change these settings so the Psion knows in which
columns to find distance, turn direction and road number details.
-
If you're copying from a PC is the "ClipSync" program running on the PC
to enable the Psion to share the contents of the PC's clipboard? Is the
Psion connected to the PC, with the Remote Link turned on, at the time
you copy the route on the PC?
-
If you're importing from a non-English/French/German version of RoutePlanner,
you will need to import manually. You will also find that "Left/Right"
turn instructions are not recognised correctly. Please drop me a note and
I'll see about correcting this.
Problems - General
-
Light doesn't turn on at junctions:
-
Is it enabled in the General Preferences?
-
Are your batteries nearly dead?
-
No speech:
-
Is it enabled in the General Preferences?
-
Is your battery low (even slightly)? It takes a great deal of current to
run the speaker at full volume (more than 1/3rd Amp when the light is on
as well) and only batteries which are fairly fresh are able to deliver
this. Try Nicad rechargeables - they can deliver higher peak currents.
-
Why is the speech so "Mickey Mouse"-ish?!
-
This is quite deliberate - the Psion's speaker is barely powerful enough
to hear in a moving car. Raising the pitch of the speech both matches it
slightly better to the speaker's frequency response and also raises it
above much of the low-frequency "rumble" that makes up most of the noise
in a car.
-
What do the beeps mean?
-
CoDriver beeps whenever it gives you an instruction, but you may have noticed
these are not always the same. In fact, they're also giving you turn information,
in case the speech which follows is inaudible. One beep - turn right, two
beeps - turn left, three beeps - straight on.
-
The program tells me the road number but the turn direction is wrong:
-
If you're being told to turn left when you should be going straight on
or right, or vice versa, the problem is probably that CoDriver has incorrectly
guessed a turn direction from PalmTop's RoutePlanner. Try altering the
"Guess RoutePlanner turn direction" setting from the Junction preferences.
However, it is a problem, because...
-
If you've been told to go straight on when you should have turned left/right,
this is a problem with your route finding program, not CoDriver. RoutePlanner
on the Psion is a bigger culprit than Autoroute in this respect, preferring
to suggest "Go onto..." rather than commit itself to a turn direction.
CoDriver can try to help by guessing the turn direction based on the compass
heading, but it will sometimes get it wrong. One other thing you can sometimes
do to help - make sure any "Via" points are not placed at junctions at
which you will turn. If they are, the routeplanning program just says "Arrive
at Via1... Depart from Via1 on the..." rather than giving a turn direction.
-
CoDriver doesn't tell me when I reach my "Via" points:
-
You're right, it doesn't! This reflects the way I tend to use "Via"s -
to shape the route rather than to indicate intermediate destinations. Let
me know if you use them differently and I'll consider announcing arrival
at "Via"s in a future version.
Problems - GPS
-
The Psion doesn't recognise my GPS:
-
Have you turned the "Remote Link" to "Off"? (Ctrl-L on the system screen)?
-
You do have a "null modem" adapter between the GPS and the Psion, do you?
-
You may not have a compatible GPS. The GPS must output the "$GPRMC" word.
This is part of NMEA0183, and I know it works with a Garmin12, but I have
heard that some Magellans in particular don't output all the NMEA0183 sentences.
If you're having problems, get in touch and I'll see if there's any way
round it.
-
The directions are coming at the wrong time:
-
Are the units set correctly? (Miles/Km). They must be set (at the time
of importing) the same in both your route finding program and CoDriver.
-
Have you taken a wrong turning? CoDriver does not know where you are, only
how far you've gone. It can't spot if you make a wrong turning and instead
will continue to prompt you as if you were on the correct route. Either
recalculate your route (if you're using a Psion based routefinding program)
and import it afresh into CoDriver or get back on route and use the "Goto
junction" option to reset CoDriver at a known point.
-
Are your route instructions from a Psion based routefinding program? "Route"
(previously "EnRoute"), although convenient does not give very accurate
distances - compared to the storage on a PC CD-ROM it just doesn't have
the space to store roads in sufficient detail to give accurate distances.
You can easily find that CoDriver is a couple of miles adrift in giving
you directions if you've used a Psion based routefinding program. There's
no cure for this other than use a PC-based routefinding program - which
can be startlingly accurate.
-
Your GPS isn't in "simulator" mode, is it?! (That's one I've done!)
-
Despite all I can do, as the program uses "dead reckoning" rather than
an absolute position you will find that the position drifts out of sync
with reality due to the accumulation of small errors. Using "Autosense
junctions" from the general preferences can help with this (although in
some cases it can make it worse - see the discussion in the General Preferences
help). Sometimes, though, you will just have to manually tell the program
when you arrive at a junction in order to keep it in sync.
-
The displayed distance "jumps" shortly after a junction:
-
This is perfectly normal, and is simply a sign that the Psion has recognised
that you've reached a junction, found that it's not quite where it was
supposed to be (either because of errors in the RouteFinding program, or
because of errors in recording your elapsed distance) and so has adjusted
its internal "tripmeter" to compensate. Its this function which helps to
keep things in alignment (most of the time!) when otherwise the Psion's
measure of distance and the RouteFinding program's would inevitably slowly
drift apart.
I'm still stuck!
Drop me an e-mail at patrick.fox@virgin.net
- I've had a lot of fun developing this application and will be happy to
help you get the most out of it.
Back