Inspiration

One of us has seen this firsthand in family and village settings a solar system underperforms, and the honest answer is "we don't know why, we'll wait for someone to look." Only about a quarter of Botswana's rural population has grid access, so solar PV has become key to closing that gap, but when a system fails, the nearest technician is often a day's travel away. We started broader electricity theft detection, distributed solar's grid impact but both were hard to demo, so we narrowed to this more grounded problem: systems failing quietly, with no fast way to know why.

What it does

SolarSense diagnoses solar PV faults in seconds instead of after a day-long technician trip. It compares live readings from two PV strings voltage, current, irradiance, temperature using a Random Forest model trained on engineered cross-string features to classify the fault: normal, short circuit, degradation, open circuit, or shadowing. Gemini then turns that classification into a technician-facing explanation covering what it means, likely causes, and what to inspect first

How we built it

We trained a Random Forest classifier on engineered cross-string features (power, plus differences/ratios between strings) from ambient and electrical PV data, saved with joblib behind one shared prediction function. The original CLI script (google-genai, gemini-3.5-flash-lite) and our new Streamlit app both call the same utils/predict.py and utils/gemini.py modules one source of truth for diagnosis and explanation.

Challenges we ran into

Framing the right user mattered most: homeowners lack multimeters and technical comfort, so we reframed around technicians and rural electrification agents who already carry equipment. We also fixed a hardcoded model path that only worked from one folder, refactored shared logic instead of duplicating it, and wrapped Gemini with a fallback so demos survive unreliable wifi.

What we learned

We built a genuinely useful diagnostic technique comparing two PV strings against each other end-to-end. Both a CLI tool and a web interface share one prediction and explanation pipeline, and the demo stays resilient even if Gemini is unreachable

What's next for Smart Solar power fault detection system for Botswana

Direct sensor integration is the top priority, so readings are captured automatically. Beyond that: more real-world Botswana-based training data, an offline mode for technicians without connectivity, and fleet-level dashboards for electrification programs monitoring many systems at once.

Built With

Share this project:

Updates

Submission history