Where2.0: Garmin Developer, Browser Plugin and Javascript API

In Garmin’s first Where 2.0 appearance in June, the GPS company announced that it has opened up their platform for developers to use. Aaron Roller, who cofounded Motion Based in 2003, gave us a walkthrough of the evolving platform.

Originally Motion Based developed a Trail Networks service for runners, but they found that the only way to interface to do GPS was using the Motion Based agent. This required a Windows-only download and install. In 2005 Garmin acquired Motion Based and their Trail Networks service. Two years later we see the fruit of this purchase with a push from Garmin to become friendly to developers.

Traditionally the GPS devices that Garmin sell have been fairly closed despite having USB or Bluetooth connections. This changes with the launch of Garmin developer they are opening up over 19 million GPS devices.

A key element in their offering is the Garmin Browser Plugin. This is a closed-source plugin for IE and Firefox on Windows, with support for Firefox and Safari on Mac OS X under development. The plugin allows access from Javascript to the actual hardware GPS unit. To make this easier Garmin is providing a Javascript library released under the Apache 2.0 open source license, which allows you to read and write way-points and routes to and from the device. Access to the plugin is controlled via an API key that maps to your domain, however it never dials back home so a connection to Garmin’s servers is not needed.

Garmin is also taking the Motion Based services and abstracting out the core geo services into the MotionBased API. Coming later in 2007 the service will allow developers to store and retrieve geo data hosted with Garmin. Reading over the license I see no text on who owns the data, which is a point that needs clarification.

To make display of data coming from the MotionBased API, they also announced the Garmin User Interface Library that makes presentation of geo data easier. Using Javascript and Actionscript it allows you to replay tracks coming from MotionBased with support coming for GPX files.

I am impressed with the effort Garmin is putting into allowing developers to access their devices. Assuming that people are willing to install the plugin, it could greatly increase the ability of developers to innovate in this space. With the MotionBased API they can also help with the scaling problem, geo data is hard to index and search with high performance. Groundspeak’s Geocaching.com uses the plugin to allow users to download location data directly to the GPS unit using a “Send to GPS” button.

With the release of Google Gears and the Garmin Plugin, is there a resurgence of browser plugins? As more and more apps move to the browser, there is a need to break out of the browser sandbox to access local storage or hardware devices. It’s yet to be proven, though, that users trust or install aftermarket plugins. Now for extra bonus points, write something that combines Gears and the Garmin Plugin for offline applications. When the Mac OS X version comes out, I might just do it myself.

tags: ,