Posted by Nick

Read All Posts

It is estimated that there will be over 75 billion connected devices worldwide by 2025. Location has quickly become a critical component for IoT devices and connected solutions as businesses seek to extract as much value from the technology and meet consumer and partner expectations. 
Skyhook provides positioning for millions of these connected devices around the world. Leveraging our deep expertise in this space (as reflected in over 650+ patents) and our proprietary reference database of over 4.5 billion geolocated access points and 200+ million cell towers, Skyhook is able to provide industry-leading accuracy and battery efficiency in providing location services. Skyhook’s Precision Location hybrid positioning system locates devices using Wi-Fi, GNSS and Cell signals, ensuring that devices can be located in all types of environments. Skyhook powers location for a wide range of use cases and IoT devices, including smartphones, wearable devices, asset tracking, POS devices and many more. Regardless of the use case, Skyhook offers several different integration options to provide location to any device, regardless of OS, hardware components and other resource constraints. 

These include:


Location SDK Integration

Skyhook’s SDKs provide one of our most common, off-the-shelf, integration methods. Skyhook has developed SDKs for the most used operating systems including Android, several Linux variations, Windows, MacOS and Raspberry Pi. The Precision Location SDK provides all the tools and documentation needed to perform highly-accurate location on devices. It provides a full location solution on the leading edge of hybrid positioning technology. The location SDK utilizes all of the technological enhancements that Skyhook has developed and are common to native mobile operating systems including location smoothing, fast time-to-fix, MAC address collapsing, on-device hybrid, and power optimizations such as stationary detection and offline location.

Use Cases

Skyhook’s SDKs can be implemented in a number of devices or applications. For instance Druva, a leading provider of data loss prevention and cloud security software, leverages our SDK for enterprise device management. Skyhook’s unique solution enables us to accurately and quickly geo-locate lost or stolen laptops or devices to provide Endpoint backup and data loss prevention”, commented Prem Ananthakrishnan, Vice President, Products at Druva. Through SDK integration with Linux, Windows, Mac OS and custom variants, the SDK is bundled into a software package to act as the single source location provider for Wi-Fi positioning as well as IP positioning fallback. Some additional features include time zone validation, designate closest backup location and enabling and disabling services within certain locations based on corporate policies.
Another interesting use case for SDK integration is point of sale terminals. Through integrations of both Android and Linux libraries, Skyhook provides location to portable registers to track asset distribution globally and effectively automate UI and terminal service features. The SDK enables additional benefits like setting the default language, selecting the correct local payment service/fulfillment partner, and setting the correct time zone. It also provides IP location fallback when no Wi-Fi is available.
Additional location SDK use cases:
  • Connected car
  • Offender tracking
  • Connected appliances
  • Wearable cameras
  • Gaming devices 

Lite Client

Skyhook’s Lite Client is an open-source code base that allows customers to integrate a simple software package on the device in order to scan for available signals.  Once collected by the device, customers with an API key can connect to the Skyhook service in order to receive location determination services. Lite Client is location awareness in a slightly lighter weight package. It's written in C++ and deployed as a dynamic library, with a C API exposed to applications.
Most importantly, the Lite Client provides a pluggable software architecture that can easily be ported to new platforms and/or devices for remote location resolution. 

Use Case

As an example, hospitals leverage Skyhook’s Lite Client to locate and service hospital equipment and devices in order to share resources across departments, maintain the condition and meet federal standards. This previously manual process now saves hospitals both time and money.  This specific implementation leveraged Skyhook’s Lite Client for integration, a Linux variant with SPI layer changes for two different device types. Skyhook also provided a small piece of custom code to detect and validate proximity to specific access points found within the cleaning facilities.
Read documentation on Lite Client here

Embedded Client 

Skyhook’s Embedded Client (EC) is the most compact library for enabling location services. Also open source, it utilizes a binary protocol for lightweight data transmission, as well as AES encryption. Location response routing to a 3rd party server, tool, or visualization platform can be easily configured for both monitoring and storage purposes. This package is intentionally much more raw in terms of interfaces exposed to partners and customers, and intended as a toolkit for embedded engineering teams. EC is best designed for embedded and wearable use cases with devices that have no OS, a proprietary or embedded RTOS - such as MPERs, asset tags, child tracking devices and various applications within the IoT market. 

Use Cases

