3 February, 2022

Building an advanced GPS app — precise tracking based on GPS and Wi-Fi signal

How to effectively develop an app to monitor people, pets, assets, and vehicles.

The need

The company is selling GPS trackers and wants an app that will streamline the customer journey and address the customer's needs in a more complete and integrated way. The solution should take the user by the hand and guide them through such steps as tracking device activation, subscription plans selection and management, operating the friendly map-based interface, easily scaling to monitor several “things” (people, assets, vehicles).

The Cogniteq team undertook the task to develop such a complex and multifunctional app. The main challenge was to make the mobile application convenient for all the above-listed scenarios and at the same time make it targeted at each specific use.

The solution

Well, the app has recently been released to the public. As planned, Cogniteq built an advanced IoT application that empowers users to immediately see the position of their valuable property, belongings, and loved ones. The location of trackers attached to each object to be monitored is determined via Wi-Fi and GPS. 

App architecture

One of the peculiarities of this app was the great number of integrations required to make it tick. 

Obviously, the key functionality of this app is accurate positioning regardless of the quality (or presence) of the GPS signal. Well, there’s no secret about where to get the GPS position from — it is accurately provided by the GPS trackers connected to the assets to be monitored. As for the Wi-Fi-based location, the Google API was employed for this purpose — it allows resolving the Wi-Fi access point location (accounting for signal strength and other factors) into the approximate coordinates of the tracker.

Another important invited player is flespi — a telematics & IoT backend platform used to facilitate the representation of physical trackers on a map.

advanced gps app scheme

Why flespi?

When Cogniteq developers started working on this solution, they realized that it would take quite some time to create such an app from scratch without relying on ready-made components. Why reinvent the wheel when you can hire the required expertise to save time and development efforts?

One of the “hired” platforms was flespi — a telematics backend. The decision to use this platform was based on several factors:

  1. It greatly reduces development time and facilitates hardware integration and communication tasks for software engineers.

  2. The platform API is easily integrated with other software modules. 

  3. Flespi provides developers with a rich toolset that allows building the most advanced and challenging features without any issues.

  4. The platform unites multiple functions under the hood: it can aggregate data received from devices of different types, unify data formats, securely store big volumes of data and visualize them.

As a consequence of the above four factors, the Cogniteq developers have never regretted employing flespi for their project as it has taken so much load from their shoulders.

Place of flespi in the project

One of the core tasks of the app is to collect data from different clients’ trackers. Implementation of data collection and storage requires the integration of a backend platform. The main criterion here is the reliability of the platform since it serves as a basement for a number of key processes and directly affects the app operation. That’s why the importance of flespi for this product can’t be underestimated. Flespi is known for its exceptional high-availability figures which last year reached the five-nines.  It accumulates and securely stores all the crucial information from the devices connected to the platform. When a GPS module in a tracker gets data from satellites, it further transmits this data to flespi. The flespi platform also provides the users of the mobile app with such information as the beginning of each tracker’s session, its duration, trip distance, and the trackers’ location coordinates.

The result 

This case is a great example of how developing an app resembles building a house — when you find the right suppliers and contractors, the process goes smoothly, swiftly, and efficiently.