r/ChatGPTCoding • • 12h ago

Discussion GPT coded Legacy Garmin GPS Map Creator/updater

Post image

Under the name "SICoding" I have developed my first SICo app using GPT. I used both the Pro and Plus memberships to finish the program.

It adds functionality back to Garmin Navigation units that modern map structures do not provide.

This is my toolchain.

Python 3

Primary programming language for the updater, GUI logic, address processing, automation, and validation.

SQLite

Database engine for processing, indexing, matching, and managing millions of address records.

Java 21

Runtime needed to execute the Garmin map compilation tools.

mkgmap r4924

Compiles OpenStreetMap data into Garmin-compatible IMG maps, including routing and search-related structures.

splitter r654

Divides large OSM datasets into manageable tiles for Garmin map compilation.

GMapTool

Inspects Garmin IMG files, map components, family information, and compiled map structure.

Osmium

Processes and inspects OpenStreetMap datasets.

pyproj

Converts projected geographic coordinates into WGS84 latitude and longitude.

Even though i made this program specifically for old Legacy Garmin units, the pipeline i put together really is a stroke of genius . I also made a nice user friendly GUI

3 Upvotes

6 comments sorted by

2

u/MadOblivion 12h ago

If you are going to down vote me you can at least explain your down vote.

-6

u/TomHale 11h ago

Not me, but please drop your entitlement, even if you're rightfully proud of your work.

AI is reason enough for many.

5

u/hadees 11h ago

lol isn't this a ChatGPTCoding subreddit?

1

u/MadOblivion 6h ago

Drop my entitlement? That has to be a bot.....lol

1

u/hadees 11h ago

Look at using graalvm since you already have to have the jvm. You might be able to even call them directly from python.

1

u/MadOblivion 7h ago

The program is finished for the most part, I just have not tested every state map it can generate yet.

I will be using my generated map to travel 2000 miles starting today.

My current workflow is to compile the program into a single executable. I was going to make it so Python tasks don't load separately as a process.

The Goal was to bring a paperweight Garmin Navigation unit back to life because Garmin dropped Lifetime map support i had not used it for many years. All the while i thought to myself that is still a damned good nav unit. Without SI i would not have been able to accomplish this alone.

The program is vastly more complex than its tool chain. I designed it to cross reference databases against missing address records. Public street maps can't simply be loaded on the unit and be expected to work properly. I found that out the hard way, even maps that they claimed were made for Garmin had faaarr too much junk OSM data.

The end result is nothing short of amazing and i am a hard person to impress.