For example, in addition to Cell and GNSS, offender tracking partners have implemented EC to improve location accuracy and yield when indoors in order to accurately monitor and locate offenders. These tracking devices are used to keep offenders in or out of certain zones during probationary periods and trigger alert messages with a call to action for supervisory personnel. They are also used for curfew monitoring and crime scene correlation. Location accuracy and yield are critical to the performance of these devices. 
In addition, several low power LTE-M and NB-IoT based asset tracking devices are leveraging Skyhook’s Embedded Client for network-based positioning - both cellular and Wi-Fi. Many of these integrations have also optimized channel scanning, based on the geography, and AP selection/reduction to further tune for reduced power consumption. Client-side caching features are used to understand when a device is stationary and limits unnecessary network traffic. In most cases, location results are forwarded in real-time to a server for asset location visualization or monitoring. 
Additional use cases:
  • Asset or Pallet Tracking 
  • Animal tracking
  • Child tracking
  • Fitness trackers and wearables 
  • Mobile Personal Emergency Response (MPERS) devices
  • Luggage trackers
Read documentation on Embedded Client here

RESTful Cloud API

Skyhook’s RESTful Cloud location API is a great location solution for connected devices that communicate to the network through either proprietary or network defined protocols, and leverage server-to-server communication to resolve location based on observed network signals. The interface returns a location and accuracy error estimate based on information about cell towers, GPS locations and Wi-Fi access points that the end device or client can detect, which are packaged into individual location requests. Communication is done over HTTPS.  Both request and response are formatted as XML. 
API Limitations
Certain SDK or Embedded Client features such as smoothing between location sources, fast time-to-fix, MAC address deduplication, power optimization, and off-line location are not available with the API method. In addition, application or device-specific code must be created to enable the collection the Wi-Fi and cell radio scans. Skyhook can provide many recommendations in these areas to optimize the use of our cloud API.

Use Cases

Skyhook’s API can be easily integrated server to server to fit nearly any IoT device or application. One example is cold chain sensors, which monitor temperature and humidity while products are in the supply chain. The API adds the functionality of location, which ensures deliveries meet specifications for health codes while being tracked. Skyhook has cold chain deployments that leverage full hybrid positioning as well as cell-only applications where coarse network-based location meets the need of the chain of custody use case, or for general waypoint tracking. Skyhook can also tweak multi-cell positioning algorithms to account for the network type and neighbor cell visibility available through particular cellular modems. Knowing exactly where shipments are located is a critical aspect of the supply chain and leads to fewer delays which results in less spoiled food or goods. This in return saves businesses a lot of money. 
Read documentation on Skyhook's location API here
Additional use cases:
  • Connected appliances
  • Fleet Monitoring 
  • Smart city 
  • LPWAN Network Integrations 
  • IoT/Commercial Platform Integrations

Android Location Provider

The most commonly used plug and play integration option for non-Google Mobile Services (GMS) or WearOS devices is Skyhook’s full-featured Android Location Provider. 
Skyhook offers a location provider replacement to service requests through standard Android NLP/FLP location interfaces. This allows drop in replacement for both Android Network Location Provider or Fused Location Provider on devices without Google Mobile Services and Google Play Services.  

Use Cases

Our Android Location Provider can be used for any device using Stock Android/AOSP as an operating system. This includes smartphones, hybrid smart/feature phones, payment terminals and wearable devices. Wearables such as child tracking devices or fitness trackers utilize this integration method to enable features such as time-based alerts, on demand location updates, SOS buttons and geofence triggers to alert when the child is detected outside a specific zone.
This integration method is used by major carriers or OEMs to provide location in smartphones or alternative devices such as the Japanese robot phone, RoBoHoN, which is made by Sharp. RoBoHoN uses location to create new experiences for users such as conversational communication based on where it is located. Other common use cases are AOSP based smart or hybrid feature/smartphones commonly used in APAC and other emerging markets, as well as device side integration for Android-based child tracking watches, wearable devices, and asset tags.
Other features include: 
  • Apps call standard Android Location APIs
  • Tiling (Geospatial caching of access point information)
  • Stationary detection to reduce power consumption
  • Cache matching to minimize network scanning
Additional use cases:
  • Child tracking
  • Animal tracking 
  • Fitness tracking


Skyhook offers a myriad of integration options for IoT solutions and devices to keep up with the ever growing market and demand. Skyhook prides itself on our flexibility to meet individual use cases or requirements based on a device’s specifications or limitations. If you have a device that can benefit from location services, get in touch to see what Skyhook can do for you or get started now.  
To learn more about the integration options, download the full integration guide below:
Download the full integration guide

Topics: Internet of Things Iot location