Back to Projects

Scope of work

Full Stack Development, IoT Integration

Tech Stack

Node.js, WebSocket, OCPP Protocol

Focus Area

Real-time Communication

Role

Lead Developer

Overview

The EVSE (Electric Vehicle Supply Equipment) platform is a comprehensive real-time EV charging solution designed to manage and monitor electric vehicle charging stations. This project showcases expertise in IoT integration, real-time bidirectional communication, and complex protocol implementation for the electric vehicle infrastructure industry.

Problem & Solution

The challenge was to create a scalable platform that could communicate with multiple EV charging stations in real-time, handle complex charging protocols, manage user wallet systems, and provide comprehensive admin dashboards for monitoring and analytics. The solution implements the OCPP (Open Charge Point Protocol) 1.6J standard for device communication.

Core Features

  • OCPP 1.6J Protocol Implementation: Full compliance with OpenCharge Point Protocol for standardized communication between central management system and charging stations
  • WebSocket Real-time Communication: Bi-directional persistent connections for live charger status updates and instant command execution
  • Charger Management: Remote monitoring, configuration, and control of multiple EV charging stations with health status tracking
  • Wallet System: Razorpay integration for user digital wallets, account balance management, and transaction history
  • Multi-role Admin Dashboard: Separate dashboards for operators, administrators, and support staff with role-based permissions
  • User App: Mobile-friendly interface for users to locate chargers, start/stop charging sessions, and manage wallet funds
  • Analytics & Reporting: Real-time dashboards showing charger utilization, energy consumption, revenue metrics, and performance analytics

Technical Implementation

Real-time Communication:

  • Implemented WebSocket servers using Socket.io for maintaining persistent connections with 500+ chargers simultaneously
  • Developed OCPP message handlers for protocol-compliant device communication
  • Built message queuing system for reliable delivery of commands to offline chargers
  • Implemented heartbeat mechanisms and connection health monitoring

Backend Architecture:

  • Node.js server handling concurrent WebSocket connections with Redis for session management
  • MongoDB for storing charger configurations, user accounts, and transaction history
  • Time-series database integration for storing charging metrics and performance data
  • Event-driven architecture with message brokers for system scalability

Third-party Integration:

  • Razorpay payment gateway for secure wallet transactions
  • Google Maps API for charger location discovery
  • Push notification services for user alerts and updates
EVSE Platform - Real-time Charger Monitoring Dashboard
EVSE Platform - Admin Analytics Dashboard
EVSE Platform - Charger Configuration Panel

Challenges & Solutions

Challenge: Managing hundreds of concurrent WebSocket connections with protocol compliance requirements

Solution: Implemented connection pooling, load balancing across multiple server instances, and Redis cluster for session state management.

Challenge: Ensuring reliable message delivery to chargers with intermittent connectivity

Solution: Built persistent message queue with retry logic and acknowledgment tracking for guaranteed delivery.

Resources

View on GitHub

OCPP protocol documentation and Socket.io implementation details available in the GitHub repository.