top of page

Wall-E and Eve

I worked with a partner to build a controller (Eve) and a remotely controlled robot (Wall-E) using two ESP32s. The two microcontrollers communicate using a secure MQTT communication link over the HIVE network. Eve's ESP32 serves as the MQTT publisher, and Wall-E's ESP32 serves as the subscriber, executing commands relayed from Eve.

 

Wall-E's physical components include 2 DC motors turning its wheels, a servo motor mounted at its neck to allow it to spin, and an HC-SR04 ultrasonic distance sensor as its eyes. 

 

Single/double pressing a button on Eve's ESP32 commands Wall-E to do the following:

  • D35 single press: moves forward (video 1)/ forward backward sweep (video 2)

  • D35 double press: moves backward (video 1)/ spins in a circle (video 2)

  • D34 single press: neck rotates 120° and back

  • D34 double press: ultrasonic distance sensor is activated for 10 seconds, ESP32 buzzer beeps in the sound of Wall-E if an object is detected within a 27 cm range

​​

My partner and I ran two versions of the subscriber code to advance a couple of Wall-E's tasks as seen in video 2. As Wall-E's task changes, a NeoPixel LED on Eve changes color to indicate Wall-E's status. 

The controller/publisher (Eve) code can be accessed here.​​​

Both versions of the robot/subscriber (Wall-E) code can be accessed here.

Main Micropython Skills Used:
  1. MQTT server connection and subscribing/publishing to a topic

  2. JSON command parsing (ex: motors_opposite, servo_rotate)

  3. GPIO control

  4. Ultrasonic sensor timing + pin configuration

​​I used SolidWorks to design Eve's body accurately to the movie and in a way that an ESP32 could be mounted between Eve's head and body. I had to include extra support material when 3D printing Eve's bottom half, as the supports weren't sufficient to hold up Eve's arms in my first trial.​​​ My teammate Matthew took the lead on building Wall-E out of laser-printed parts while I worked on the code for both ESP32s and the CAD for Eve. 

07a5c5fc-39b1-4450-9aa9-013403c9ecf9.webp
Eve CAD:
Screenshot 2025-10-31 at 12.51.06 PM.png
Screenshot 2025-10-31 at 12.52.32 PM.png
bottom of page