Introduction: IOT Based Smart Parking

About: Junior @ IIITH

By Tanmay Pathak and Utkarsh Mishra. Students @ International Institute of Information Technology, Hyderabad (IIITH)


We successfully implemented an IOT based smart parking system. With the help of individual nodes (proximity sensors) at every parking slot, we can reflect live parking slot status – ‘Available’ or ‘Occupied’ - on the internet.


1) Parking counters don’t exactly specify where slots are available

2) Light Indicators don’t fully resolve the problem

3) Absence of autonomous billing


1) Access information about each parking slots via the internet

2) Live availability information will help find parking spots faster

3) Autonomous billing will further ease the process

Step 1: Animated Demonstration

Step 2: Hardware Requirements

We plan to start with a small-scale implementation of the project i.e. simulate a real-life parking lot on a cardboard.


1) Raspberry Pi (Main control unit)

2) IR Sensor (Proximity Sensors)

3) RF id Reader

4) RF id Cards

CAUTION : Make sure that the operational frequency of the RF id Reader is the same as the ID cards !!

Step 3: Software Implementation

The project has two different python programs running simultaneously -

1. RF-ID Tagging Module
This program takes care of authentication of the RF-ID cards. Controls the micro servo motor (acts as a gate) and logs in/out time. This is the program that sends out mails based on the total time the user spends in the Parking lot. The customer will have to interact with this program and hence ease of use along with clarity of information was given importance.

2. Proximity Sensors Module
This program reflects the current status of the sensors – ‘high’ or ‘low’. These sensors reflect the slot availability – ‘Available’ or ‘Occupied’. The Output is then dumped onto a text file, which is updated every second using the same python script. Furthermore, a HTML file reads the data from the text file and displays it onto the webpage. We then host the website using a hosting service called ‘ngrok’. Hence the server contains information about the availability status of the respective parking slots.

Step 4: Flow Chart

Step 5: Code and Software Implemetaion


1) Start by loading and running RaspbianOs on the RaspberryPi.

2) All Files other than '' help in interfacing (between sensors, Readers, Motors and the Microcontroller) and hence the code need not be changed.

3) Alter '' appropriately by following comments.

Step 6: Project Video

Step 7: Additional Resources