Re: what3words & Garmin Drive App
Posted: Sun Mar 03, 2024 7:07 pm
Oh dear, I've been suckered by a Garmin programmer!guiri wrote: ↑Fri Mar 01, 2024 1:12 pm iOverlander sends the following intent for a campsite near me:Note the campsite name label in parentheses.geo:0,0?q=53.33704,-1.92364(Chinley Campsite)
Now, if I go to the same location in what3words, and then navigate to it, the intent that is sent is:Putting aside the slight difference in the coordinates, the main difference is that what3words does not send a label in parentheses.geo:0,0?q=53.337039,-1.923649
I believe that it is this omission by what3words that causes Garmin Drive to reject the request as "No location information found in the link provided".
I thought iOverlander worked because it sent a label to go with the coordinates, however I've tried programmatically sending other geo URI to Drive and it turns out that Drive is completely ignoring the latitude and longitude in that format. Instead it attempts to do a location lookup on the text in the parentheses. In the case of "Chinley Campsite", the XT ends up storing the location as 53.338269,-1.939154 (which is in Chinley village about a mile away).
This is absolutely not the Android standard; the label is in theory to identify the place on the map, not be a search term.
How did I find this out? I replaced the label "Chinley Campsite" with "Shared Location" (whilst leaving the latitude and longitude), and it stopped working (with Drive saying it couldn't find a location). I then replaced "Chinley Campsite" with the name of another local village, and Garmin located that village.
I did manage to send latitude and longitude to Drive as a plain text intent, but then Drive decides to relocate it. So when sending the Chinley Campsite location as string "53.33704,-1.92364", the XT inexplicably stores this as 53.336446,-1.920759 (which is on the main road so you'd have trouble locating the campsite). I think it is round tripping the location via Google and storing what it believes is a more significant point (not what you wanted though).
This may be what people who paste latitude and longitude into Drive are also seeing; that Drive does not pass coordinates through to the XT unmolested.
Summary (but I think we knew this already)... Drive cannot be trusted with latitude and longitude.
I'm not even convinced that sending the coordinates to Google Maps and then onwards to Drive is robust.
The safest workaround I think is this one from AugustFalcon; to paste the coordinates into the search in Tread, then select the suggestion which reflects the actual location required. Save this as a waypoint then sync to the XT.
I'm going to see if programmatically I can create a gpx file on the fly with the required waypoint, and send that via Drive to the XT!