Note: This page describes the development version of GPSBabel. It may substantially differ from the latest released GPSBabel.

Lowrance USR (lowranceusr)

This format can...

  • read and write waypoints

  • read and write tracks

  • read and write routes

This format has the following options: ignoreicons, writeasicons, merge, break, wversion, title, serialnum, description .

Many Lowrance systems have the ability to output their data to an external storage device. Early models (such as iFinder Hunt) supported an MMC card. Newer models (HDS, Hook, Hook2, etc) support either an SD card or a microSD card. When exported the data is saved to the card as a file. Some models have the ability to export data in GPX format but the format native to Lowrance units is called USR. Typically the file created by the export operation will have a ".usr" suffix if is a native format or a ".gpx" suffix if is is a GPX format file.

Lowrance units currently use five different versions of USR files. These different USR versions store the four internal elements (waypoints, routes, trails, and event marker icons) using different formats. Some units do not support all four elements (typically event marker icons are not supported). Some USR formats also have multiple element versions (i.e. USR version 4 has two different formats for storing route data). Depending on the model of device you have you may be able to select the format for export data from any of the five USR formats or even the GPX format.

The following provides a high-level description of the multiple USR formats that are supported by the Lowrance product set (this is based on information contained in the 2018 Lowrance Hook2 Series Operator Manual) and other sources.

User Data File version 2 - Legacy file format. This is the default output USR version used by GPSBabel. It contains only basic information on waypoints, routes, and trails.

User Data File version 3 - Legacy file format. Added depth information to Route waypoints. Supports trails with a maximum of 10,000 trail-points. Last version that supports Event Marker ICONs.

User Data File version 4 - Seems to be the best option for transferring data from older Lowrance units. Many of the counts (Number of Waypoints, Number of Routes, etc) were exanded from 16-bit integer values (maximum value of 65,535) to 32-bit (maxumum value 2,147,483,647) USRv4 and above support a maximum of 20,000 trail-points (actually 24K and change). USRv4 and above and GPX support trails with trail-segments.

User Data File version 5 - Lowrance introduced universally unique identifiers (UUIDs) in this version.

User Data File version 6 - Latest format. Supports trail characteristics speed and temperature.

Lowrance systems support varying numbers of waypoints, routes, and tracks dependent on the specific device capabilities. Some early systems also supported entities called event marker icons. Event icon markers are represented by symbol, latitude and longitude data only. By default, event marker icons are converted by GPSBabel to waypoints on read with their name being generated in the format "Event Marker XXX" where XXX is replaced by the squence number of the Event Marker ICON found in the input data. You have the option to ignore Event Icon Markers effectively removing them from the output data using the input option ignoreicons. On output, you can use the write option writeasicons to create event marker icons from waypoint data present in the input file.

The following tables detail the content format of USR data files.

