"GarmEdit" basics

Synonyms: Fundamentals

A Psion 5 and 5MX (and probably 7 and other EPOC) program to maintain a database of waypoints and routes and exchange them with a Garmin GPS.

It gives a listing display of waypoint with their symbols as shown by Garmin GPS-II+, GPS-III and eTrex navigators.

Press "Enter" to add, study or alter a waypoint.

Generally, upper case short cuts, with the Control key, are used for route datafile manipulation. Typing an alphanumeric character will select a waypoint beginning with that character, if one is in the file. This behaviour is like that of a normal file selection list.

Waypoints

The primary purpose of the program is to maintain a database of waypoints more readily than can be done with the GPS alone. Waypoints can be linked into routes and exchanged with the GPS set. The list of waypoints can be shown sorted or filtered on several criteria.

Waypoint symbols

Some Garmin GPS models can show a symbol to represent types of waypoint. This program can represent symbols for the GPS-II+, GPS-III and eTrex. "Symbol set display" chooses which set of symbols is displayed in dialogues and expected when communicating with a GPS. If "no symbols" is chosen then any symbol information already present in waypoints will remain so long as they are not edited.

The program checks the setting against the GPS type when first connected in a session, and will suggest changing the setting if it does not correspond. The only other time it may be altered is in the file open dialogue. The preference setting merely establishes the initial choice at program start-up and not for the currently open file.

To add symbols to a file that has none, first create an empty file for which symbols have been specified. Then open the original file (which could have been upgraded from a Series 3 PsiGar file) and perform "Save As", appending to the new file. The symbols can then be edited in the new file. Alternatively it may be possible to add a "Symbol" text field to the original file using Data and then just do "Save As".

Pen operations

The pen operates in the standard manner in dialogues. In addition it can be used to select waypoints and their symbols. One tap selects a waypoint and a second tap on the symbol allows just the symbol to be altered. Alternatively if the second tap is in the alphanumeric portion of the waypoint entry then all the waypoint fields can be viewed or altered.

When the set of waypoint symbols is being displayed, one tap will highlight and tapping on a highlighted symbol will select it.

The pen-operated buttons on the screen surround work in the standard way except that the "infrared" button sends the current waypoint to GPS via cable.

See also the section on the Toolbar.

Toolbar

The Toolbar on the right of the screen (that as usual can be switched off) provides the following four operations.

gets current location from GPS

searches for a waypoint

sends the current waypoint to the GPS

adds the current waypoint to the current route

See also the section on Pen operations.

Routes

Routes are held in separate files from the waypoints and are optional. The route file holds only the waypoint names for the route, not the locations. However when routes are sent to the GPS the waypoint details have to be sent as well. For this reason there is a function (accessed from route editing) to check that all waypoints in the route are in the waypoint file. This check is always made before uploading routes. If the locations differ from those of the waypoints already in the GPS they will supplant them.

Beware of sending routes when waypoint symbols suppressed from the display; this will set the symbols for all the route waypoints in the GPS to the default.

There is a menu entry to find all routes that contain a given waypoint; this search is also done when deleting a waypoint and may result in a warning message.

Limitations

One screenful on a Psion 5 or 5MX can show 9 waypoints in the larger font (or 13 with no symbols) and 18 in the smaller. A Psion 7 may show more. On the Symbian EPOC emulator for a Windows PC using "large VGA" the numbers are 24 and 45 respectively.

Any number of waypoints may be in the file (up to 16K) but only 500 can be sorted or shown as a subset. (This is the number that a Garmin GPS-II+ can store.)

Similarly, any number of routes may be in the route file (up to 16K) but only 20 (0 to 19) can be uploaded. (This is the number that a Garmin GPS-II+ can store.)

Compatibility - general

Runs on Psion 5 and 5MX (and probably 7 and other EPOC) and exchanges data with Garmin navigators.

The waypoint and route files are not normal data files because (unlike 16-bit SIBO devices) files created by an OPL program cannot be read by the "Data" application. However the datum database can be altered using Data.

A waypoint file downloaded by the Series 3 version of GarmEdit can be upgraded to an EPOC data file and viewed in the EPOC GarmEdit but not updated. It can be converted by doing "Save As" in GarmEdit and thenceforth is a normal GarmEdit waypoint file. It is also possible to upgrade a Series 3 PsiGar waypoint file and add symbols to it; see "Waypoint symbols".

