josh wu | ← all projects

b.o.b. — brick on board
3-foot 3d-printed lego minifig robot, fully designed in solidworks — hack the north 2026

description

B.O.B. (Brick On Board) is a roughly 3-foot, fully 3D-printed Lego minifigure riding a motorized skateboard base. I designed the entire robot in SolidWorks — the scaled-up minifig shell, the internal servo and electronics mounts, and the skateboard drive base — so that a toy-accurate figure could actually move: arms that raise and wave, a head that turns and nods, and a base that drives and dances. You control it by talking to it; an on-device intent classifier on an ESP32-S3 turns natural-language commands into motion.

mechanical design
  • Full robot modeled in SolidWorks, from the scaled minifig geometry down to every internal mount
  • Minifig proportions kept faithful to the real Lego figure while hiding all actuators and wiring inside the printed shell
  • Shoulder joints driven by MG996R servos mounted inside the torso, sized for the torque of the long printed arms
  • Neck joint driven by an SG90 servo for head turning, nodding, and shaking
  • Skateboard-style base with TT gearmotors, designed to carry the figure stably while driving, turning, and dancing
  • Large parts split into printable sections with integrated fastening and mounting features
  • Rendered in SolidWorks, including a transparent view of the internal layout
software
  • On-device TensorFlow Lite Micro intent classifier on the ESP32-S3, mapping commands to 14 actions (arms, head, drive, dance, stop)
  • Handles synonyms, speech-to-text errors, multi-step sequences, and parameters like “turn left 45 degrees”, and rejects low-confidence predictions
  • Motion planner and command queue turn intents into timed servo and motor actions without blocking
  • Local YOLO vision on a Raspberry Pi answers “what do you see?” out loud, with distance estimates
  • TinyStories-based storytelling, routed separately from motor commands
challenges
  • Scaling a toy-sized figure up to 3 feet while keeping it light enough for the servos and stable on a moving base
  • Packaging servos, controllers, and wiring inside the minifig shell without breaking its silhouette
  • Giving the arms and head enough range of motion for simple gestures to read as expressive
  • Fitting a useful language model onto a microcontroller and turning bare intents into natural motion
tech stack
SolidWorks3D PrintingMG996R / SG90 ServosTT GearmotorsESP32-S3TensorFlow Lite MicroC++PythonRaspberry PiYOLO
links