Stepping on LEGO bricks is a meme for a reason: it really @#$%&! hurts. LEGO brick design is ingenious, but the engineers did not consider the ramifications of their minimalist construction system. We’ve seen people do crazy things for Internet points, such as walk across a bed of LEGO like they’re hot coals — or in Adam Beedle’s case, build a LEGO-firing turret specifically to shoot plastic bricks under a person’s feet.
This project consists of two distinct sub-systems: the mechanical turret that launches the LEGO bricks and the targeting system that recognizes feet. For the former, Beedle devised a clever rubber band-based mechanism that cranks into position with a rack and pinion. An Arduino Uno rotates the pinion with a continuous-rotation servo motor. The pinion gear has a few teeth missing, so it releases the rubber bands and flings the loaded LEGO brick after a few rotations. Another brick then drops down from a hopper and the cycle repeats, resulting in automatic firing.
Beedle 3D-printed all of the turret’s parts and used a second turret motor to provide rotation. The turret also has a webcam mount, which is how the targeting system finds feet. Beedle doesn’t provide much detail on this system, but we assume that he used something like OpenCV running on a PC to detect feet. The PC would then send a command to the Arduino through the serial port telling it to rotate the turret in the proper direction until the detected foot is centered in the video feed. When it gets close, it starts spinning the pinion to shoot LEGO bricks.
From what we can see in the video, it seems that the turret worked as intended. That is to say that Beedle successfully built something that would force him to step on painful LEGO bricks.