VoltIQ is a real-time AI-powered charging optimization engine for commercial EV fleets in Lagos, Nigeria, built on AWS Serverless (Go) and Amazon Bedrock.
# VoltIQ
VoltIQ is a real-time charging optimization engine for electric vehicle (EV) fleets in Lagos, Nigeria. The platform monitors battery states, route schedules, and GPS coordinates to dynamically shift vehicle charging to off-peak grid hours, saving up to **₦5,184 per charge cycle** per vehicle.
## Key Features
- **Real-Time Telemetry**: Deployed on AWS SQS and Lambda (Go) for handling high-frequency vehicle battery and GPS updates.
- **AI-Driven Charge Optimization**: Integrates with Amazon Bedrock (Nova Lite) to analyze grid pricing and recommend charging schedules.
- **Live Updates**: Uses DynamoDB Streams and API Gateway WebSockets to push state updates instantly to the frontend dashboard.
- **Tariff Engine**: Built-in support for Nigeria's hourly grid tariffs.
---
## Architecture
The system uses a serverless, event-driven architecture on AWS:
```mermaid
graph TD
classDef aws fill:#1F2937,stroke:#FF9900,stroke-width:2px,color:#fff;
classDef client fill:#1F2937,stroke:#00ADD8,stroke-width:2px,color:#fff;
classDef db fill:#1F2937,stroke:#4caf50,stroke-width:2px,color:#fff;
Scheduler[EventBridge Trigger]:::aws -->|Invoke| Simulator[voltiq-simulator Lambda]:::aws
Simulator -->|Publish Telemetry| SQS[Amazon SQS Queue]:::aws
SQS -->|Trigger Batch| Processor[voltiq-processor Lambda]:::aws
Processor -->|Retrieve/Store State| DynamoDB[(Amazon DynamoDB)]:::db
Processor -->|Invoke Optimizer| Bedrock[Amazon Bedrock Nova Lite]:::aws
Processor -->|Archive Log| S3[(Amazon S3 Archive)]:::aws
DynamoDB -->|DynamoDB Stream| Broadcaster[voltiq-broadcaster Lambda]:::aws
Broadcaster -->|Push State| APIGateway[API Gateway WebSocket]:::aws
APIGateway -->|Real-time Updates| ReactUI[React Dashboard Client]:::client
```
- **voltiq-simulator**: Simulates GPS tracks and battery drainage for 5 test vehicles navigating Lagos, writing coordinates and state to SQS.
- **voltiq-processor**: Consumes telemetry, retrieves nearest charging stations, calls Bedrock for optimization sch …