
Table of Contents
- Abstract
- Prototype Repository
- SDG Alignment
- Why an Arduino Recycling Sorter Matters
- System Overview
- Bill of Materials
- Engineering Specifications
- System Architecture
- Wiring the Arduino Recycling Sorter
- Firmware Design Goals
- Advanced Arduino Code
- Engineering Notes
- Validation and Testing
- Suggested Performance Metrics
- Applications
- Supporting SDG 12: Responsible Consumption and Production
- Reproducibility
- Conclusion
Abstract
This project presents a prototype Arduino recycling sorter built around a microcontroller, object-detection sensor, material-sensing logic, and a servo-actuated diversion gate. The system detects incoming items, applies simple classification logic, and routes objects into separate bins based on sensor input.
From an engineering perspective, the build demonstrates a compact automation system with sensing, control, and actuation layers. From a sustainability perspective, it illustrates how low-cost embedded systems can reduce waste contamination and support more efficient material recovery.
Prototype Repository
This project is published as an open prototype so that engineers, researchers, students, and advanced makers can reproduce and extend the design. All firmware, documentation, wiring notes, and example sorting data are available in the project repository.
GitHub Repository:
Arduino Recycling Sorter – Source Files and Documentation
The repository contains the complete prototype build materials:
- Arduino control firmware (.ino)
- bill of materials
- setup guide
- calibration notes
- deployment notes
- example sorting events
Engineers can clone the repository, fork the design, or download the complete project using GitHub’s Download ZIP feature.
All materials are released under the MIT License to support reuse in research, education, and prototype engineering work.
Repository Structure
arduino-recycling-sorter/
README.md
LICENSE
BOM.csv
firmware/
recycling_sorter.ino
docs/
setup_guide.md
calibration.md
deployment_notes.md
data/
example_sorting_events.csv
hardware/
SDG Alignment
This project connects most directly to SDG 12: Responsible Consumption and Production, which emphasizes reducing waste, improving resource efficiency, and supporting more circular material systems.
It also relates to:
- SDG 9: Industry, Innovation and Infrastructure — through embedded automation and low-cost sensing systems
- SDG 11: Sustainable Cities and Communities — through improved waste handling and cleaner urban systems
Recycling systems become more effective when materials are sorted accurately before processing. Sensor-based automation helps reduce contamination and improves the likelihood that recyclable materials can be recovered and reused.
Why an Arduino Recycling Sorter Matters
Waste systems are often discussed at the scale of municipal policy, infrastructure, and consumer behavior. But sorting accuracy is also an engineering problem. If materials are not identified and separated correctly, recycling streams become less efficient and more contamination ends up in landfill.
A prototype sorter like this demonstrates several important ideas:
- embedded sensors can support material handling decisions
- automation can reduce manual sorting burden in small systems
- low-cost mechatronic systems can model the logic of industrial sorting
- resource recovery depends on both classification and physical routing
The platform is not an industrial recycling machine. Its value is that it translates the logic of waste sorting into a small, testable embedded system.
System Overview
The recycling sorter uses a combination of sensors to identify material characteristics and control sorting gates.
The system includes:
- infrared or proximity sensing for object detection
- inductive sensing for basic metal detection
- servo-based actuation for sorting gates or diverters
- an Arduino microcontroller managing classification logic
When an object passes the sensors, the Arduino determines a basic routing category and activates the appropriate servo position to redirect the item into the intended bin.
Bill of Materials
- Arduino Uno or compatible microcontroller
- infrared proximity sensor or object-detection sensor
- inductive metal detection sensor
- servo motor
- sorting gate, chute, or diverter mechanism
- breadboard
- jumper wires
- power supply
- sorting bins or containers
Optional additions include extra sensors, additional servo channels, or more complex chute geometries for multi-bin classification.
Engineering Specifications
| Parameter | Specification |
|---|---|
| Microcontroller | Arduino Uno (ATmega328P) or equivalent |
| Object detection | Infrared or proximity-based sensing |
| Material detection | Inductive sensor for basic metal classification |
| Actuation | Servo-driven sorting gate or diverter |
| Control model | Threshold-based object routing logic |
| Power requirement | Stable 5V supply recommended for logic and servo operation |
| Sorting categories | Metal vs non-metal in the baseline design |
| Deployment scope | Educational, prototype, and experimental sorting system |
System Architecture
The recycling sorter operates through a simple classification pipeline.
First, an object-detection sensor identifies the presence of an item moving through the sorting path. The Arduino then checks whether the inductive sensor detects metal.
If metal is detected, the system directs the object to the metal bin. If metal is not detected, the object is routed to a second category, such as plastic or general non-metal recyclables, depending on system configuration.
The Arduino then activates a servo motor controlling a sorting gate or diverter.
This logic mirrors the fundamental principle used in larger recycling facilities:
identify material properties, then automate separation
At a systems level, the architecture can be summarized as:
Object Input → Sensor Layer → Arduino → Sorting Logic → Servo / Diverter Action

