Hack: Big Data in the City
Hacktime: 120 mins
Cost of materials: $168 – $200
If you are a company in an African city, say Uber, Easy Taxi, DHL, Jumia, Konga or ACE, and you relied on logistics to run your business efficiently, it makes sense to track the travel route and fuel use of your fleet of cars. It makes even smarter business sense to capture that data, aggregate it and use it intelligently to improve your business operations.
We developed the “Big Data in The City” hack to help companies make data-driven decisions to optimise operational efficiency. Analytics from our GPS and GPRS real time trackers were used to record travel routes in and around the city, the number of stops made to a delivery station, the flow of traffic at certain times of the day and even the speed at which we traveled.
The GPS data was automatically sent to a remote http server and then displayed on a map, using the Google Maps API, which allowed anyone with access to view our transport route from a web enabled device (smart phone, tablet or PC).
The Big Data in The City Hack
Tech talk: We use GPS and GPRS for rapid processing of real-time information to optimise the delivery of goods. As the data route is automatically plotted on a Google API, the server intelligently recalculates the travel route based on the current traffic situation. The application also aggregates the data according to a set frequency (hourly, daily, weekly), the data is sent to a user’s database and patterns are established to determine the most cost effective routes of delivery and to inform other business decisions.
Simple talk: Use a real-time tracker to track anyone, anywhere.
▪ STM32F4-Discovery Development Board (houses an ARM Cortex M4 microprocessor)
▪ GSM Click (with antenna)
▪ GPS Click (with antenna)
▪ SIM Card with Data bundle
▪ Power source (This hack was powered from the PC USB port)
▪ A PC for developing the firmware
▪ USB cable (Type A to Mini B)
▪ An HTTP Endpoint (a temporary endpoint can be obtained from requestbin)
▪ MikroC for arm compiler (download from here and install on your PC)
1. Connect all the kits together
2. Plug the STM32F4-Discovery board into the discovery shield
3. Plug the GSM and GPS clicks into slots 1 and 3 on the discovery shield
4. Connect USB cable between your PC and the shield. This powers up the unit.
5. Time to write some code! (For simplicity DAA have prepared a ready firmware to load onto the processor).
6. Download the firmware from our github page and open the .mcpar project file. This should load up the project environment. If not already open, open the .c file for modifications.
7. You will need to change the APN settings to that of your service provider e.g. Safaricom, MTN (the example application uses O2 PAYG APN settings).
8. You will also need to change the http endpoint.
9. To obtain a temporary endpoint, go to requestb.in, click on “Create a RequestBin”
10. When all changes have been made, build the project.
11. Upload the built program unto your processor. MikroC has a help section if needed.
Now that the processor is programmed, the device will acquire GPS coordinates every 60 seconds and the data will be sent to the end point via GPRS.
To verify that the GPS coordinate has been successfully transmitted, copy the RequestBin URL into your browser and you should see the GPS data in NMEA format.
End of hack.
Watch out for Part 2 of this hack which provides details on displaying the GPS data on Google Maps.