9 August, 2019

Hackathon-style telematics development with flespi

What it takes to create niche telematics solutions within a few days.

Last week Gurtam company held a massive TelematiX conference for the international telematics community. One of the new activities this year was a hackathon — a practical and dynamic event for developers. 

This was a pure experiment with no specific results expected but it turned out to be a success. Why? Because in a matter of three days all four participating teams delivered functional MVPs for specific business ideas.

What’s even more exciting is that three out of four projects were based on flespi; the fourth project relied on Wialon API to achieve its objectives.

The teams were made up of two developers of the Gurtam partners and two developers from Gurtam. There were also mentors from Gurtam and business consultants from the Gurtam community. 

Let’s now have a closer look at the delivered projects and at the technologies behind them.

Solutions presented

Pizza Delivery Management

As the name suggests, the solution is supposed to cater to the needs of the pizza delivery market. If the delivery doesn’t happen within the promised time frame, the client gets his order for free. All successful and failed (late) deliveries are recorded on the dashboard and can be used by management for reports, penalties/bonuses, etc.

How it works: once a new order for pizza arrives, a geofence with a radius of 200 meters around the destination is created (using calculators in flespi). Also, the time of the order is put into a special MQTT topic /order/created to be able to calculate time until order fulfillment. 

If the courier delivers the pizza in time, the “successful deliveries” counter on the dashboard (based on MQTT Tiles) gets incremented (the value is stored in the HASD state database). If the max delivery time is exceeded, the client gets the pizza for free and the “failed deliveries” counter gets incremented.

When the courier gets inside the geofence another calculator starts counting the time he stays inside the geofence — this allows controlling the idle time and preventing delays.

pizza delivery management solution flespi


This solution is supposed to prevent unauthorized access to the van with tons of money and can be beneficial for the banking industry. The cash-in-transit vehicle is equipped with a smart lock GPS device that one can open only once the vehicle approaches the discharge destination (e.g. a bank). If someone attempts to open the lock from outside the allowed zone, the security department will get a notification about the event.

How it works: you create a geofence around the place where the money is to be unloaded. Once the cash-in-transit vehicle gets into the geofence, a special script triggers and sends a secret key to the driver. The key can then be used to unlock the lock.

To control the lock state it’s convenient to use commands that one can easily send via flespi API.

geolock solution flespi


This is a universal platform to organize the sharing of cars, bikes, scooters, whatnot. 

These guys put a lot of programming efforts into the creation of the solution. They designed separate interfaces: an admin panel where all events related to trips and bookings are aggregated; the frontend to register, login, book units, etc, and the API.

How it works: A frontend app implemented using Vue is based on Yandex maps to offer the graphical interface for user registration, renting units, and more. All actions on the frontend trigger Python HTTP API. The API uses gmqtt library to communicate with other components. .NET-based admin app gets updates via MQTT, stores info about all trips and associated events (registered, booked, unbooked, etc.) in the database, and offers detailed statistics. The solution uses flespi MQTT broker to instantly send and receive updates. Units creation and management bases on the flespi telematics hub functionality.

Connect Everything

This seemingly simple solution eliminates a lot of headaches and manual labor for the TSPs — it allows to synchronize the units created in Fleetcomplete (or Ecofleet) system with Wialon completely excluding the human error.

How it works: a PHP script reads information about newly created units from Feetcomplete/Ecofleet; a Node.js script then creates the respective unit in Wialon using its API.


  • Partners’ developers got great skills boost working with the latest technologies (MQTT, HASD, flespi, Vue, .NET, PHP, Node.js, etc.) side-by-side with experienced Gurtam peers.

  • Partners realized that developing a basic telematics solution is no rocket science and now better understand what to demand from their dev teams.

  • flespi proved to be an optimal platform to springboard telematics apps development thanks to extensive connectivity options, built-in analytics engine, device management capabilities, support of the latest MQTT standard, and straightforward API.