At the time of writing the program has only been tested with a limited combination of EPOC machines and Garmin GPSs. Reports of compatibility or otherwise with Psion and Garmin models are eagerly awaited and will be published.

If more than one model of GPS is connected in one GarmEdit session, display each new model number to notify GarmEdit of the new format.

The program caters for use of either comma or period as the decimal separator (see section on co-ordinate format).

Compatibility - eTrex

GarmEdit was initially designed for the Garmin GPS-II+. Thus waypoints can have a comment field and multiple numbered routes are catered for. There is no provision for altitude data.

However the eTrex does not allow comments and has only one route. Comments will be sent to the eTrex but will be ignored. If waypoints are downloaded and uploaded again the altitude data will be removed. When uploading routes, once GarmEdit has connected (after showing product number, for instance), just the current route is sent and the route number is ignored. When downloading, the route number is set to zero since this indicates the current route on other models.

Modules

The program uses multiple modules as overlays when performing most functions. A module will generally remain loaded, once used, until another is needed. Some functions need several modules to be loaded. This is all in an attempt to minimise the amount of memory used.

Menu entries

Files: Create new waypoint file (Ctrl-n), Open waypoint file, (Ctrl-o); Save waypoints as (Ctrl-a); Create new route file (Ctrl-N); Open route file (Ctrl-O); Save routes as (Ctrl-A); Exit (Ctrl-e)

Waypoint: Upload waypoint (Ctrl-u); Copy (Ctrl-c); Introduce waypoint (Ctrl-i); Delete (Ctrl-d); Find (Ctrl-f); Find again (Ctrl-j); Select current as Where UR (Ctrl-w)

View: Filter (Ctrl-F); Show name duplicates (Ctrl-Q); Cancel sort & filter (Ctrl-v); Sort (Ctrl-r); Zoom out (Ctrl-M); Zoom in (Ctrl-m); Switch Toolbar (t)

GPS: Get model number (Ctrl-s); Upload waypoints (Ctrl-l); Upload route(s) (Ctrl-L); Download waypoints (Ctrl-g); Download routes (Ctrl-G); Download place (Ctrl-p); Download time (Ctrl-H); Power down (Ctrl-P)

Route: Introduce route (Ctrl-I); Invert route (Ctrl-V); Add current waypoint to current route (Ctrl-W); Edit/select (Ctrl-E); Find waypoint in routes (Ctrl-J)

Datum: Select datum (Ctrl-S); Employ datum (Ctrl-D)

Extra: Preferences (Ctrl-k); Save preferences (Ctrl-b); About program (Ctrl-q); About Garmin waypoints (Ctrl-y); Help (Ctrl-h)

Create new waypoint file

To create a new empty waypoint file. Choose the symbol set to match the Garmin GPS (refer to the section on symbols).

Open waypoint file

In addition to the usual file selection dialogue there are two extra fields. One allows or precludes updates to the file. The other chooses the symbol set (refer to the section on symbols).

Save waypoints as

This function shows the usual file selection dialogue for Save as in other applications.

If a subset is being viewed, just the filtered waypoints may be saved. If sorted waypoints are being viewed then the sorted sequence may be written. In either case the new file may have the same name as the original, and a temporary intermediate file will then be used to do the copying. Otherwise the new file will be the same as the current state of the viewed file.

See the section on waypoint symbols for how to use this function to add symbols to a file that has none.

Create new route file

Create a new empty route file. A route must be introduced into it before anything can be written.

Open route file

A pre-existing file is opened (for update).

Save routes as

A copy of the route file is written with another name. Since the contents will be identical the name cannot be the same (unlike for waypoints).

Upload waypoint

Will send the current waypoint to an attached Garmin GPS.

Copy waypoint

The current waypoint has its fields copied within the program ready for "Introduce". This is separate from the normal clipboard operations which may be used on individual fields. A waypoint in a read-only file may be copied.

Introduce waypoint

For an update mode file only, will append a new waypoint based on the fields of a copied waypoint (if any), or on downloaded co-ordinates. Until it has been edited and "Modify/Add" action is done this waypoint can be cancelled.

