I am trying to find a way to convert over 500 locations I have saved in my Garmin iPhone GPS app (iPhone 4S using Garmin StreetPilot v2.7), but I can't find a way to convert these coordinates as they are stored in the mylocations.db file. Any recommendations?

name                  latitude    longitude
Starbucks             373512448   1449664512
Wal-Mart Superstore   373473280   1449663232
Subway xin tian di    372450873   1449198830

The Subway one should be N31.21847 E121.47044

The Walmart is N31.30417 E121.50937

  • 2
    What coordinate system is your GPS using? On GPSmap 62s, find out under Main Menu->Setup->Position Format (may be different on your unit). You are expecting decimal degrees, but it's set to something else. You should be able to convert, but you need to know what it was collecting.
    – phloem
    Nov 14, 2014 at 19:02
  • that has no effect at all on the file mylocations.db that contains all this data
    – PaulWill
    Nov 14, 2014 at 19:06
  • 2
    In order to convert your coordinates TO lat/long, you need to figure what coordinate system you are converting FROM.
    – phloem
    Nov 14, 2014 at 19:07
  • exactly, that is why I am here because for the past week I haven't been able to crack it down.
    – PaulWill
    Nov 14, 2014 at 19:11
  • 1
    If you can provide the model of GPS unit we might be able to help you find where to look, but phloem is correct - somewhere in the settings it should tell you what coordinate system and unit format the unit is using, or if it isn't a user selectable setting the unit's specifications should list it. It might be easiest to just load up the locations in Garmin software and save/export a gpx file.
    – Chris W
    Nov 14, 2014 at 22:32

2 Answers 2


If you divide those "strange" latitudes and longitudes by 11930465, you get the North and East degree values you expect:

enter image description here

But don't ask me why ;-)

  • Wow, good find! I reprojected those lat/lons into every coordinate system in the Esri projection engine trying to see what they matched up to and didn't even think they were still WGS-84 with some weird multiplier attached. Nov 15, 2014 at 17:50

@AndreJ's answer is right. I just add the reason for this "strange" number : it seems Garmin stores its angular coordinates using a 32-bit integer, so that gives 2^32 possible values. We want to be able to represent values up to 360° (or -180 to 180), so each degree represents 2^32 / 360 = 11930465.

So dividing your coordinate by 11930465 will give the decimal value.

By the way, this value encoding is also present in fit files (Flexible and Interoperable Data Transfer) also originating from Garmin.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.