DIY Wall-E Robot

EE Project | 2025 | Ongoing

RoboticsESP32PCA9685L298NDFPlayer MiniEmbedded C++3D PrintingPCB Design

Rebuilt the electronics and software for a 3D-printed Wall-E robot using an ESP32, servo and motor drivers, audio hardware, power conversion, custom C++ code, and schematic/PCB design.

Controller
ESP32 with custom Arduino/C++ firmware
Motion
PCA9685 servo control and L298N motor drive
Power and Audio
Buck/boost converters and DFPlayer Mini module
DIY Wall-E robot

This build was inspired by the original 3D-printed Wall-E project. I used the mechanical concept as a starting point, then redesigned the electronics around lower-cost parts, my own wiring, and my own control software.

Mechanical Build

I printed the body and alternate remix parts before final assembly. Because the project uses a large amount of filament, printing the alternate parts first helped avoid wasted duplicate prints and made the mechanism easier to adapt.

3D printer producing Wall-E robot parts

Electronics

The electronics include an ESP32-32S module, PCA9685 servo controller, L298N 12 V DC motor driver, XL6019 boost converter, 5 V buck converter, DFPlayer Mini audio module, 4 Ohm 3 W speaker, two 12 V motors, and MG90S metal servos.

Wall-E robot electronics parts

Schematic and PCB Work

I created my own schematic and PCB layout in EasyEDA to document a cleaner version of the robot electronics. The current version is wired by hand, but the PCB layout captures the direction for a more maintainable future revision.

Wall-E robot electronics schematic Wall-E robot PCB layout

Firmware

My code is separate from the original project. It uses the Arduino IDE and ESP32 Bluepad32 support. Before running the full program, I calibrate each servo with test code so the correct travel limits can be entered into the main firmware.

Loading code...

Result

The project demonstrates robotics integration across mechanical printing, power conversion, motor driving, servo control, audio playback, schematic capture, PCB layout, and embedded C++ firmware.