ESP32 development board
The controller. Receives the material prediction and runs the sorting logic. Wi-Fi can connect it to the browser-based CLIP model.
MICROCONTROLLERA student prototype that captures one photo and uses a CLIP vision model in the browser to sort paper, plastic, metal, or other items. The animation demonstrates the proposed sorting decision; it does not control a physical bin.
The controller. Receives the material prediction and runs the sorting logic. Wi-Fi can connect it to the browser-based CLIP model.
MICROCONTROLLERRotates a flap or chute so an item can be directed into the selected bin.
ACTUATORCaptures the waste item so the image model can identify its material.
INPUTConnects the board, servo, LED, and buzzer while testing the circuit.
PROTOTYPINGShows whether the sorter is ready or needs attention. The resistor limits current through the LED.
STATUS OUTPUTPlays an alert sound when the system needs attention or cannot identify an item.
AUDIO OUTPUT// Capture ONE still photo. const photo = captureOneFrame(video); // Score all 20 descriptions in ONE CLIP pass (5 prompt groups × 4 categories). const allDescriptions = promptSets.flat(); const combinedScores = await clipClassifier(photo, allDescriptions); // Re-normalize each group of four scores so it matches a separate four-category check. const fiveChecks = normalizeScoresWithinEachPromptGroup(combinedScores, promptSets); // Average the five equivalent checks; the highest average category wins. const averages = averageScoresAcrossChecks(fiveChecks, 5); const best = highestScoringCategory(averages); sort(best.material);