CircuitCheck
CircuitCheck
Photo of a hand-drawn DC circuit in, a solved and checked circuit out.
The problem
Engineering students draw circuits constantly and check their homework by hand. A single wrong resistor formula or sign gives a wrong answer, and there’s no quick way to see where it went wrong.
What it does
- Upload a photo of a hand-drawn DC circuit (resistors, voltage sources, current sources).
- Gemma 4 reads the sketch and writes it down as a netlist: components, values, and what connects to what.
- Deterministic validators check the netlist (ground node, floating nodes, source loops). If a check fails, the specific problem is sent back to Gemma for a repair attempt.
- A NumPy modified nodal analysis solver computes every node voltage, branch current and power. Gemma never does the math.
- A student can type their answer. The app compares it with the solved value and shows the true one.
Where Gemma 4 is used
Gemma 4 (via the Gemini API) is the vision model that turns a hand-drawn schematic into a structured netlist. Without it there is no sketch input. All numbers come from the solver, not from the model.
Results
We tested 10 hand-drawn circuits and Gemma read 7 of them correctly. Failures: [one line on what went wrong].
Limitations
- DC circuits with resistors, voltage sources and current sources only. LEDs, diodes, capacitors and transistors are reported as unsupported.
- Drawings need numeric values. A drawing with only symbols returns “values missing” and asks for numbers instead of guessing.
- Messy drawings can be misread. “Solved: checks passed” means the math is consistent, not that the reading is right, so compare the Visual Schematic with your photo.
Built with
Python, FastAPI, NumPy, Pillow, vanilla JavaScript, Gemma 4 via the Google GenAI SDK. Written with Antigravity as the coding assistant during the Hack Day. MIT licensed. Setup and usage are in the README.
Built with
AI tools
Prize Categories Entered
- Submitted
Best Use of Gemma 4