An added waypoint always becomes the last one in the file.

Introducing a new waypoint will cancel a sort or subset.

Delete waypoint

Deletes the current waypoint if the file is in update mode. If there is a route file then the option is offered to check whether the waypoint is in any route.

Deleting a waypoint will cancel a sort or subset.

Find and Find again

Synonyms: Search

These are very like searches in database applications. Any sequence of consecutive fields can be searched, in either direction, from the current waypoint or from the ends of the file. Only text matching is performed. Choosing not to have wild-card "*" added makes it possible to match the complete contents of a field, but "*" may be typed in the text box too.

Because it would not be sensible to do "Find again" from the same end of the file as the initial search this option will be altered to use a search in the same direction, from (but not including) the current waypoint, for this action.

Note that waypoints are found in the order in which they appear in the file, which is not necessarily in alphabetic order.

Select current as Where You Are (UR)

This function is an adjunct to the sort function. It establishes a latitude and longitude from which to calculate great circle distances ("Proximity") to sort. Once the location is set the selected waypoint is no longer relevant.

Filtering (Mark/show)

This item defines a subset of waypoints which may be viewed, uploaded and stored. Criteria may be defined for name, latitude and/or longitude, date/time, comment or symbol, or waypoints present in the current route. Current route selection excludes all other conditions. For the others, all specified criteria must be met for a waypoint to be shown in the subset. Only the name or comment checks (but not both, see below) are done in the same manner as for "Find". The other conditions are numeric comparisons. If a specified upper bound is less than the lower bound you will see an error message. If you clear a longitude or latitude comparison value then it will be reset to the initial extreme values. The symbol subset is chosen by comparing against a numeric list but this list can be set up by viewing the images. Only the integer part is matched. If both name and comment text are given, don't set both "wild-card" and type asterisks for comment, except to match actual asterisks.

Sort

Sorting may be done on any one field of name, latitude, longitude, date/time, symbol number or distance from the location set by "Select current as Where UR". If any duplicates are found then this fact is displayed (see also "Show duplicate names"). At present, sorting cancels a subset and vice versa.

After the sort, the sorted field is shown in italic as a reminder. Proximity sort uses both co-ordinate fields.

Show name duplicates

This function performs a sort and then filters to show any duplicate waypoint names (both waypoints are shown). This shows instances where uploading would combine the waypoints; case is ignored.

Cancel sort & subset

Forgets the subset or sort order and returns the display to the complete file of waypoints. The criteria are retained and may be reapplied until the program is exited.

The current waypoint will remain current.

Zoom out

Use the smaller of the two available fonts

Zoom in

Use the larger of the two available fonts

Get model number

Download the model information from a Garmin GPS and display it. Optionally, if the GPS supplies protocol data this can also be displayed and may be useful for program support.

If the Garmin model appears not to match the symbol set preference then a warning message will be displayed. A similar message may also appear on first connection to GPS in any one session with the program.

If more than one model of GPS is connected in one GarmEdit session, display each new model number to notify GarmEdit of the new format.

Upload waypoints

Will send waypoints to an attached Garmin GPS. Either the full file or, if a subset is being viewed, just the subset may be chosen.

Upload route(s)

Sends either the current route or all those in the route file. If all are sent then a check for duplicate route numbers will be done first. Uploading of one route can also be done while viewing it.

Download waypoints

Download all waypoints from GPS and append them to any pre-existing waypoints in the file.

Download routes

Download all routes from GPS and append them to any pre-existing routes in the file.

The count of records that is displayed includes the waypoints although these are not appended.

Download location

Read current position from GPS and store ready for waypoint "Introduce".

Download time

Set Psion system time from GPS, after reviewing the correction, and optionally log the discrepancy.

Power down

Sends, after confirmation, a power-down command to the GPS.

Introduce route

Appends a new route based on the fields of a copied route (if any). Until it has been edited and the "Select/Done" action performed this action can be cancelled.

Invert route

The order of waypoints in the current route is reversed. Before this is done the choice of reversing the words in the comment is offered; useful for "A to B" comments.

Add current waypoint to current route

The waypoint name is appended to the list or the current route. If the first one, the name could be added to the title of the route as the departure; or if not, and if the preference is set, as the destination.

