Skip to content

Converting Waypoints

Featured Replies

Does anybody know how to covert .gpx files to .hwr or .usr in bulk without converting them one by one. I have used GPS Babel and it requires you to convert them one by one (at least I think). I have about 200 waypoints to convert and it sure would be easier to be able to do all of them at once. 

Solved by Jig Man

  • Super User

Do you have multiple files or multiple waypoints in one file?

  • Author

Multiple .gpx files. 

  • Author

As far as that goes, even converting hwr to usr or any conversion. I have both Humminbird and Lowrance in the one boat. It would be nice to convert all from one to the other for installation. 

 

  • Super User
  • Solution

When I switched from Lowrance to Humminbird I found it easy to do.  Here is a video explaining how.

 

  • Super User

There are a lot of ways that I can think of to do what you want.  None of them are simple.  There may be better ways that I'm not aware of such as app that will do exactly what you want.  Here are two ways that I just tested to combine waypoints from multiple files into a single GPX file.  From there you can use GPS Babel to convert it to the file types needed for each fish finder.     You can decide if ether of these methods  is something you would be comfortable doing.  

 

First way

I uploaded two GPX files to ChatGPT (AI platform) and ask it to combine the waypoints in each to a single GPX file.  It created a file that I download-I examined the file- it looked good but I did not test it on a fish finder.  

 

Second way

A .gpx file is an XML text file.  You can open it with any text editor.  The text below is from a gpx file with two waypoints.  The text between "<wpt"  and "</wpt>" defines a waypoint.  If you cut and paste these waypoint snippets into a single gpx file and you will have all of your waypoints in a single file.  I haven't tried doing this to move data between Humminbird and Lowrance.  There may be details like the color of the waypoint,  the group name,  etc that might not work exactly as you would hope across fish finders but I'm confident it will work well.  I've looked at a lot of XML files in my career so I'm very familiar with them.  I don't think it's too difficult to understand the format of the file but you may disagree.  For example,  <name>wpt0001</name> defines the name of the waypoint.  XML files are used for lots of things and there are many editors you can download that will help you edit them.  You have to be careful not to mess up the format.  For example, making a typo and leaving out the / when editing <name>wpt001</name> would break everything.  Using a specialized XML editor should keep you from making mistakes like that. 

 

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<gpx xmlns="http://www.topographix.com/GPX/1/1" xmlns:h="http://www.humminbird.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1" creator="Humminbird" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">
<wpt lat="36.28333128947579" lon="-86.50296136736871">
    <ele>NULL</ele>
    <time>2025-06-16T22:39:56.903Z</time>
    <name>wpt0001</name>
    <sym>Waypoint</sym>
    <extensions>
        <h:uniqueid>46035160705522</h:uniqueid>
  <h:group>My Data</h:group>
        <h:edited>2025-06-16T22:40:08.947Z</h:edited>
        <h:visible>true</h:visible>
        <h:mob>false</h:mob>
        <h:spotlock>false</h:spotlock>
        <h:creator></h:creator>
        <h:viewas>IconAndName</h:viewas>
  <h:color>Yellow</h:color>
        <h:radiustoggle>false</h:radiustoggle>
        <h:radiussafety>false</h:radiussafety>
        <h:radius>0.0</h:radius>
        <h:depth>0.0</h:depth>
        <h:temperature>0.0</h:temperature>
        <h:cursordepth>0.0</h:cursordepth>
        <h:version>2</h:version>
        <h:desc></h:desc>
    </extensions>
</wpt>
<wpt lat="36.28335438947579" lon="-86.502961367456871">
    <ele>NULL</ele>
    <time>2025-06-16T22:39:56.903Z</time>
    <name>wpt0001</name>
    <sym>Waypoint</sym>
    <extensions>
        <h:uniqueid>46035160705522</h:uniqueid>
  <h:group>My Data</h:group>
        <h:edited>2025-06-16T22:40:08.947Z</h:edited>
        <h:visible>true</h:visible>
        <h:mob>false</h:mob>
        <h:spotlock>false</h:spotlock>
        <h:creator></h:creator>
        <h:viewas>IconAndName</h:viewas>
  <h:color>Yellow</h:color>
        <h:radiustoggle>false</h:radiustoggle>
        <h:radiussafety>false</h:radiussafety>
        <h:radius>0.0</h:radius>
        <h:depth>0.0</h:depth>
        <h:temperature>0.0</h:temperature>
        <h:cursordepth>0.0</h:cursordepth>
        <h:version>2</h:version>
        <h:desc></h:desc>
    </extensions>