Table 3.5. Lowrance USR Data File Contents

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
XXXXX USR Format 4 Identifies the USR file format (interger). Valid values are 2 (USR 2), 3 (USR 3), 4 (USR 4), 5 (USR 5) and 6 (USR 6).
--XXX Data Stream Version 4 Appears only in USR 4, 5, and 6. Identifies the Data Stream Version (integer).
--XXX File Title Length 4 Appears only in USR 4, 5, and 6. Length of file title text (integer).
--XXX File Title File Title Length * 2 Appears only in USR 4, 5, and 6. File title captured in UTF-16 character set.
--XXX File Creation Date Length 4 Appears only in USR 4, 5, and 6. Length of File creation date string (integer).
--XXX File Creation Date File Creation Date Length * 2 Appears only in USR 4, 5, and 6. File creation date string captured in UTF-16 character set.
--XXX File Creation Date 4 Appears only in USR 4, 5, and 6. File creation date (integer).
--XXX File Creation Time 4 Appears only in USR 4, 5, and 6. File creation time (integer).
--XXX Unknown value 1 Appears only in USR 4, 5, and 6. Unknown data value (byte).
--XXX Unit Serial Number 4 Appears only in USR 4, 5, and 6. Serial number of Lowrance Unit creating the data file (integer).
--XXX File Description Length 4 Appears only in USR 4, 5, and 6. Length of File description string.
--XXX File Description File Description Length * 2 Appears only in USR 4, 5, and 6. File description captured in UTF-16 character set.
XX--- Number of Waypoint Objects 2 In USR versions 2 and 3, the number of Waypoint objects is represented as a short integer. If the value is zero there are no Waypoint objects present in the data.
--XXX Number of Waypoint Objects 4 In USR versions 4, 5 and 6, the number of Waypoint objects is represented as an integer, If the value is zero there are no Waypoint objects present in the data.
XXXXX Waypoint Objects Sizeof Waypoint Object * Number of Waypoint Objects Array of Waypoint Object data. Only present if the number of objects is greater than zero.
XX--- Number of Route Objects 2 In USR versions 2 and 3, the number of Route objects is represented as a short integer. If the value is zero there are no Route objects present in the data.
--XXX Number of Route Objects 4 In USR versions 4, 5 and 6, the number of Route objects is represented as an integer, If the value is zero there are no Route objects present in the data.
XXXXX Route Objects Sizeof Route Object * Number of Route Objects Array of Route Object data. Only present if the number of objects is greater than zero.
XX--- Number of Event Marker ICON Objects 2 The number of Event Marker ICON objects is represented as a short integer. This data is only present in USR version 2 and 3 data files. If the value is zero there are no Event Marker ICON objects present in the data.
XXXXX Event Marker ICON Objects Sizeof Event Marker ICON Object * Number of Event Marker ICON Objects Array of Event Marker ICON object data. Only present if the number of objects is greater than zero.
XX--- Number of Trail Objects 2 In USR versions 2 and 3, the number of Trail objects is represented as a short integer. If the value is zero there are no Trail objects present in the data.
--XXX Number of Trail Objects 4 In USR versions 4, 5 and 6, the number of Trail objects is represented as an integer, If the value is zero there are no Trail objects present in the data.
XXXXX Trail Objects Sizeof Trail Object * Number of Trail Objects Array of Trail Object data. Only present if the number of objects is greater than zero.

Table 3.6. Lowrance USR 2 and 3 Waypoint Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
XX--- Waypoint Object Sequence Number 2 Sequence number of the Waypoint Object
XX--- Latitude 4 Waypoint Latitude value (float)
XX--- Longitude 4 Waypoint Longitude value (float)
XX--- Altitude 4 Waypoint Altitude (float)
XX--- Name Length 4 Length of Waypoint Name string (integer)
XX--- Name Name Length Name text, with USR 2 and 3 format this is UTF-8 representation.
XX--- Creation Time 4 Description
XX--- Unknown Data 4 Unknown data field. Only present if USR 2 or 3 format data generated by HOOK 2 unit
XX--- ICON Identifier 4 ICON identifier value (integer)
XX--- Description Length 4 Length of Description (integer)
XX--- Description Description Length Description text represented in UTF-8 characters.
XX--- Type 2 Waypoint type (short integer)
-X--- Depth 4 Waypoint depth (float)

Table 3.7. Lowrance USR 4, 5 and 6 Waypoint Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
---XX Waypoint Universally Unique ID Number 16 Appears only in USR 5 and 6 format. Universally Unique Waypoint ID captured as four integers.
--XXX Unit Number 4 Serial Number of Unit capturing Waypoint (integer).
--XXX Waypoint Object Sequence Number 8 Sequence number of the Waypoint Object captured as a long integer.
--XXX Stream Version 4 Waypoint Stream version (integer).
--XXX Name Length 4 Length of Waypoint Name string (integer)
--XXX Name Name Length Name text, with USR 4, 5 and 6 format this is UTF-16 representation.
---XX Unit Number 4 Serial Number of Unit capturing Waypoint (integer). Duplicate information.
--XXX Longitude 4 Waypoint Longitude
--XXX Flag 1 Waypoint Flag
--XXX Waypoint ICON Identifier 2 Waypoint ICON identifier value (short)
--XXX Waypoint Color 2 Waypoint color value (short)
--XXX Description Length 4 Length of Waypoint Description (integer)
--XXX Description Description Length Waypoint description text represented in UTF-16 characters.
--XXX Alarm Radius 4 Waypoint alarm radius (float)
--XXX Creation Date 4 Waypoint creation date (integer)
--XXX Creation Time 4 Waypoint creation time (integer)
--XXX Unused Byte 1 Unused byte (character)
--XXX Depth 4 Waypoint depth (float)
--XXX Lorain GRI 4 Lorain GRI (obsolete ??)
--XXX Lorain Tda 4 Lorain Tda (obsolete ??)
--XXX Lorain Tdb 4 Lorain Tdb (obsolete ??)

