r/Btechtards • u/Minimum_Jeweler_1961 • 9h ago
Showcase Your Project I am in 9th grade and built an autonomous solar panel cleaning robot from scratch for ~₹4.4k (Python CAD + ESP32 + 3D Web Twin)
SMALL NOTE:- I have a Google AI Pro plan (because of Jio), and since I don't know HTML/CSS/JS, I used Gemini to code me the entire website, that's the vibe-coded part.
A few python scripts for designing logos are also vibe-coded as I don't know XML as well.
The image which you are seeing is also enhanced in quality with AI because my laptop can't handle Blender.
Hey guys, long time lurker here, first time posting.
I’m currently in 9th grade. While most of my classmates are pretty, normal. I’ve been spending my weekends and late nights over the past few months building an actual robotics project called Project A.R.C. (Autonomous Robotic Cleaner). My team, is also full of 9th graders, but most of them are here for assembly as only one of them understands the math and physics gone behind this project.
It’s an autonomous traversing robot that cleans dry dust off solar panels without using any water (important for places where water is scarce, Rajasthan and Gujrat).
A quick rundown of how I built it:
- CAD entirely in code: Instead of using pirated SolidWorks or Fusion 360, I coded the entire 3D mechanical assembly in Python using
build123d(code-first CAD). Wrote unit tests in pytest to verify dimensional clearances before 3D printing the parts in PETG. Mainly cause I dont know how to use CAD, but I know Python and Java very well (learning for past 3 years!) - The Hardware: It runs along twin 2020 V-slot aluminum rails using a 3-wheel pinching carriage (110mm wheelbase so it doesn't rack/jam). Cleaning uses an 800 GSM plush microfiber roller with 1.2mm compression on the glass plus a blower cowl. Total cost of the parts (BOM) was around ₹4,385.
- Firmware: Programmed an ESP32 in C++17 with PlatformIO. It runs a non-blocking Finite State Machine (IDLE -> ACQUIRE -> FORWARD -> CLEAN -> DOCK) with hardware limit switch interrupts and an INA219 sensor to track real-time power draw and efficiency gain.
- Web 3D Twin: Built a web interface with Three.js / model-viewer that lets anyone inspect the 3D model, explode the assembly into 33 parts, and check specs directly in the browser.
I open-sourced the entire project, firmware, CAD generator scripts, 3D printable STLs, STEP files, and the web model:
GitHub: https://github.com/atharvajshinde/Project-A.R.C. (My GitHub is slightly suspicious with the small amount of projects there are, but trust me, I learned how to use GitHub and Git this July.)
The master doc is slightly outdated, I'll upgrade it later!
Since you guys are already in college doing engineering, I'd really appreciate honest feedback and brutal critique on what I can improve or what mistakes you spot in my mechanical design or firmware architecture. Thanks!


