Introduction
The Smart Parking System with Mobile App is an IoT-based smart city solution designed to monitor parking slot availability in real time and provide this information to users through a mobile application.
This system helps reduce traffic congestion, fuel consumption, and time wasted searching for parking spaces in crowded urban areas.
Objectives of the Project
- To detect availability of parking slots automatically
- To display real-time parking status on a mobile app
- To reduce traffic congestion and parking search time
- To enable efficient parking management
- To support smart city infrastructure
Working Principle
- Ultrasonic or IR sensors are installed in each parking slot
- Each sensor detects whether a vehicle is present or absent
- Sensor data is sent to a microcontroller (ESP32/ESP8266)
- The microcontroller uploads parking status to a cloud server
- A mobile application displays available and occupied slots
- Optional features include slot booking, entry/exit logging, and billing
Components Required
- ESP32 / ESP8266 NodeMCU
- Ultrasonic Sensor (HC-SR04) or IR Sensor
- LED Indicators (Red = Occupied, Green = Free)
- LCD Display (optional)
- Mobile App (MIT App Inventor / Blynk / Firebase)
- Power supply
- Jumper wires
System Architecture
Parking Slot Sensors
↓
ESP32 / ESP8266
↓
Wi-Fi Network
↓
Cloud Database / IoT Platform
↓
Mobile App (Real-time Parking Status)
Circuit Connections (Ultrasonic Sensor + ESP32 Example)
Ultrasonic Sensor
VCC → 5V
GND → GND
Trig → GPIO 5
Echo → GPIO 18
LED Indicators
Green LED → GPIO 12 (Free Slot)
Red LED → GPIO 13 (Occupied Slot)
Mobile App Features
- Real-time parking slot availability
- Color-coded slot status
- Parking location details
- Optional booking system
- Notifications when slot becomes available
Arduino Code (ESP32 – Smart Parking System)
#define TRIG_PIN 5
#define ECHO_PIN 18
#define GREEN_LED 12
#define RED_LED 13
long duration;
int distance;
void setup() {
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(GREEN_LED, OUTPUT);
pinMode(RED_LED, OUTPUT);
Serial.begin(115200);
}
void loop() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
duration = pulseIn(ECHO_PIN, HIGH);
distance = duration * 0.034 / 2;
if(distance < 10) { // Car detected
digitalWrite(RED_LED, HIGH);
digitalWrite(GREEN_LED, LOW);
Serial.println("Slot Occupied");
} else {
digitalWrite(RED_LED, LOW);
digitalWrite(GREEN_LED, HIGH);
Serial.println("Slot Available");
}
delay(1000);
}
Code Explanation
- Ultrasonic sensor detects vehicle presence
- ESP32 processes sensor data
- LEDs show local slot status
- Data can be uploaded to cloud via Wi-Fi
- Mobile app fetches real-time slot status
Advantages
- Saves time and fuel
- Reduces traffic congestion
- Real-time parking availability
- User-friendly mobile interface
- Scalable for large parking areas
Applications
- Shopping malls
- Airports and railway stations
- Corporate offices
- Smart cities
- Residential complexes
Future Enhancements
- Slot reservation and payment system
- Automatic vehicle number plate recognition
- GPS navigation to nearest free slot
- AI-based parking prediction
- Integration with smart traffic systems
Conclusion
The Smart Parking System with Mobile App is a powerful IoT-based smart city project that improves parking efficiency, reduces congestion, and enhances user experience. It demonstrates the practical application of IoT, sensors, and mobile app development in real-world scenarios.