Table 3.8. Lowrance USR 2 and 3 Route Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
XX--- Waypoint Object Sequence Number 2 Sequence number of the Waypoint Object
XXXXX Latitude 4 Waypoint Latitude value (float)
XX--- Longitude 4 Waypoint Longitude value (float)
XX--- Altitude 4 Waypoint Altitude (float)
XX--- Name Length 4 Length of Waypoint Name string (integer)
XX--- Name Name Length Name text, with USR 2 and 3 format this is UTF-8 representation.
XX--- Creation Time 4 Description
XX--- Unknown Data 4 Unknown data field. Only present if USR 2 or 3 format data generated by HOOK 2 unit
XX--- ICON Identifier 4 ICON identifier value (integer)
XX--- Description Length 4 Length of Description (integer)
XX--- Description Description Length Description text represented in UTF-8 characters.
XX--- Type 2 Waypoint type (short integer)
-X--- Depth 4 Waypoint depth (float)

Table 3.9. Lowrance USR 4, 5 and 6 Route Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
---XX Route Universally Unique ID Number 16 Appears only in USR 5 and 6 format. Universally Unique Route ID captured as four integers
--XXX Unit Number 4 Serial Number of Unit capturing Route (integer)
--XXX Route Object Sequence Number 8 Sequence number of the Route Object captured as a long integer
--XXX Stream Version 4 Route Stream version (integer)
--XXX Name Length 4 Length of Route Name string (integer)
--XXX Name Name Length Name text, with USR 4, 5 and 6 format this is UTF-16 representation.
---XX Unit Number 4 Serial Number of Unit capturing Route (integer). Only present in USR 5 and 6 format.
--XXX Number of Legs 4 Number of legs in route (integer)
--XXX Leg Objects Sizeof Leg Object * Number of Legs Array of Leg Object data.
---XX Unknown Data 9 Unknown data fields. Appears to be three values, two integers and one character.
--XXX Unknown Data 1 Unknown data field. Possibly end of Route element indicator.

Table 3.10. Lowrance USR 4, 5 and 6 Route Leg Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
---XX Route Universally Unique ID Number 16 Appears only in USR 5 and 6 format. Universally Unique ID for Waypoint that represents this leg of Route captured as four integers. Used to find Lat/Long values for leg.
--X-- Unit Number 4 Serial Number of Unit capturing Route Leg(integer). Used with Waypoint Sequence Number to find Lat/Long values for leg.
--X-- Waypoint Object Sequence Number 8 Sequence number of the Waypoint Object captured as a long integer. Used with Unit Number to find Lat/Long values for leg.

Table 3.11. Lowrance USR 2 and 3 Event Marker ICON Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
XX--- Latitude 4 Waypoint Latitude value (float)
XX--- Longitude 4 Waypoint Longitude value (float)
XX--- ICON Identifier 4 ICON identifier value (integer)

Table 3.12. Lowrance USR 2 and 3 Trail Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
XX--- Name Length 4 Length of Trail Name string (integer)
XX--- Name Name Length Name text, with USR 2 and 3 format this is UTF-8 representation.
XX--- Flag 1 = 0 Trail not displayed, = 1 Trail Visible (byte)
XX--- Number of Points 2 Number of points on trail (integer)
XX--- Max Points 2 Maximum number of points on trail (integer)
XX--- Trail Point Objects Sizeof Trail Point Object * Number of Points Array of Trail Point Object data

Table 3.13. Lowrance USR 2 and 3 Trail Point Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
XX--- Number of Section Points 2 Number of Lat-Long Pairs in Section (integer)
XX--- Lat-Lon Pair Objects 8 * Number of Section Points Array of Lat-Long Pair values for Section Points. Each Latitude value occupies 4 bytes (float) and each Longitude value occupies 4 bytes (float)

Table 3.14. Lowrance USR 4, 5 and 6 Trail Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
--XXX Unit Number 4 Serial Number of Unit capturing Trail (integer).
--XXX Trail Object Sequence Number 8 Sequence number of the Waypoint Object captured as a long integer.
--XXX Stream Version 4 Trail Stream version (integer).
--XXX Name Length 4 Length of Trail Name string (integer)
--XXX Name Name Length Name text, with USR 4, 5 and 6 format this is UTF-16 representation.
--XXX Flag 4 Unknown flag value
--XXX Color 4 Trail Display Color
--XXX Desc Length 4 Length of Trail Description string (integer)
--XXX Description Desc Length Description text, with USR 4, 5 and 6 format this is UTF-16 representation.
--XXX Creation Date 4 Date Trail was captured
--XXX Creation Time 4 Time stamp when Trail was captured
--XXX Flag1 1 Unknown flag byte
--XXX Flag2 1 Unknown flag byte
--XXX Flag3 1 Unknown flag byte
--XXX Count 4 Unknown Count (integer)
--XXX Flag4 1 Unknown flag byte
--XXX Flag5 1 Unknown flag byte
--XXX Flag6 1 Unknown flag byte
--XXX Number of Trail Points 4 Number of Trail Point Objects (integer)
--XXX Trail Points Array Sizeof Trail Point Object * Number of Trail Points Array of Trail Point Objects

