Robogotchi - Interactive Tamagotchi Robot
A compact ESP32 pet robot combines motion, touch, RFID feeding, camera input, OLED emotion, and browser-based interaction logic.
- Institution
- University of California, Berkeley
- Team
- Maxime Hache, Loris Emanuelli, Xochitl Ortega

- CAD
- Prototyping
- Test & Validation
- Control
- Robotics
- Embedded Systems

Overview
The robot consolidates Wi-Fi, camera processing, motor control, OLED eyes, RFID, touch sensing, buzzer feedback, and GUI hosting on one ESP32-S3.
The design emphasizes integrated behavior rather than a single subsystem: perception, motion, expression, and survival-state logic run together.
Challenge
The ESP32-S3 camera board reserves many GPIO pins, so pin assignment and peripheral coexistence were central constraints.
The system needed soft real-time camera-to-motor behavior while still updating emotion, GUI state, RFID, touch, and survival variables.
Process
A FreeRTOS task structure separated high-priority vision control from lower-priority survival, OLED, touch, and RFID behavior.
The browser GUI was embedded in firmware and served from the robot at its own Wi-Fi access point.
Engineering Details
ESP32-S3, ESP-IDF, FreeRTOS, ESP HTTP server, LEDC PWM, camera driver, RC522 RFID, TB6612-style motor driver, SSD1306 OLEDs, TTP223 touch sensor, buzzer, and 3D-printed chassis components.
Implementation
The robot uses a differential-drive base with a 3D-printed body, sliding rear access, two OLED eyes, a camera, RFID reader, touch input, and a custom protoboard layout.
The vision loop segments a green target and maps it to left, center, or right steering zones.
Testing
Subsystem tests covered camera detection, manual motor direction, auto-follow behavior, OLED expressions, RFID and touch events, death and revive logic, and integrated survival behavior.
The report notes an observed camera-control loop of about 90-100 ms after optimizing the target background and processing path.
Outcomes
A state machine would make the next version easier to reason about than distributed priority checks.
Late-stage pin and wiring decisions were a major integration risk, reinforcing the value of hardware abstraction and testable peripheral interfaces.
Improve RFID range, add battery monitoring, formalize the state machine, create a compact PCB, and test vision and survival logic with saved frames and simulated events.



