{"id":20785691,"url":"https://github.com/aadityapanda/itss","last_synced_at":"2026-05-16T17:02:56.771Z","repository":{"id":248891408,"uuid":"830094379","full_name":"AadityaPanda/ITSS","owner":"AadityaPanda","description":"Manual tolls = traffic jams!  This IoT system uses RFID tags \u0026 online verification for faster payments, reducing congestion \u0026 frustration. ","archived":false,"fork":false,"pushed_at":"2024-10-28T12:39:45.000Z","size":60,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-11T23:33:38.890Z","etag":null,"topics":["arduino-uno","esp32","google-sheets","iot","toll-system"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AadityaPanda.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-17T15:19:33.000Z","updated_at":"2024-11-01T09:26:56.000Z","dependencies_parsed_at":"2024-07-17T19:15:50.780Z","dependency_job_id":"5880f5b3-073c-46f1-8bf9-49a100a2eef8","html_url":"https://github.com/AadityaPanda/ITSS","commit_stats":null,"previous_names":["aadityapanda/itss"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AadityaPanda/ITSS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AadityaPanda%2FITSS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AadityaPanda%2FITSS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AadityaPanda%2FITSS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AadityaPanda%2FITSS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AadityaPanda","download_url":"https://codeload.github.com/AadityaPanda/ITSS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AadityaPanda%2FITSS/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261343812,"owners_count":23144738,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arduino-uno","esp32","google-sheets","iot","toll-system"],"created_at":"2024-11-17T14:46:54.054Z","updated_at":"2025-11-07T21:03:10.125Z","avatar_url":"https://github.com/AadityaPanda.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚗 IoT Toll System Supervisor\n\n[![IEEE Paper](https://img.shields.io/badge/IEEE-Published-blue.svg)](https://ieeexplore.ieee.org/document/10993585)\n[![License](https://img.shields.io/badge/License-MIT-green.svg)](#)\n[![Arduino](https://img.shields.io/badge/Arduino-Uno-00979D.svg)](https://www.arduino.cc/)\n[![ESP32](https://img.shields.io/badge/ESP32-IoT-red.svg)](https://www.espressif.com/en/products/socs/esp32)\n\n\u003e **Transformative IoT and Blockchain-based Automated Toll Collection System**\n\nThis project implements an **ESP32** and **Arduino Uno** powered automated toll collection system that combines IoT sensors with blockchain technology for secure, transparent, and reliable vehicle authentication and payment processing.\n\n---\n\n## 📋 Table of Contents\n\n- [🎯 Overview](#-overview)\n- [📄 Research Publication](#-research-publication)\n- [✨ Key Features](#-key-features)\n- [🛠️ Components Required](#️-components-required)\n- [⚡ Hardware Setup](#-hardware-setup)\n- [🔄 System Workflow](#-system-workflow)\n- [🚀 Installation Guide](#-installation-guide)\n- [💻 Code Architecture](#-code-architecture)\n- [📸 Project Gallery](#-project-gallery)\n- [🔮 Future Roadmap](#-future-roadmap)\n- [🤝 Contributing](#-contributing)\n\n---\n\n## 🎯 Overview\n\nThe **IoT Toll System Supervisor** revolutionizes traditional toll collection by implementing a fully automated, IoT-enabled system that:\n\n- **Eliminates manual intervention** through RFID-based vehicle authentication\n- **Ensures secure transactions** using blockchain technology principles\n- **Provides real-time monitoring** via Google Sheets integration\n- **Enhances user experience** with instant gate operation and transparent billing\n\n### 🏗️ System Architecture\n\n```mermaid\ngraph TD\n    A[Vehicle Approaches] --\u003e B[RFID Scanner]\n    B --\u003e C[Arduino Uno Processing]\n    C --\u003e D{Valid RFID?}\n    D --\u003e|Yes| E[Gate Opens]\n    D --\u003e|No| F[Access Denied]\n    E --\u003e G[ESP32 Data Processing]\n    G --\u003e H[Google Sheets Logging]\n    H --\u003e I[Transaction Complete]\n```\n\n---\n\n## 📄 Research Publication\n\nThis project is backed by peer-reviewed research published in **IEEE Xplore**:\n\n### 📖 **\"IoT and Blockchain-based Automated Toll Collection System\"**\n\n\u003e **Abstract:** This paper proposes a transformative solution for automated toll collection systems by integrating Internet of Things (IoT) and blockchain technology. The model aims to address challenges such as security breaches, lack of transparency, and unreliable transactions in current toll systems. Leveraging real-time data from IoT and the decentralised nature of blockchain, the proposed approach enhances security, ensures transparency, and improves overall reliability.\n\n**📍 Publication Details:**\n- **Conference:** 2024 International Conference on Communication, Computing and Energy Efficient Technologies (I3CEET)\n- **Conference Dates:** September 20-21, 2024\n- **IEEE Xplore Date:** May 13, 2025\n- **Electronic ISBN:** 979-8-3315-4158-3\n- **Print ISBN:** 979-8-3315-4159-0\n- **🔗 [Read Full Paper](https://ieeexplore.ieee.org/document/10993585)**\n\n---\n\n## ✨ Key Features\n\n| Feature | Description | Technology |\n|---------|-------------|------------|\n| 🔐 **Secure Authentication** | RFID-based vehicle identification | MFRC522 Module |\n| 🚪 **Automated Gate Control** | Servo motor-operated barrier system | Servo Motor + Arduino |\n| 📊 **Real-time Data Logging** | Cloud-based transaction recording | ESP32 + Google Sheets API |\n| 🔊 **Audio Feedback** | Customizable alerts for system status | Buzzer Module |\n| 📱 **Mobile Integration** | Real-time monitoring capabilities | WiFi + HTTP |\n| 🛡️ **Security Validation** | Authorized-only access control | Database Validation |\n\n---\n\n## 🛠️ Components Required\n\n### 🖥️ **Microcontrollers**\n- **ESP32 Development Board** - IoT connectivity and data processing\n- **Arduino Uno R3** - Main control unit for sensors and actuators\n\n### 📡 **Sensors \u0026 Modules**\n- **MFRC522 RFID Module** - Vehicle identification\n- **16x2 LCD Display with I2C** - Status display\n- **SG90 Servo Motor** - Gate mechanism\n- **Active Buzzer Module** - Audio alerts\n\n### 🔌 **Connectivity \u0026 Power**\n- Jumper wires (Male-to-Male, Male-to-Female)\n- Breadboard or PCB\n- 5V Power Supply\n- USB cables for programming\n\n---\n\n## ⚡ Hardware Setup\n\n### 🔗 **Connection Diagram**\n\n```\nESP32 ←→ Arduino Uno (Serial Communication)\n   ↓\nArduino Uno Connections:\n├── RFID (MFRC522)\n│   ├── SDA → Pin 10\n│   ├── SCK → Pin 13\n│   ├── MOSI → Pin 11\n│   ├── MISO → Pin 12\n│   └── RST → Pin 9\n├── Servo Motor → Pin 6\n├── Buzzer → Pin 7\n└── LCD (I2C)\n    ├── SDA → A4\n    └── SCL → A5\n```\n\n### 📋 **Pin Configuration Table**\n\n| Component | Arduino Pin | ESP32 Pin | Notes |\n|-----------|-------------|-----------|-------|\n| RFID SDA | 10 | - | SPI Slave Select |\n| RFID SCK | 13 | - | SPI Clock |\n| RFID MOSI | 11 | - | SPI Master Out |\n| RFID MISO | 12 | - | SPI Master In |\n| RFID RST | 9 | - | Reset Pin |\n| Servo PWM | 6 | - | PWM Control |\n| Buzzer | 7 | - | Digital Output |\n| LCD SDA | A4 | - | I2C Data |\n| LCD SCL | A5 | - | I2C Clock |\n| Serial RX | 0 | TX (GPIO1) | Communication |\n| Serial TX | 1 | RX (GPIO3) | Communication |\n\n![Circuit Diagram](https://github.com/user-attachments/assets/3eb5dfe1-39d4-4e7b-bc8f-289559f5a825)\n\n---\n\n## 🔄 System Workflow\n\n### 🚦 **Operation Flow**\n\n```mermaid\nflowchart TD\n    Start([System Ready]) --\u003e Scan[RFID Card Detected]\n    Scan --\u003e Check{Valid Card?}\n    Check --\u003e|✅ Yes| Display[Show Vehicle ID on LCD]\n    Check --\u003e|❌ No| Deny[Access Denied + Buzzer]\n    Display --\u003e Gate[Open Gate + Success Tone]\n    Gate --\u003e Send[Send Data to ESP32]\n    Send --\u003e Log[Log to Google Sheets]\n    Log --\u003e Wait[Wait 3 seconds]\n    Wait --\u003e Close[Close Gate]\n    Close --\u003e Start\n    Deny --\u003e Start\n```\n\n### 📝 **Step-by-Step Process**\n\n1. **🔍 Detection Phase**\n   - Vehicle approaches toll booth\n   - RFID scanner activates and reads card\n\n2. **🔐 Authentication Phase**\n   - Arduino validates RFID against database\n   - System determines access permission\n\n3. **⚡ Action Phase**\n   - Valid: Gate opens, LCD shows vehicle info\n   - Invalid: Access denied, error buzzer sounds\n\n4. **📊 Logging Phase**\n   - ESP32 receives transaction data\n   - Information logged to Google Sheets with timestamp\n\n5. **🔄 Reset Phase**\n   - Gate closes after delay\n   - System returns to ready state\n\n![Flowchart](https://github.com/user-attachments/assets/175c2886-e0e8-4a3f-afea-2d738290a0d8)\n\n---\n\n## 🚀 Installation Guide\n\n### 📋 **Prerequisites**\n\n- **Arduino IDE** (Version 1.8.13 or higher)\n- **ESP32 Board Package** installed in Arduino IDE\n- **Google Account** for Sheets integration\n- **WiFi Network** for ESP32 connectivity\n\n### 📚 **Required Libraries**\n\n#### **Arduino Uno Libraries:**\n```bash\n# Install via Arduino Library Manager\n- Wire.h (Built-in)\n- LiquidCrystal_I2C.h\n- Servo.h (Built-in)\n- MFRC522.h\n- SPI.h (Built-in)\n- SoftwareSerial.h (Built-in)\n```\n\n#### **ESP32 Libraries:**\n```bash\n# Install via Arduino Library Manager\n- WiFi.h (Built-in)\n- HTTPClient.h (Built-in)\n- TimeLib.h\n```\n\n### 🔧 **Step-by-Step Setup**\n\n#### **1. Hardware Assembly**\n```bash\n1. Connect components according to wiring diagram\n2. Double-check all connections\n3. Ensure stable power supply to both boards\n```\n\n#### **2. Code Upload**\n```bash\n# Upload Arduino Uno Code\n1. Select Board: \"Arduino Uno\"\n2. Select correct COM Port\n3. Upload the Arduino sketch\n\n# Upload ESP32 Code  \n1. Select Board: \"ESP32 Dev Module\"\n2. Select correct COM Port\n3. Upload the ESP32 sketch\n```\n\n#### **3. Google Sheets Configuration**\n\n1. **Create Google Sheet:**\n   ```\n   - Create new Google Sheet\n   - Set up columns: Date, Time, Vehicle_UID, Status\n   ```\n\n2. **Deploy Apps Script:**\n   ```javascript\n   // Create Google Apps Script web app\n   // Set permissions to \"Anyone can access\"\n   // Copy web app URL for ESP32 code\n   ```\n\n3. **Update ESP32 Code:**\n   ```cpp\n   // Replace with your Google Apps Script URL\n   const char* serverName = \"YOUR_GOOGLE_SCRIPT_URL_HERE\";\n   \n   // Replace with your WiFi credentials\n   const char* ssid = \"YOUR_WIFI_SSID\";\n   const char* password = \"YOUR_WIFI_PASSWORD\";\n   ```\n\n#### **4. System Testing**\n\n```bash\n✅ Power on both Arduino and ESP32\n✅ Check serial monitor for connection status\n✅ Test with authorized RFID tag\n✅ Verify gate operation and LCD display\n✅ Confirm data logging in Google Sheets\n```\n\n---\n\n## 💻 Code Architecture\n\n### 🔧 **Arduino Uno - Main Controller**\n\n**Core Responsibilities:**\n- 🔍 RFID card scanning and validation\n- 🚪 Servo motor gate control\n- 📺 LCD status display management\n- 🔊 Buzzer alert system\n- 📡 Serial communication with ESP32\n\n**Key Functions:**\n```cpp\nvoid setup()           // Initialize components\nvoid loop()            // Main program loop  \nvoid checkRFID()       // Scan and validate RFID\nvoid operateGate()     // Control gate servo\nvoid displayStatus()   // Update LCD display\nvoid sendToESP32()     // Transmit data via serial\n```\n\n### 🌐 **ESP32 - IoT Gateway**\n\n**Core Responsibilities:**\n- 📶 WiFi connectivity management\n- 📊 Data processing and validation\n- ☁️ Google Sheets API integration\n- ⏰ Timestamp generation\n- 🔄 HTTP request handling\n\n**Key Functions:**\n```cpp\nvoid setup()           // Initialize WiFi and components\nvoid loop()            // Listen for Arduino data\nvoid connectWiFi()     // Establish WiFi connection\nvoid logToSheets()     // Send data to Google Sheets\nvoid validateUID()     // Check UID format\n```\n\n---\n\n## 📸 Project Gallery\n\n### 🛠️ **Hardware Setup**\n![Hardware Setup](https://github.com/user-attachments/assets/7b945ba4-c151-4bfd-968c-ad3c9c1216a3)\n\n*Complete system assembly showing Arduino Uno, ESP32, RFID module, servo gate, and LCD display*\n\n### 📱 **Mobile Integration**\n![Mobile App](https://github.com/user-attachments/assets/e2d3197d-90f5-4a4d-a544-b3b0ea7d78de)\n\n*Real-time monitoring interface showing transaction logs and system status*\n\n### 🎥 **System Demonstration**\n[![Demo Video](https://img.shields.io/badge/▶️-Watch%20Demo-red.svg)](https://github.com/user-attachments/assets/a4f83c5d-da9a-4461-9b8c-217969dc770b)\n\n*Live demonstration of complete toll collection process from RFID scan to data logging*\n\n---\n\n## 🔮 Future Roadmap\n\n### 🚀 **Phase 1: Enhanced Security**\n- [ ] **Blockchain Integration** - Implement decentralized transaction validation\n- [ ] **Encryption Protocol** - Add AES encryption for data transmission\n- [ ] **Multi-factor Authentication** - Combine RFID with biometric verification\n\n### 💳 **Phase 2: Payment Integration**\n- [ ] **Digital Wallets** - Support for UPI, PayPal, cryptocurrency\n- [ ] **Dynamic Pricing** - Peak hour and congestion-based toll calculation\n- [ ] **Subscription Models** - Monthly/yearly toll passes\n\n### 📊 **Phase 3: Analytics \u0026 AI**\n- [ ] **Traffic Analytics** - Real-time traffic flow analysis\n- [ ] **Predictive Maintenance** - AI-powered system health monitoring\n- [ ] **Revenue Optimization** - Machine learning for toll pricing\n\n### 🌐 **Phase 4: Smart Infrastructure**\n- [ ] **5G Connectivity** - Ultra-low latency communication\n- [ ] **Edge Computing** - Local processing for faster response\n- [ ] **Smart City Integration** - Connect with city-wide traffic management\n\n---\n\n## 🤝 Contributing\n\nWe welcome contributions to improve the IoT Toll System! Here's how you can help:\n\n### 🛠️ **Development Setup**\n```bash\n1. Fork the repository\n2. Clone your fork locally\n3. Create a feature branch\n4. Make your changes\n5. Test thoroughly\n6. Submit a pull request\n```\n\n### 📝 **Contribution Guidelines**\n- Follow Arduino coding standards\n- Include comments for complex logic\n- Test all hardware connections\n- Update documentation for new features\n- Ensure backward compatibility\n\n### 🐛 **Bug Reports**\n- Use GitHub Issues for bug reports\n- Include system specifications\n- Provide detailed error descriptions\n- Add photos/videos if helpful\n\n---\n\n## 📞 **Support \u0026 Contact**\n\n- **📧 Email:** aadityapanda23@gmail.com\n- **🐙 GitHub Issues:** [[https://github.com/AadityaPanda/ITSS/issues]](https://github.com/AadityaPanda/ITSS/issues)\n- **📄 IEEE Paper:** [https://ieeexplore.ieee.org/document/10993585](https://ieeexplore.ieee.org/document/10993585)\n\n---\n\n## 📄 **License**\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---\n\n**⭐ If this project helped you, please give it a star on GitHub!**\n\n*Built with ❤️ for the future of smart transportation*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faadityapanda%2Fitss","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faadityapanda%2Fitss","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faadityapanda%2Fitss/lists"}