Wiring the Arduino Recycling Sorter
The sensors and servo motor connect directly to the Arduino.
- Infrared sensor VCC → Arduino 5V
- Infrared sensor GND → Arduino GND
- Infrared sensor OUT → Arduino pin 2
- Metal sensor OUT → Arduino pin 3
- Servo motor signal → Arduino pin 9
- Servo power → 5V supply
The servo motor controls a gate that redirects materials into the appropriate bins. Use a stable external 5V supply for the servo when possible, since servo movement can introduce current spikes that affect microcontroller stability.
Firmware Design Goals
The firmware in this project is designed to do more than trigger a servo on a single sensor event. It attempts to incorporate basic automation design practices such as:
- object presence detection
- material-dependent branching logic
- clear actuator positions for sorting states
- serial output for debugging and observation
- reset behavior after each sorting event
These choices make the sorter easier to test, easier to calibrate, and easier to extend later into more advanced classification systems.
Advanced Arduino Code
The firmware below improves on the simplest possible sorter by making the control flow more explicit and ensuring the sorting gate resets after each routing event.
#include <Servo.h>
const int irSensor = 2;
const int metalSensor = 3;
Servo sortingServo;
void setup() {
pinMode(irSensor, INPUT);
pinMode(metalSensor, INPUT);
sortingServo.attach(9);
Serial.begin(9600);
}
void loop() {
int objectDetected = digitalRead(irSensor);
if(objectDetected == HIGH){
int metalDetected = digitalRead(metalSensor);
if(metalDetected == HIGH){
Serial.println("Metal detected");
sortingServo.write(120);
} else {
Serial.println("Plastic or paper detected");
sortingServo.write(45);
}
delay(2000);
sortingServo.write(90);
}
}
Engineering Notes
A few technical considerations are important in this build:
- Sensor placement: object-detection reliability depends strongly on the position and angle of the sensor relative to the item path.
- Metal detection limits: an inductive sensor provides only basic metal discrimination and does not perform full material recognition.
- Servo repeatability: gate position must be mechanically consistent for accurate routing.
- Throughput constraints: the sorter works best with low item throughput and predictable object geometry.
- Physical system dependence: chute design and gate alignment matter as much as the control logic.
Because of these constraints, the prototype should be understood as a basic material sorting system, not a full industrial recycling intelligence platform.
Validation and Testing
To bring this project closer to engineering-grade documentation, validation should include:
- verify that the object-detection sensor triggers reliably when items enter the sorting path
- confirm that the metal sensor correctly distinguishes intended test items
- verify that servo routing positions consistently direct objects into the correct bins
- test repeated sorting cycles to observe mechanical consistency
- evaluate whether objects of different sizes, shapes, or speeds cause misroutes
- check system stability under repeated servo actuation
If the sorter misclassifies objects, the cause may be mechanical or sensing-related rather than purely algorithmic. Sensor thresholds, chute geometry, object spacing, and servo alignment all affect performance.
Suggested Performance Metrics
For a more rigorous evaluation, the sorter can be assessed using several simple metrics:
- detection reliability: whether objects are consistently detected when entering the sorting path
- classification accuracy: whether metal and non-metal items are routed correctly
- sorting success rate: whether items physically reach the intended bin
- false classification rate: how often objects are misidentified
- actuator repeatability: whether the sorting gate returns to correct positions over repeated cycles
Even informal tracking of these metrics makes the prototype more useful as an engineering system.
Applications
Automated sorting systems have a wide range of applications.
- educational demonstrations of recycling technology
- prototyping circular economy systems
- testing sensor classification methods
- teaching embedded systems engineering
- experimenting with automated waste management
Small prototypes like this allow engineers to explore waste-classification techniques before scaling to industrial systems.
Supporting SDG 12: Responsible Consumption and Production
Responsible consumption requires more than reducing waste. It also requires building systems that recover materials efficiently. Recycling systems must be able to identify, separate, and process materials without excessive contamination.
Automation technologies play an important role in improving these processes. Sensor-based classification systems reduce sorting errors and improve recycling efficiency.
Embedded systems like this Arduino recycling sorter demonstrate how accessible technologies can contribute to more sustainable waste infrastructure.
Reproducibility
All firmware, documentation, and supporting build materials necessary to reproduce the prototype are included in the project repository. The design intentionally relies on widely available educational and hobbyist hardware so that it can be rebuilt in classrooms, labs, and independent engineering environments.
The sorter is intended as a reference implementation rather than an industrial recycling machine. Engineers adapting it for more demanding use should validate sensor behavior, actuator endurance, chute geometry, throughput limits, and sorting consistency under real operating conditions.
Conclusion
Building a smart recycling sorter with Arduino illustrates how embedded systems can support better waste management. By combining sensors, classification logic, and automated sorting gates, the system demonstrates the core principles used in modern recycling infrastructure.
Although this prototype is small, it reflects an important sustainability insight: technology can make resource systems more intelligent. When materials are sorted accurately, recycling systems become more efficient and circular economies become more achievable.
