Downloads

Download useful tools and utilities for your sailing adventures. All downloads are free and open source.

GPX Creator

A Python GUI application to create GPX (GPS Exchange Format) files with a simple interface. Perfect for creating waypoints for your navigation systems.

The Problem:

When reading Local Notice to Mariners and passage planning, I found numerous waypoints and navigation points that I wanted to add to multiple charting applications. Manually entering coordinates into each application was time-consuming and error-prone. I needed a simple way to create GPX files that could be imported into any charting application, making it easy to share waypoints across different navigation systems.

Features:

  • User-friendly GUI built with tkinter
  • Input fields for time, waypoint (latitude/longitude), and name
  • Automatic bounds calculation from waypoint coordinates
  • Default symbol set to "WayPoint"
  • Generates GPX files matching standard format

Tested Navigation Software:

The generated GPX files have been successfully tested with the following navigation applications:

  • Orca (macOS)
  • Orca (iOS)
  • Boating (iOS)
  • AquaMap (iOS)

Requirements:

  • Python 3.6 or higher
  • tkinter (GUI library - usually included with Python)

Installation:

Download from GitHub:

Download GPX Creator

Installation Steps:

  1. Download or clone the repository from GitHub
  2. Ensure Python 3.6+ is installed on your system
  3. Verify tkinter is available (usually included with Python)

Usage:

Run the application:

python3 gpx_creator.py

Or on Windows:

python gpx_creator.py

Fill in the required fields:

  • Time: UTC timestamp (defaults to current time, click "Now" to update)
  • Waypoint: Latitude and longitude for the waypoint
  • Name: Name of the waypoint

Bounds are automatically calculated from the waypoint coordinates, and the symbol defaults to "WayPoint". Click "Create GPX File" to save your GPX file.

Video Tutorial:

Watch a video demonstration of how to use GPX Creator:

Watch Tutorial Video

Platform-Specific Notes:

macOS: Python and tkinter are usually pre-installed. If not, install via Homebrew or download from python.org.

Windows: Download Python from python.org and ensure "Add Python to PATH" is checked during installation.

Linux: Install Python 3 and python3-tk via your package manager.

For detailed installation instructions and troubleshooting, visit the GPX Creator GitHub repository.

GPX Splitter

A standalone Python web application for splitting GPX track files. Split tracks by track tags or by time/distance criteria, visualize tracks on an interactive map, and download individual track files.

The Problem:

I often have large GPX track files that contain multiple routes or segments. I needed a way to break these down into individual GPX files that I could use as separate routes in my navigation software. Manually splitting large track files was tedious and time-consuming.

Features:

  • Split by Track Tags: Split a GPX file into separate files based on individual track tags
  • Split by Time/Distance: Split tracks based on maximum time gaps and distance thresholds
  • Interactive Map: Visualize tracks on a map using Leaflet.js with start/end markers
  • Track Statistics: View distance, duration, point count, and timestamps for each track
  • Download Individual Tracks: Download each split track as a separate GPX file
  • Edit Track Names: Click on track names to edit them inline
  • Place Name Lookup: Automatically looks up geographic place names for start and end coordinates
  • Editable Place Names: Edit place names for each track's start and end locations
  • Flexible Naming: Choose to use place names or coordinates in track names via checkboxes

Requirements:

  • Python 3.6 or higher
  • Flask (web framework)
  • Werkzeug (WSGI utilities)
  • requests (HTTP library for reverse geocoding)

Installation:

Download from GitHub:

Download GPX Splitter

Installation Steps:

  1. Download or clone the repository from GitHub
  2. Ensure Python 3.6+ is installed on your system
  3. Install dependencies: pip3 install -r requirements.txt (or pip install -r requirements.txt on Windows)

Usage:

Run the web application:

python3 app.py

Or on Windows:

python app.py

Once the server starts, open your web browser and navigate to:

http://localhost:5003

Then:

  • Upload a GPX file using the file upload area
  • Choose your splitting method (by track tags or by time/distance)
  • Click "Split GPX File"
  • View track statistics and visualize tracks on the interactive map
  • Edit track names and place names as needed
  • Download individual track files

Platform-Specific Notes:

macOS: Python is usually pre-installed. Install dependencies via pip3. If you encounter permission errors, use pip3 install --user -r requirements.txt.

Windows: Download Python from python.org and ensure "Add Python to PATH" is checked during installation. Use pip install -r requirements.txt or python -m pip install -r requirements.txt.

Linux: Install Python 3 and pip via your package manager. Use pip3 install -r requirements.txt or pip3 install --user -r requirements.txt for user-only installation.

For detailed installation instructions and troubleshooting, visit the GPX Splitter GitHub repository.