Week 5 - Oct 02 - 08


This week I have planned to design and build module #1 which would the biggest and the main module in my trafficpredictor project. In this blog, I have covered up the machine learning concept/ algorithm to be used. Along with this, I am going to unveil the case to be used for mounting the Nucleo - L476RG kit in the vehicle.


I am still exploring ways to utilize the kit's storage capacity, once done will share the same in my future blogs.

Module 1 - Traffic prediction with machine learning on an added advantage of mass storage capability of the STM32 Nucleo-64 development board

So far everything to kickstart my trafficpredictor project has been completed.


Code Editor & Software IDE required


Yet to come

App (Android / Web)

Code Snippets



Machine Learning  New


     Machine learning (ML) has been the talk of the town along with Artificial intelligence (AI). ML is an interesting area because we can teach the computer how to identify objects/ face through computer vision (CV) / predict data. The reason I have opted for machine learning to predict traffic is its ability to process a huge amount of data and convert them into a single output.

     There are two main types of machine learning - Classification and Clustering. I have chosen to classify data into either best route with less traffic or route with traffic, this would fall under type classification. This is one way because of my prior experience with classification type machine learning in MATLAB and also it better suits the project purpose.

Data refers to GPS data - latitude & longitude from API plus time at which data was recorded.

Output refers to resultant of machine learning process - probably a route which is predicted to have less traffic.

GUI for machine learning

     I have a GUI developed in MATLAB already for machine learning smells which can be seen below. The graph plotted to the left (Classification) separates the fragrance of one perfume from other (separated by a line).  The graph to the right (Clustering) clusters the smell values around the 'X' marked and thus separates them.

Machine Learning GUI MATLAB

     Link to share your thoughts in Discussions related to the above project "Odor Detector", if interested - Is it possible to transmit and receive smell?


{tabbedtable} Tab LabelTab Content
Building a case for the kit  Updated

Check out the next tab for"How to connect Nucleo-L476RG board to USB Charger Power Bank


The case has been built to hold/mount the Nucleo-L476RG kit onto the vehicle therefore while on travel we can record the GPS location data in future modules to identify real-time traffic The case includes two provisions one to hold the MCU board with expansion boards and the other to hold the battery pack power bank Though the case is not an enclosure type it is hard enough to protect the case hold the kit and battery in position even in tough terrains and allows easier access I have added below photos video of the kit inside the case and mounted onto my bike


For those who are not able to afford 3D - Printers like me, I would suggest Metal Mechanix - 5. It has been much help in bringing my designs into life at a much faster rate.


{gallery} Case for the kit

case 1

Image 1: Case mounted in bike's handlebar

Case 2

Image 2: The Case

Case 3

Image 3: Case and the bike

Travel with the newly built case - Video


Please do not attempt to record audio / video while driving the vehicle alone or without any safety harness and auto recording equipments.

How to connect Nucleo-L476RG board to USB Charger Power Bank

Mobility would be the key criteria when it comes to moving the prototype to real-traffic to gather data for machine learning. So I have decided to use my 20,000mAh power bank with 5.1V 2A output as the external power source.


Steps to connect Nucleo-L476RG board to USB Charger Power Bank

  1. Connect the Nucleo-L476RG and the USB Charger Power bank using the USB type A to mini-B cable
  2. Make sure JP5's pin 1 and 2 are connected using a jumper (U5V).
  3. Turn ON JP1(using a jumper) to enable power supply from the USB Charger/ Power Bank.

Nucleo-L476RG board connected to power bank


Reference for this article: Nucleo-L476RG Datasheet


Please find below links to my previous blogs on my traffic predictor project for IoT on Wheels design Challenge,

Blog 1 - The Official Announcement

Blog 2 - Quest for the code editor

Blog 3 - The Plan

Blog 4 - Finally, the kit arrives