Table 3.15. Lowrance USR 4, 5 and 6 Trail Point Object Format

Present In   
USR 2USR 3USR 4USR 5USR 6FieldSize (Bytes)Descrption
--XXX Unknown1 2 Unknown Trail Point value
--XXX Unknown2 1 Unknown Trail Point value
--XXX Creation Time 4 Trail Point creation time
--XXX Long-Lat Pair 8 Long-Lat Pair values for Trail Points. Latitude value occupies 4 bytes (float) and Longitude value occupies 4 bytes (float)
--XXX Attribute Count 4 Number of Trail Point Attributes.
--XXX Attribute Data Attribute Count * 5 Unknown Data Array. Each entry has a one byte type identifier followed by a four byte value.

Some Lowrance units have the ability to export GPX (GPS Exchange Format) formatted data. Lowrance only provides minimal support for GPX export data on their HOOK2 series (only data available to the author). Refer to the official GPX 1.1 Schema Documentation for the complete schema.

Example 3.21. Lowrance GPX Export Data

    <metadata>
      <time>xsd:dateTime</time>
      <depthunits>meters</depthunits>
      <tempunits>C</tempunits>
      <sogunits>m/s</sogunits>
    </metadata>
    <wpt lon="longitudeType" lat="latitudeType">
      <time>xsd:dateTime</time>
      <name>xsd:string</name>
      <sym>xsd:string</sym>
    </rte>
      <name>xsd:string</name>
      <rtept lon="longitudeType" lat="latitudeType">
        <time>xsd:dateTime</time>
        <name>xsd:string</name>
        <sym>xsd:string</sym>
      </rtept>
    </rte>
    <trk>
      <name>xsd:string</name>
      <trkseg>
        <trkpt lon="longitudeType" lat="latitudeType">
          <time>xsd:dateTime</time>
        </trkpt>
      </trkseg>
    </trk>
  

ignoreicons option

(USR input) Ignore event marker icons on read.

This option instructs GPSBabel to not convert event marker icons found in the input data to waypoints, but to instead disregard them altogether. These are present only in USR version 2 and 3 formats.

writeasicons option

(USR output) Treat waypoints as icons on write.

(USR output) This option causes waypoint information read from the input to be converted to event marker icons in the output.

merge option

(USR output) Merge into one segmented trail.

(USR output) This option merges all tracks into a single track with multiple segments.

break option

(USR input) Break segments into separate trails.

(USR input) Breaks multi-segment tracks into multiple separate tracks.

wversion option

(USR output) Write version.

While GPSBabel is capable of supporting all five USR formats for input processing it is currently only able to generate USR format 2, 3, or 4 due to the lack of detailed information on some of the data contained in the other formats.

By default, GPSBabel will generate USR version 2 data if the output format is specified as lowranceusr.

gpsbabel ... -o lowranceusr,wversion=2 -F blah.usr is exactly the same as gpsbabel ... -o lowranceusr -F blah.usr

Newer (post 2006 or so) Lowrance devices added a version three of their USR file format that adds waypoint depth. Lowrance recommends that this USR version be used when transferring user data to systems such as LMS, LCX, and so on. Specify "3" to output USR version 3 data on write.

To create a USR version 3 file that contains waypoint depth information use these output options: gpsbabel ... -o lowranceusr,wversion=3 -F blah.usr

title option

(USR output) Output file title string.

This option can be used when writing a version 4 or higher Lowrance USR file to set the file title. If the option is not used the title will be "GPSBabel generated USR data file".

serialnum option

(USR output) Device serial number.

This option can be used when writing a version 4 or higher Lowrance USR file to set the device serial number. If the option is not used and the source of the data is a Lowrance USR file with a valid serial number then that serial number will be used, otherwise a value of 0 will be used.

description option

(USR output) Output file content description.

This option can be used when writing a version 4 or higher Lowrance USR file to set the description text. If the option is not used the description text will be "Waypoints, routes, and trails".