⚡ Energram: Powering Africa's Future, One Hub at a Time
🎯 Inspiration
"Light is my lifeline. And it's never there when I need it."
Those words came from a single mother selling frozen foods in Ibadan, Nigeria. She'd lost thousands of naira — chickens, fish, ice blocks — all wasted because the power grid failed her again. Her story isn't unique. It's the daily reality for over 90 million Nigerians living without reliable electricity.
We didn't just hear her story. We lived it.
As students, we've failed exams because our laptops died mid-study. We've watched classmates huddle under the scorching sun at bank ATMs, desperately charging phones for tomorrow's classes. We've seen small businesses collapse not from lack of demand, but from lack of power.
The grid system forgot two of Africa's most vital communities: students and small business owners.
When Michael Faraday introduced electricity's foundational principles, he lit up possibilities. Two centuries later, in the heart of Africa, millions still wait for their turn. We decided to stop waiting.
Energram is our answer to Africa's energy crisis — built by students, for students, and for every entrepreneur who refuses to let darkness win.
💡 What It Does
Energram is a smart, solar-powered energy and connectivity hub designed for communities abandoned by unreliable national grids. It's not just a power solution — it's a complete digital infrastructure system.
Core Features
🔋 Sustainable Power Infrastructure
- 88Ah, 1000W capacity solar battery system with AC output
- Powers laptops, phones, mini-fridges, and essential appliances
- Smart charge/discharge management with real-time optimization
- 3S40P lithium-ion configuration (11.1V nominal) for reliability
🌐 Embedded Connectivity
- Built-in Wi-Fi hotspot for internet access in off-grid zones
- Bridges the digital divide in underserved communities
- Enables remote work, online learning, and digital commerce
📊 Intelligent Monitoring System
- Real-time battery percentage with Li-ion curve optimization
- Live power draw and usage rate tracking
- Voltage, current, and power consumption analytics
- Predictive battery life calculations
🔐 Secure Access Control
- PIN-locked authentication system (perfect for hostels, co-working spaces)
- EEPROM-based security with persistent state across power cycles
- Failed attempt tracking with intelligent lockout mechanism
- Hardware relay for physical load disconnection
📱 Mobile App Integration
- Remote monitoring and control via smartphone
- Push notifications for critical battery levels
- Usage analytics and consumption patterns
- User management for shared environments
🛠️ How We Built It
We're three students who pooled ₦400,000 (~$250 USD) from our own pockets to build Energram. No grants. No labs. No fancy equipment. Just determination and engineering ingenuity.
Hardware Stack
Power System
- Solar Panel Array: 300W monocrystalline panels
- Battery Pack: Custom 3S40P lithium-ion configuration (11.1V, 88Ah)
- Charge Controller: MPPT solar charge controller for optimal efficiency
- Inverter: Pure sine wave AC inverter (1000W continuous)
- BMS: Multi-layer battery management system with overvoltage/undervoltage protection
Control & Monitoring
- Microcontroller: ESP32 WROOM (19-pin variant)
- Current Sensor: Adafruit INA219 for precision power monitoring
- Display: SSH1106 128x64 OLED for real-time metrics
- Input: 4x3 matrix keypad with debouncing
- Relay Module: 5V single-channel for load switching
- Custom PCB: Locally fabricated (couldn't wait for China imports)
Software Architecture
Embedded Firmware (C++/Arduino)
Core Features:
├── PIN Authentication System
│ ├── 4-digit secure PIN entry
│ ├── EEPROM state persistence
│ ├── Real-time lockout tracking
│ └── Auto-reset after timeout
│
├── Power Monitoring Engine
│ ├── INA219 sensor integration
│ ├── Voltage smoothing (exponential filter)
│ ├── Current flow detection
│ └── Charge/discharge state machine
│
├── Battery Management
│ ├── Non-linear Li-ion percentage mapping
│ ├── Predictive discharge calculations
│ ├── Charging animation system
│ └── Safety thresholds (9.0V - 12.6V)
│
└── OLED Display System
├── Custom coordinate-based rendering
├── Dynamic battery icon with animations
├── Multi-screen state management
└── Real-time data visualization
Mobile App (Flutter/Dart)
- Real-time data synchronization
- User authentication and profile management
- Push notification system
- Analytics dashboard with charts
- Remote control interface
Backend Infrastructure
- Custom REST API (post-Firebase deprecation)
- Time-based polling with local buffer syncing
- Data aggregation and analytics pipeline
- Scalable architecture for 1000+ unit deployment
Manufacturing Process
Since we couldn't afford overseas imports or industrial 3D printing:
- PCB Fabrication: Locally designed and etched in Ibadan
- Enclosure: Hand-crafted metal casings from local fabricators
- Assembly: Manual soldering and integration (all 19 ESP32 pins)
- Testing: Real-world validation with actual users
⚔️ Challenges We Ran Into
Building Energram was like climbing a technical mountain blindfolded. Here's what nearly broke us — and how we conquered it.
1. Sensor Instability Nightmare 🧪
The Problem: Our INA219 current sensors gave wildly fluctuating readings under dynamic loads. One second: 2.3A. Next second: 0.1A. Same load.
Root Cause: Ripple noise from the switching power supply + poor PCB trace isolation corrupting I²C signals.
Our Solution:
- Redesigned PCB layout with proper ground plane isolation
- Added hardware shielding around high-current traces
- Implemented exponential smoothing filter in software (
VOLTAGE_SMOOTHING = 0.2) - Created custom calibration profiles for different load types
Cost: 2 burned BMS modules, countless hours of oscilloscope debugging
2. OLED Coordinate Hell 🧮
The Problem: Displaying metrics on a 128x64 pixel OLED with no UI framework meant calculating coordinates for every single element by hand.
The Reality:
// Every. Single. Pixel. Matters.
int titleX = (128 - (15 * 6)) / 2; // Center "Enter your PIN:"
oled.setCursorXY(titleX, 15);
oled.print("Enter your PIN:");
Our Solution:
- Built custom centering functions for text alignment
- Created reusable drawing primitives for icons
- Designed a state machine for screen transitions
- Hand-crafted battery icon with 4-frame charging animation
Cost: 1 burned OLED, 72 hours of pixel-perfect trial-and-error
3. Battery Percentage Black Magic 🔋
The Problem: Lithium batteries don't report their percentage. Unlike phones with fuel gauges, we only had voltage — which doesn't correlate linearly to remaining capacity.
The Complexity:
- Discharge curves vary by load current
- Temperature affects voltage readings
- 88Ah capacity means small voltage changes = huge capacity differences
- Same voltage reading means different percentages when charging vs discharging
Our Solution:
// Non-linear mapping for Li-ion characteristics
if (voltage < 10.5V) // Critical range: high sensitivity
percentage = map(voltage, 9.0, 10.5, 0, 20);
else if (voltage < 11.7V) // Linear range
percentage = map(voltage, 10.5, 11.7, 20, 80);
else // Full range: low sensitivity
percentage = map(voltage, 11.7, 12.6, 80, 100);
Validated against weeks of real-world discharge tests with various loads.
4. Firebase Betrayal & Real-Time Sync Crisis 📱
The Problem: Mid-development, Firebase deprecated ESP32 support. Our entire real-time synchronization broke overnight.
The Panic: We had a demo in 2 weeks. App couldn't talk to hardware. No time to pivot.
Our Solution:
- Built custom REST API with timed polling
- Implemented local data buffering on ESP32
- Created manual push notification system
- Optimized request intervals to balance responsiveness vs battery life
Cost: 1 ESP32 fried during frantic debugging sessions, 96 hours without sleep
5. EEPROM Security Engineering 🔒
The Problem: Creating a PIN lock system that survives power cycles, prevents brute force, and works with only 512 bytes of EEPROM.
The Challenge:
- Track failed attempts across reboots
- Implement real-time lockout that survives power loss
- Handle millis() overflow (32-bit rollover after 49 days)
- Prevent users from bypassing via repeated resets
Our Solution:
Memory Map:
├── Address 0-3: Failed attempts counter
├── Address 4-7: Lockout start (millis)
├── Address 8-11: Lockout active flag
├── Address 12-19: Real timestamp reference
└── Address 20-27: Boot timestamp
Logic:
1. On boot, load security state from EEPROM
2. Calculate elapsed lockout time using both millis() and real timestamps
3. If lockout expired, reset counters
4. Save state after every authentication attempt
Took 2 weeks to get right. Worth every second.
6. The Hardware Graveyard 💀
Final Casualty Count:
- 2 BMS modules (overcurrent during testing)
- 1 OLED display (wrong voltage during prototyping)
- 1 ESP32 board (shorted during Firebase crisis debugging)
- 3 relay modules (mechanical failure under repeated switching)
- Countless jumper wires (melted, burned, or mysteriously disappeared)
Lesson Learned: Always buy spares. Then buy more spares.
🧠 What We Learned
This project taught us that innovation isn't born in comfort — it's forged in constraints.
Technical Growth
- Low-level embedded systems: Direct register manipulation, interrupt handling, memory optimization
- Power electronics: Solar MPPT theory, battery chemistry, voltage regulation
- Real-time systems: State machines, debouncing, timing-critical operations
- Full-stack IoT: Embedded firmware ↔ API ↔ Mobile app integration
- Hardware debugging: Oscilloscope analysis, signal integrity, thermal management
Engineering Philosophy
- Constraints breed creativity: No 3D printer? Hand-craft enclosures. No Firebase? Build our own.
- Fail fast, learn faster: Every burned component taught us something valuable
- User-first design: Technology serves people, not the other way around
- Resilience over perfection: A working solution beats a perfect plan
🎯 What's Next for Energram
We're not stopping. This is just version 1.0.
Immediate Roadmap (Q1-Q2 2025)
Hardware V2.0
- [ ] Integrated LCD ad display (7-inch touchscreen)
- [ ] USB-C PD fast charging ports (45W+)
- [ ] Wireless charging pads (Qi-compatible)
- [ ] Modular battery expansion system
- [ ] Ruggedized waterproof enclosure
Software Enhancements
- [ ] AI-powered usage prediction and optimization
- [ ] Dynamic pricing based on peak/off-peak hours
- [ ] Multi-user account management
- [ ] Social features (share power with friends)
- [ ] Carbon offset tracking and gamification
Business Scaling
- [ ] Deploy 1,000 units at University of Ibadan
- [ ] Expand to 5 additional universities by Q3
- [ ] Launch SME partnership program
- [ ] Establish manufacturing facility in Lagos
- [ ] Secure Series A funding ($500K-$1M)
Long-Term Vision (2025-2027)
Technology
- Grid Integration: Sell excess solar power back to national grid
- Blockchain: Decentralized energy trading between Energram nodes
- 5G Connectivity: Embedded cellular hotspots for remote areas
- Smart Home Hub: Control appliances, security systems, IoT devices
Impact Goals
- 1 Million Students with reliable power access
- 50,000 SMEs saved from power-related losses
- 100 GWh Clean Energy generated annually
- $50M Revenue while maintaining affordability
Technical Achievements That We're Proud of
- ✅ Built functional IoT hardware from $250 budget
- ✅ Designed and fabricated custom PCB locally
- ✅ Engineered persistent security system with EEPROM
- ✅ Created real-time monitoring with <500ms latency
- ✅ Implemented non-linear battery algorithm (±5% accuracy)
- ✅ Survived Firebase deprecation and shipped on time
But we're most proud of this:
We built something that matters. Not for grades. Not for grants. Because 90 million people are still waiting for the lights to turn on.
🌍 Why Energram Matters
This isn't just a tech project. It's a social infrastructure movement.
The Problem Is Systemic
- 90M Nigerians without reliable electricity
- $26B annual losses to power outages (Nigerian businesses)
- 50% student productivity decline rate correlated with lack of home power
- 60% SME failure rate within first 2 years (energy costs cited as top reason)
The Solution Must Be Too
Energram isn't a power bank. It's a power shift.
We're not selling devices. We're building:
- Infrastructure that works when the grid doesn't
- Connectivity that bridges the digital divide
- Opportunity for students to study and succeed
- Sustainability for businesses to survive and thrive
The Impact Is Measurable
For every Energram deployed:
- 12 students gain reliable study power
- 1 SME avoids inventory loss
- 50 kg CO₂ offset annually (vs diesel generators)
- $2,000 saved in grid backup costs over 3 years
Multiply that by 1,000 units. Then 10,000. Then 1,000,000.
That's not incremental change. That's transformation.
🚀 Built With
Hardware
- ESP32 WROOM (Microcontroller)
- Adafruit INA219 (Current/Power Sensor)
- SSH1106 OLED Display (128x64)
- 4x3 Matrix Keypad
- Custom PCB (Locally Fabricated)
- 3S40P Li-ion Battery Pack (88Ah)
- MPPT Solar Charge Controller
- Pure Sine Wave Inverter (1000W)
- 5V Relay Module
Embedded Software
- C++/Arduino Framework
- ESP32 Arduino Core
- GyverOLED Library
- Keypad Library
- Wire (I²C Communication)
- EEPROM (Persistent Storage)
Mobile & Backend
- Flutter/Dart (Mobile App)
- Node.js (Backend API)
- Express.js (REST Framework)
- MongoDB (Database)
- Firebase Cloud Messaging (Notifications)
Tools & Platforms
- PlatformIO
- Fusion 360 (PCB Design)
- Postman (API Testing)
- GitHub (Version Control)
- Figma (UI/UX Design)
💪 The Team Behind Energram
We're three students who refused to accept that darkness was inevitable.
We're engineers. We're entrepreneurs. We're Africans building for Africa.
And we're just getting started.
"It's not just about the code. It's not just about the hardware. It's about the journey — and the millions of lives we'll light up along the way."
Join us. Let's power Africa's future together. ⚡

Log in or sign up for Devpost to join the conversation.