Garmin XT

It looks like Garmin have published their own standard, the Garmin PeerPoint Messaging System, for SMS-based communication between devices running Garmin XT.

A message encoded with version 2 of their standard might look like this –

<GarminLoc>Meet me at Taco Bell<C>N 38.85847 W094.81600 <G>201000021ba1f800bc934600

The human-readable location <C>N 38.85847 W094.81600 is optional, so a minimal machine-readable message could be made quite compact. However, there is no mechanism for representing altitude or accuracy.

The machine-readable component of the message is quite interesting. The first 8 digits are administrative overhead, but the characters 1ba1f800bc934600 encode the latitude/longitude as a pair of hexadecimal 32-bit signed integers. Each integer has a value in the range [-2147483648, 2147483647], which is converted to degrees by dividing by 11930464.71

This is actually a very compact format. The location is expressed accurate to 7 decimal places in just 16 characters. To achieve a corresponding level of accuracy in a base-10 encoded latitude,longitude format you would need around 23. Unfortunately it’s not human readable (or backwards-compatible with version 1 of the standard), so it’s recommended that a human-readable location be included as well, which eliminates any compactness advantage.

Posted in Uncategorized | Leave a comment

A competing standard

Although I think we’re the first to publish a standard for geotagging SMSes, we weren’t the first to start developing one. The Open GeoSMS standard was first proposed by ITRI (Taiwan’s Industrial Technology Research Institute) in 2008, and is currently being developed by the Open GeoSMS Standards Working Group within the Open Geospatial Consortium. Their current discussion paper describes version 2 of the standard, and they have a Facebook page for news and announcements (mostly written in Chinese).

There is a reference application called Open GeoSMSer, which is available for Android, Windows Mobile 5/6, Symbian S60, and the iPhone. Unfortunately the Android version is compiled under a pre-1.6 environment, so it won’t install on my HTC Tattoo.

Open GeoSMS messages are encoded using the following format –


The latitude and longitude are encoded using NMEA0183 (a National Marine Electronics Association standard). Their format is DDMM.mmmm,H, where DD is degrees, MM is minutes, mmmm is decimal minutes, and H is the bearing (N, S, E or W). For example, the longitude 121.566277 would be encoded as 12133.9766,E

The format can be B (Basic), A (AGPS), E (Extended), P (Point of Interest), or Q (Query), and the data component of the message will depend on this format.

Here’s a sample message –

GeoSMS/2;2230.978,N;12123.566,E;E;My car has broken down

Let’s be honest, I don’t think this is a very good standard. There are four broad criteria that a geotagging SMS standard should satisfy –

  1. It must contain location data. Latitude and longitude at a minimum, altitude and accuracy if possible.
  2. It must be machine-readable. Software should be able to unambiguously spot geotagged messages from all the millions of SMSes sent every day.
  3. It should be human-readable. Many messages will arrive on phones that don’t recognise the standard, so they should make sense to a human reading them as straight text.
  4. It should be compact. An SMS is limited to 160 characters, so the location data should be represented in as few characters as possible.

Now, the Open GeoSMS format is certainly machine-readable, and it specifies latitude and longitude. But it performs poorly on the other criteria.

Leaving out altitude and accuracy looks like an oversight. When there’s no GPS signal, many smartphones estimate their location using mobile phone towers, which can have an accuracy of a kilometre or more. If you’re requesting a taxi or an ambulance for example, it’s very important to include an accuracy estimate so they know if the location is reliable. Altitude is less important, but might be useful for finding someone in a multi-storey building.

The use of NMEA0183 is a big mistake in my opinion. Compared with good old base-10 encoding it’s less compact, it’s much less human-readable, and it’s more difficult for software to parse (base-10 parsing is built in to all software libraries).

I also think the use of pre-defined formats (B, A, E, etc) is a mistake, since it forces the standardization of every possible application of geotagging up-front. Standards should confine themselves to a core requirement (embed a location in an SMS) and leave application-specific requirements to separate standards that build on it.

But as I said, it’s a work-in-progress, and these issues may be addressed by the time it’s finally ratified as a standard.

Posted in Uncategorized | 4 Comments

Updated Android app

A new version of the I Am Here application has been released to the Android Market. Two minor changes –

  • Improved the font size on hi-res handsets
  • Added the option of displaying distances in imperial units
Posted in Uncategorized | 4 Comments


The GeoSMS wikipedia page has finally been approved. It’s amazing what a successful media release can do to shape reality!

I’ve also updated the Geo URI and geotagging pages.

Posted in Uncategorized | 2 Comments

Media coverage

These days there are plenty of tools for tracking the progress of a media release. Google lets you search the web, news, and blogs. There’s Twitter search, Android Market download stats, and WordPress page views. And RMIT uses a media monitoring firm. All pure smack for a data junkie like me.

So how did we go?

In the real world, on Thursday we got 1 minute 19 seconds on Melbourne’s Channel 9 news at 6pm. The NZ Herald did a couple of paragraphs, and the Melbourne Herald Sun mentioned us in a story on the Australian launch of Facebook Places.

In the on-line world we did even better. The story was picked up by the Times of India and, via a syndicated blog feed, the New York Times. It was translated into Russian, Chinese, Indonesian, Polish, and Spanish. And it was tweeted and blogged countless times. Not too bad.

When a media release is let loose in the wild it tends to get picked up by traditional media first, then it gets blogged, tweeted, and translated a few times, mutating as it goes like a game of Chinese whispers. But I was pleased to see that the message stayed intact through all iterations. It helps that it’s a story that people from all cultures can relate to, and it’s simple enough to fit in a tweet.

All in all, that went well. Next mission: convince someone to write an iPhone version.

Posted in Uncategorized | 1 Comment

Press release

RMIT has put out a press release for the Android app. Just finished interviewing with Channel 9, so fingers crossed we’ll make the 6pm news.

Posted in Uncategorized | 1 Comment

Android application released

Good news! The Android reference application I Am Here is now available through the Android Market, under the RMIT University account. Just search for “i am here”.

It’s free, of course.

Posted in Uncategorized | 1 Comment