Garmin POI Loader: Difference between revisions

From Wildsong
Jump to navigationJump to search
Brian Wilson (talk | contribs)
Brian Wilson (talk | contribs)
mNo edit summary
Line 1: Line 1:
You can download "POI Loader" from the [http://Garmin.com Garmin] site.
You can download "POI Loader" from the [http://Garmin.com Garmin] site.
Then you can create simple CSV text files containing point data, and load them into a Garmin handheld with POI loader.
Then you can create simple GPX or CSV text files containing point data, and load them into a Garmin handheld with POI loader.


== Many POI files ==
== File formats ==
 
I just ran across this page, which discusses having many different POI databases. http://forums.groundspeak.com/GC/index.php?showtopic=140808
 
Basically you can tell POI Loader to generate output to an SD card instead of the Garmin, and rename the generated file.
 
# Create GPX file from point shapefile ("places.shp" => "places.gpx")
# Feed "places.gpx" to POI Loader, which generates "poi.gpi"
# Rename "poi.gpi" => "places.gpi"
 
The initial conversion can be done with a geoprocessing tool or with gpsbabel.
Repeat the three steps for each point shapefile.
 
Toplevel folder is /Garmin/Poi, and you can use subdirectories too...
 
What exactly, one wonders, is in the .poi file? It is of course yet another damn binary format. We're not allowed to know. There is supposed to be a command line mode for the POI Loader though. I am hopeful that this works, because then I could script it.
 
== GPX format ==
 
[http://www.topografix.com/gpx.asp GPX format]
 
GPX is an open format for exchanging data between GPS/GIS apps.
 
== CSV format ==


=== CSV format ===


Here is the format of the file, cribbed from Garmin's docs
Here is the format of the file, cribbed from Garmin's docs
Line 44: Line 22:
</pre>
</pre>


Download POI loader and refer to its internal docs for more information.
I don't use CSV but you can download POI loader and refer to its internal docs for more information.
 
 
=== GPX format ===
 
GPX is an open format for exchanging data between GPS/GIS apps, not just POIs.
Generic information [http://www.topografix.com/gpx.asp GPX format]
 
GPX POI files
 
Sample POI file in GPX format consists of a header, metadata, POI's, and a closing tag.
 
Header section
 
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<gpx xmlns="http://www.topografix.com/GPX/1/1" creator="Geovative Solutions GeoTours" version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd"
 
Metadata section, this tells about the POI file.
 
<metadata>
  <name>San Francisco</name>
  <desc>San Francisco Points of Interest</desc>
  <author>
    <name>Brian Wilson</name>
    <link href="http://wildsong.biz/index.php?title=Garmin_POI_loader">
      <text>POI Loader Sample</text>
    </link>
  </author>
  <link href="http://wildsong.biz/index.php?title=San_Francisco_POI">
    <text>San Francisco</text>
  </link>
  <keywords>Cliff House, SF Zoo, SF Botanical Garden,
California Academy of Science,
Transamerica pyramid, Union Square
</metadata>
 
Here is a sample poi entry; there can be many.
 
<wpt lat="37.7685" lon="-122.4697">
<name>San Francisco Someplace</name>
<cmt>This short description shows up in the Garmin.</cmt>
<desc>This long description shows up in the Garmin.</desc>
<link href="Data/Location3649-3"/>
<sym>Waypoint</sym>
<extensions>
</wpt>
 
Closing tag, after the list of POIs you need to close the file with this.
 
</gpx>
 
=== GPI format ===
 
You can convert the GPX/CSV files into GPI format and upload them to the GPSr in one step with Garmin's POI Loader, or you can use gpsbabel to convert the POIs to a GPI file and then just work with that file. (Copy it to device either via SD card or via mass storage mode.)
 
== Using many POI files ==
 
I just ran across this page, which discusses having many different POI databases. http://forums.groundspeak.com/GC/index.php?showtopic=140808
 
Basically the trick is to rename the generic poi file on the device so that when you upload a new one via POI Loader it does not overwrite existing points.
 
# Create GPX file from point shapefile ("places.shp" => "places.gpx")
# Feed "places.gpx" to POI Loader, which generates "poi.gpi"
# Rename "poi.gpi" => "places.gpi"
 
The initial conversion can be done with a geoprocessing tool or with gpsbabel.
Repeat the three steps for each point file.
 
Top level folder is /Garmin/Poi, and you can use subdirectories too...
 


== Custom bit maps ==
== Custom bit maps ==

Revision as of 16:41, 31 August 2009

You can download "POI Loader" from the Garmin site. Then you can create simple GPX or CSV text files containing point data, and load them into a Garmin handheld with POI loader.

File formats

CSV format

Here is the format of the file, cribbed from Garmin's docs

<Lon>,<Lat>,["]<Name>[@<Alert Speed>]["],["] [comment]["]

Longitude and latitude must appear in WGS84 decimal degrees format (ddd.ddddd; negative numbers indicate West and South).

If you include quotes around the name or comment, you can include line breaks in the text. The following are examples of Custom POIs in the proper format:

-94.81549,38.80390,Bonita
-94.79731,38.81099,Ridgeview@25
-94.74240,38.81952,Heritage Park,Perfect site for a picnic
-94.76416,38.81227,Garmin,"1200 E. 151st Street
Olathe,KS 66062
913/397.8300"

I don't use CSV but you can download POI loader and refer to its internal docs for more information.


GPX format

GPX is an open format for exchanging data between GPS/GIS apps, not just POIs. Generic information GPX format

GPX POI files

Sample POI file in GPX format consists of a header, metadata, POI's, and a closing tag.

Header section

<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <gpx xmlns="http://www.topografix.com/GPX/1/1" creator="Geovative Solutions GeoTours" version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd"

Metadata section, this tells about the POI file.

<metadata>
 <name>San Francisco</name>
 <desc>San Francisco Points of Interest</desc>
 <author>
   <name>Brian Wilson</name>
   <link href="http://wildsong.biz/index.php?title=Garmin_POI_loader">
     <text>POI Loader Sample</text>
   </link>
 </author>
 <link href="http://wildsong.biz/index.php?title=San_Francisco_POI">
   <text>San Francisco</text>
 </link>
 <keywords>Cliff House, SF Zoo, SF Botanical Garden,
California Academy of Science,
Transamerica pyramid, Union Square

</metadata>

Here is a sample poi entry; there can be many.

<wpt lat="37.7685" lon="-122.4697">
<name>San Francisco Someplace</name>
<cmt>This short description shows up in the Garmin.</cmt>
<desc>This long description shows up in the Garmin.</desc>
<link href="Data/Location3649-3"/>
<sym>Waypoint</sym>
<extensions>
</wpt>

Closing tag, after the list of POIs you need to close the file with this.

</gpx>

GPI format

You can convert the GPX/CSV files into GPI format and upload them to the GPSr in one step with Garmin's POI Loader, or you can use gpsbabel to convert the POIs to a GPI file and then just work with that file. (Copy it to device either via SD card or via mass storage mode.)

Using many POI files

I just ran across this page, which discusses having many different POI databases. http://forums.groundspeak.com/GC/index.php?showtopic=140808

Basically the trick is to rename the generic poi file on the device so that when you upload a new one via POI Loader it does not overwrite existing points.

  1. Create GPX file from point shapefile ("places.shp" => "places.gpx")
  2. Feed "places.gpx" to POI Loader, which generates "poi.gpi"
  3. Rename "poi.gpi" => "places.gpi"

The initial conversion can be done with a geoprocessing tool or with gpsbabel. Repeat the three steps for each point file.

Top level folder is /Garmin/Poi, and you can use subdirectories too...


Custom bit maps

Name the BMP file after the POI file and POI loader will use it for all points in that file, for example "restaurants.csv" and "restaurants.bmp".

Bitmaps should be 24x24 or smaller. Magenta is transparent by default.