Edit/select route

Show the current route. A choice of actions allows a number of operations on that route including uploading.

Find waypoint in routes

This menu entry searches the route file for the current waypoint name, shows how many matching routes were found, and then uses the route edit dialogue to show just these routes. If wished, this waypoint can be removed from each route. The search is also performed when deleting a waypoint.

Attention is drawn to the waypoint in question using ">" and "<" in a separate dialogue line which mimics the waypoint list. When a waypoint is removed, this changes to "*" and "*". In long lists it may be necessary to scroll to see all waypoints.

Select datum

Choose and employ a datum from a file of over one hundred. There is no need to do this merely for OS-GB. Subsequently when editing a waypoint the co-ordinate values will be shown in the chosen datum although the listing of waypoints always shows the WGS84 values that the Garmin GPS transfers.

Find a datum in the list using Search, Search Again or, if the index number is known, Jump. The geodesic parameters cannot be searched for. The datum description is shown as an editable field, merely so that long descriptions can be read by scrolling.

Employ/Ignore datum

If a datum is selected, either ignores or reinstates the calculation for subsequent waypoint edits.

Preferences

Preferences are optionally (this is a preference) saved at program Exit and always restored, if present, at start-up.

Co-ordinate format: Minutes & decimal, Minutes & seconds, Decimal degrees, UTM, OS-GB

Default datum required: (0...101)

Symbol text format: With description, Without description

Symbols set display: None, GPS-II+, GPS-III, eTrex

Symbols display format: Symbols block, List with names

Offer to add new waypoint to route name: No, Yes

Treat invalid choice items: Omit invalid options, Bracket invalid options

Ignore invalid conversions: Warn all failures, Ignore only lat/long, Ignore only date/time, Ignore all dimensions

Warn of duplicates on sorting: No, Yes

Save preferences on Exit? No, Yes

"Co-ordinate format" governs the display when editing a waypoint. Note that "OS-GB" (Ordnance Survey, for UK) is linked with datum number 075. It and UTM will display a waypoint location as Easting and Northing in a (Universal) Transverse Mercator projection. See also Data Formats.

"Default datum required" gets datum information at start-up time from the datum with the given index number (0...101). This is not needed for OS-GB.

"Symbol text format" merely chooses whether, when a symbol is updated, descriptive text is added to the code number in the database file. It has no effect otherwise.

"Symbol set display" chooses which symbols set name (GPS-II+, GPS-III or eTrex) is displayed in the file open dialogue at program start-up. Altering the preference setting does not effect the currently open file.

“Symbols display format” applies when selecting waypoint symbols. It chooses either the rectangular block of symbols from which to select, or a scrollable list with a name for each symbol. See also corresponding alternatives in the View/Edit waypoint options.

"Treat invalid choice items" applies to the "action" choice in the edit/view dialogue. It is a feature that I added because otherwise the default may change during operation due to "Next" and "Previous" vanishing for the last and first waypoint respectively. Choosing to bracket invalid options ensures that the default one stays the same (defaults work positionally) even though it may not be valid. The bracket ensures that the initial letter of each option does not work as a short-cut when it is invalid.

"Ignore invalid conversions" refers to the format conversions that happen when editing a waypoint (and other operations like sorting and subsetting). The numeric fields are held as text in the file and thus might not have a valid format and this option makes it possible to suppress the error messages. In particular the date/time field may already be in readable form. Note that if conversion fails the data cannot then be edited nor can it contribute to sorting or subsetting, even though it can be viewed in its original form.

If lat/long conversions are NOT ignored then it is possible to abandon an accidental attempt to load a file that is not a waypoint file before displaying a screen-full of garbage.

"Offer to add new waypoint to route name?" exists for use when routes having many waypoints are being set up and the offer dialogue might become irritating.

"Save preferences on Exit?" - for the implications of this preference, see the entry for "Save preferences".

Save preferences

Writes the preferences settings on the drive on which the program was installed. Note that if the preference not to save on Exit is set, this function will be the only way to preserve preferences. Some options, such as Zoom, that are set by dialogues other than "Preferences" are also saved and restored.

Data formats

Are detailed in separate items.

