Inspiration
E-waste is one of the fastest-growing waste streams in the world, and college campuses generate a surprising amount of it. Most students don’t know how to properly dispose of electronics or how to distinguish between components like CPUs, RAM, and flash drives. As a result, e-waste often ends up in the trash, causing environmental harm.
While large-scale industrial e-waste sorting systems exist, there are very few solutions designed for students or campus environments. We wanted to build something accessible, educational, and automated.
What it does
Our project is an AI-powered e-waste sorting system with two complementary parts:
- A hardware sorter that automatically classifies and physically sorts e-waste using computer vision and servo motors
- A web application that allows users to scan e-waste, receive safe disposal guidance, and view usage metrics
Together, this demonstrates how e-waste sorting can scale from individual use to a campus-wide kiosk.
How we built it
We trained a custom YOLOv8 computer vision model to recognize common e-waste categories such as CPUs, RAM sticks, and flash drives. The model runs directly on a Raspberry Pi connected to a webcam.
When an item is detected, the Raspberry Pi translates the classification into servo motor angles, physically diverting the item on a conveyor belt into the correct bin.
In parallel, we built a Streamlit web app that allows users to scan images of e-waste, see classification results, receive clear disposal instructions, and track metrics like total items scanned and category breakdowns. Disposal guidance is generated using the Gemini API to provide educational, user-friendly explanations.
Challenges we ran into
The biggest challenge was integrating software with hardware. While the ML model and camera detection worked early on, getting servo motors to move reliably to precise angles based on classifications required careful calibration and debugging. Running computer vision models on edge hardware like a Raspberry Pi also required performance optimization.
Despite these challenges, we successfully demonstrated real-time classification and automated physical sorting.
Accomplishments that we're proud of
- Successfully trained and deployed a custom computer vision model to recognize common e-waste components such as CPUs, RAM sticks, and flash drives.
- Ran real-time ML inference directly on a Raspberry Pi, demonstrating edge computing without relying on cloud services.
- Built an automated physical sorting system that converts ML classifications into precise servo motor movements.
- Developed a polished web application that provides disposal guidance, tracks usage metrics, and educates users about e-waste.
- Designed the system to be modular, allowing the hardware sorter and web app to operate independently or as part of a future integrated kiosk.
- Overcame significant hardware/software integration challenges within a limited hackathon timeframe.
What we learned
We learned how to:
- Train and deploy a computer vision model from scratch
- Run ML inference on edge devices
- Control hardware using Python and servo motors
- Build interactive data dashboards with Streamlit
- Integrate large language models to provide meaningful, user-friendly guidance
Most importantly, we learned how to design modular systems that separate real-time automation from user-facing interfaces.
What's next for E-Wizard
- Fully integrate the hardware sorter with the web application to create a complete self-service e-waste disposal kiosk.
- Expand the ML model to recognize more categories of e-waste, including cables, batteries, and small peripherals.
- Deploy E-Wizard as a pilot on a college campus to study real-world usage and environmental impact.
- Add user accounts and long-term analytics to better understand disposal trends.
- Improve the physical design of the conveyor and bins for durability and scalability.
Built With
- computer-vision
- gemini-api
- label-studio
- numpy
- opencv
- python
- raspberry-pi
- servo-motors
- streamlit
- yolov8-ultralytics
Log in or sign up for Devpost to join the conversation.