Tracking system with API




Scroll gif


Tracking system with API


This has to be one of my favorite and most challenging projects to date. I collaborated with some WITS students to create a tracking system for an app that was going to be integrated into the shuttle services at WITS. In the project, I had to build a real-time tracker, and an API service to get the location data on the front end.

To build the tracker, I used the Raspberry Pi Zero, the Neo 6M GPS module, and some GPIO pins. I wrote a script on the raspberry pi to make use of the GPS module to retrieve location data, format it, and send it to our API. I then connected to the raspberry pi via SSH to be able to toggle on and off the GPS script. Once on, it would broadcast the location data every 700ms, making it ready for our API.

With our tracker broadcasting the location data we need, I had to write an asynchronous API to get the location data. The API would serialize the raw data, parse it to JSON and avail the data at the API endpoints. Another developer was responsible for the front end, which was written with Angular and Ionic. While most of the front end was done by our front-end developer, I had to help with drawing the map and location of the subject on the map using Leaflet, a JS library for building interactive maps.




Tech stack




Tool image Python

Tool image Django

Tool image Firebase

Tool image Angular

Tool image Ionic

Tool image Raspberry Pi

Tool image JavaScript

Tool image Leaflet

Tool image Redis

Tool image TypeScript