(See also "Ignore invalid conversions" under the "Preferences" heading.)

Waypoint name format

This is plain alphanumeric text of up to six characters. Do not include spaces, even trailing spaces, since this will prevent GarmEdit handling routes correctly. Upper and lower case may be used but are converted to upper case when uploading. (Garmin GPSs reject waypoints with lower case in names.) Both cases are treated identically for sorting, searching and filtering.

Co-ordinate (latitude and longitude) format

In the listing display these are simply decimal degrees with negative values meaning (arbitrarily) South and West respectively.

However when editing waypoints this is not an ideal format so alternatives are offered in the "Preferences" dialogue. After modification, the values will be converted again; conversion may fail if the format is not recognised so a message will indicate this. For UTM and OS-GB the format has 3 groups separated by spaces: <zone> <east> <north>. The easting and northing values will be made up to seven digits (UTM) or five (OS-GB) by adding zeros at the right, to make a number of metres. Thus LEADING zeros must be typed. For degree values it is not necessary to keep to exactly the same format as is set for display; characters " and ' are used to deduce the format. Either the degree symbol ° (Cntrl-176) or an asterisk (which is easier to type) must be present but no leading zeros are required.

GarmEdit caters for use of either comma or period as the decimal separator. The system setting is determined when the program starts.

Time format

This is a fixed-point combination of the Psion day number and time format as used in the Spreadsheet. If the downloaded waypoints have a time field (the Garmin II+ does not) then the conversion module calculates it from that. Otherwise the comment field is checked for the Garmin date and time format (assuming English abbreviations for months) and converted from that if it matches.

Comment format

This is plain alphanumeric (plus space & hyphen) text of up to sixteen characters. No space padding is needed. Upper and lower case may be used but is converted to upper case when uploading. Both cases are treated identically for sorting, searching and subsetting.

Symbol format

This is not presented in raw form at all. A text description is displayed but may not be the same as in Garmin documents (nor may the symbol because some changes have been introduced).

A numeric form is used when subsetting but the numbers can be selected by using the symbols.

View/Edit waypoint options

The first three are obvious (although two may be suppressed if there are no visible waypoints in those directions):
Abandon (Esc)
Next waypoint
Previous waypoint

Modify/Add: only available for a file in update mode, this alters an existing waypoint or adds a new one as a result of doing an "Introduce". An added waypoint always becomes the last one but modification is performed at the current record.

View/Alter symbols: if symbols are turned on, shows a panel of symbols with the current setting highlighted. Use arrow keys to select a different one and Enter to pass this back to the edit dialogue (Esc will ignore the highlighted symbol). Note that this will only change the waypoint if you then do "Modify".

List/Alter symbols: if symbols are turned on, shows a list of symbols with their names; the current symbol will be highlighted. Use scrolling to select a different one and Enter to pass this back to the edit dialogue (Esc will ignore the highlighted symbol). Note that this will only change the waypoint if you then do "Modify".

Change co-ordinate format: this permits choosing another format instead of using the "Preferences" dialogue. Note that any edits made in the dialogue will be lost.

Set date/time=now: in update mode, puts the current date/time in the date/time field. Note that this will only become effective if you then do "Modify".

Add waypoint to route: this option will only be available if there is a current route; it is equivalent to the menu entry at the waypoint list display.

View/Edit route options

Select/Done: leaves the current route as the selected one

Next route: moves to the next higher route number

Previous route: moves to the next lower route number

Copy route: copies the whole route details to a clipboard

Introduce route: creates a new route and fills in details from the clipboard

Delete route: except that the last route cannot be deleted

Verify waypoints: check that each waypoint in the list is present in the waypoint file

Upload route: upload the current route to a Garmin GPS

Remove waypoint: remove the current waypoint, identified in the list by ">" and "<" markers, from the current route

Jump to route: find a route by number (if present)

The last two in the above list are mutually exclusive; "Remove waypoint" is only available when checking routes for the current waypoint, whereas "Jump to route" is only available for normal editing. When checking routes, "Previous" and "Next" will only find routes which have the current waypoint in their lists.

Author details

Please feel free to send comments to Mike Coon (Maidenhead, UK) psion@@mjcoon.+.com or mike.coon@@uk.fujitsu.com