Building Geolocation Services into an IoT solution:
What to think about. Where to start.
By Antony Pegg - Solutions Group, Verizon Location Services
Let’s say you are developing an IoT solution that requires some level of geolocation capability as part of its functionality.
Or perhaps you have an existing solution that could be dramatically enhanced by adding location services to its core operations.
Or maybe you are thinking of an application where location is the sole mission. As in, where is this piece of equipment?
Where do you start? What should you consider in terms of architecture and programming? What hardware, DevKits, API, or backend services will you need? How will you actually deploy and manage the application?
Start with the business need
The fact is, with the current state of geolocation technology, the question is rarely if something is possible. As geo providers like MapQuest and others can tell you, whatever you are thinking is probably possible, one way or another.
The more critical question is figuring out what you really need -- exactly -- in terms of location capability in the solution. What precisely do you want to know? And when? How will you actually leverage that data within the application? Or in downstream systems? How will that data improve, affect, or change your operations? And how much investment in costs and development time would be practical for the solution?
As with most development issues, the answers to these questions will drive all your downstream decisions about hardware, programming and integration.
Knowing precisely what you want to do -- and why -- will clarify everything.
Here is what to think about.
How precise must the location data be?
At the moment, an IoT application can generate location data either by relying on cell tower triangulation, or on GPS functionality.
If you need to pinpoint a location within a few square meters, virtually anywhere in the world, the device needs to be equipped with GPS. That would apply to solutions that need to report locations at the level of a street address let’s say, or to locating a customer near a particular store, or locating a cargo container within a trucking or shipping facility.
Naturally, GPS-enabled devices are more costly to deploy and maintain, and draw more power, which will affect decisions about battery technology and service life.
Relying on cellular network location is simpler, in that any wireless-enabled IoT device can generate location data. But triangulating on cell towers is much less precise than GPS data -- on the order of dozens to hundreds of meters. And the accuracy can vary considerably depending on the density of cell towers in a given area. This may be entirely sufficient for applications that only need ‘approximate’ locations
How often do you need a location?
In terms of power consumption and cellular usage, there is huge difference between reporting continuous location in near real time, reporting only when polled, or reporting just once an hour, or once a day, for example.
Capturing location, speed, and altitude data on a continuous basis -- in fleet management applications, or shipment tracking for example -- may require direct powering of the device through the vehicle, in that battery power may be impractical for anything but short-term operations.
Will you need to log location data within the device, and then upload in batch later, mainly for documentation or analysis purposes? That is less demanding, but not useful for real-time tracking.
Note too, that continuous or real-time capability will require back end and administration systems capable of capturing and displaying the data in useful form.
Privacy of the location data
In some IoT applications you will also need to address data privacy concerns in the collection storage of the location data.
Data that tracks the location of drivers or remote service personnel, for example, can indeed come under privacy laws and regulations in many contexts. And applications that collect location data on private consumers or customers will almost certainly require privacy protections and processes.
Depending on the nature of the application, this could entail proper notifications and consents, secured transmissions, and safeguarding any collected and stored data.
What other data will you be collecting and transmitting?
If you will be collecting and transmitting other data along with the location -- such as product temperature, vehicle operations, and the like -- that will also effect power consumption and data usage, as well as requiring a more complex and integrated device.
Here too, continuous, real-time communications will be more involved than merely logging and recording the data within the device for later transmission.
Will you need to control or command the device?
If you will need to transmit instructions or execute commands to the device -- either based on location data, or other parameters -- this capability will naturally affect the power consumption and communications capability of the device.
How will you visualize, use and store the location data
Bottom line, the key to leveraging geo-spatial data is using the information to support business or operations goals, either by deploying all-new applications or enhancing the value of existing solutions with location data.
In most cases this will involve visualizing and displaying your data -- whether for real-time monitoring or later analysis.
Within ThingSpace, you can take advantage of MapQuest APIs, explore options for taking latitude/longitude coordinates and visualizing it in various ways on maps, integrating with other data such as street addresses, Points of Interest, store locations and others. You can access simple to use MapQuest geospatial APIs through ThingSpace to help you build great experiences, connect your business, and delight customers.