</wpt>
<extensions></extensions></gpx>

  • Author

Jig Man solved the Lowrance to Humminbird conversion. Here is a more difficult one. 

 

I would like to start converting waypoints on Google Earth to Lowrance and/or Humminbird. I understand the process of saving the place as a .kml file. How then do you convert the .kml files in bulk to .gpx, .hwr or .usr files. If you use GPS Babel, it requires them to be converted one at a time. Does anybody know of a converter that will convert a list of .kml waypoint files all at once instead of individually? 

I asked ChatGPT how to do a batch conversion with GPSBabel. It gave me this. 

 

foreach ($file in Get-ChildItem *.kml) {
    gpsbabel -i kml -f $file.FullName -o hwr -F ($file.BaseName + ".hwr")
}

 

Where do I put my input filename and output filename? Or how will it know what those files are?

 


 

  • Super User

Put all of your kml files in a single folder and ask ChatGPT to write a PowerShell (assuming you're using Windows) script to combine all of the files in that folder into a single GPX file.  If you get any errors just tell ChatGPT what the error says and it should be able to help.

 

It should give you something like this using the folder you give it.

 

# Merge all KML files in the current directory into a single GPX.
# Requires: gpsbabel in your PATH

# Collect .kml files
$kmlFiles = Get-ChildItem -File -Filter *.kml
if (-not $kmlFiles) {
    Write-Error "No .kml files found in $(Get-Location)."
    exit 1
}

# Build GPSBabel -f arguments safely
$inputArgs = @()
foreach ($f in $kmlFiles) {
    $inputArgs += @('-f', $f.FullName)
}

# Output file (change if you want a different name/path)
$out = Join-Path (Get-Location) 'combined.gpx'

# Run GPSBabel
& gpsbabel -i kml @inputArgs -o gpx -F $out

if ($LASTEXITCODE -eq 0) {
    Write-Host "Created $out from $($kmlFiles.Count) KML file(s)."
} else {
    Write-Error "gpsbabel failed with exit code $LASTEXITCODE"
}

  • Author
2 minutes ago, Tennessee Boy said:

Put all of your kml files in a single folder and ask ChatGPT to write a PowerShell (assuming you're using Windows) script to combine all of the files in that folder into a single GPX file.  If you get any errors just tell ChatGPT what the error says and it should be able to help.

 

It should give you something like this using the folder you give it.

 

# Merge all KML files in the current directory into a single GPX.
# Requires: gpsbabel in your PATH

# Collect .kml files
$kmlFiles = Get-ChildItem -File -Filter *.kml
if (-not $kmlFiles) {
    Write-Error "No .kml files found in $(Get-Location)."
    exit 1
}

# Build GPSBabel -f arguments safely
$inputArgs = @()
foreach ($f in $kmlFiles) {
    $inputArgs += @('-f', $f.FullName)
}

# Output file (change if you want a different name/path)
$out = Join-Path (Get-Location) 'combined.gpx'

# Run GPSBabel
& gpsbabel -i kml @inputArgs -o gpx -F $out

if ($LASTEXITCODE -eq 0) {
    Write-Host "Created $out from $($kmlFiles.Count) KML file(s)."
} else {
    Write-Error "gpsbabel failed with exit code $LASTEXITCODE"
}

This may over my head a bit. Thanks for the reply. I may just stick to adding waypoints on the fish finders. 

  • Super User
Just now, Don Harris said:

This may over my head a bit. Thanks for the reply. I may just stick to adding waypoints on the fish finders. 

You could just upload the kml files to ChatGPT and tell it to do it.  The only downside to doing that is ChatGPT will know where to find you when AI takes over the world.  😆

  • Author

My wife works with AI now. They already know. 😬🤣

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Recently Browsing 0

  • No registered users viewing this page.

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.