I wanted to build a small robot that could sit on a desk and feel a little more alive than the usual LED or display project. Instead of showing data or numbers, the goal was to give it a simple personality.
The robot is built around an ESP32 and a small OLED display that acts as its face. The eyes are drawn using rounded rectangles and animated with a lightweight physics system so they move naturally instead of jumping abruptly. This makes the robot feel expressive even with very simple graphics.
Two small N20 motors driven by a DRV8833 motor driver allow the robot to roam around randomly. Most of the time it explores its surroundings, but if it is ignored for too long it stops moving and switches to an attention mode, asking for interaction.
A touch sensor on the top acts as a way to pet the robot. When the user touches it, the robot enters a petting mode, the motors stop, and the facial expression changes to show that it is happy. Once the interaction ends, it eventually goes back to roaming again.
The project combines simple robotics, basic behavior logic, and expressive graphics to create a tiny desk companion that reacts to interaction. Even with minimal hardware, a few behavioral rules and smooth animations can make a robot feel surprisingly alive. This is a working protype and I believe can be so much better with smarter code and some extra components like a MEMS mic for voice control.







Comments