The document describes an Arduino-based 3D printer that uses a closed-loop system to check printing steps and correct any errors. It summarizes the existing open-loop 3D printing process that can result in unfinished prints if steps are missed. The proposed system employs a stepper motor controller connected to a stepper motor to check the number of steps during printing and return to the correct position if a step is missed before continuing. The 3D printer uses fused filament fabrication with polylastic acid filament to build objects layer by layer in an additive manufacturing process controlled by an Arduino Mega board.