A system that stores data on LEGO bricks

How To Use LEGO Bricks For Data Storage

Those old enough to have encountered punch cards in their lifetime are probably glad to be rid of their extremely low data density and the propensity of tall stacks to tip over. But obsolete as they may be, they’re a great tool to show the basics of binary data storage: the bits are easily visible and can even be manipulated with simple tools. As an experiment to re-create those features in a more modern system, [Michael Kohn] made a punch card-like system based on LEGO bricks that stores machine code instructions for a 65C816 CPU, the 16-bit successor to the venerable 6502.

Bits are stored on a white 8×20 stud board, onto which small black pieces are placed. A white background stud encodes a logic “zero”, while a black stud encodes a logic “one”. The bits are read out by an array of reflectance sensors, which conveniently has the same 8 mm pitch as standard LEGO studs. A big wheel driven by a stepper motor slides the data card under the readout circuit along a short stretch of LEGO train tracks.

The optical sensors are read out by an MSP430 series microcontroller, which also drives the motor through a stepper motor driver. Once the data is read out, the bytes are transferred into a WDC W65C265SXB board, which executes them as machine code instructions on its 65C816 CPU. In the video below, you can see a program being loaded that blinks an LED.

We’ve featured educational punch-card systems before, like this Raspberry Pi-based model. If you’ve got a bunch of actual punch cards that need reading out, check out this Arduino-powered readout system.

Continue reading “How To Use LEGO Bricks For Data Storage”

Building Reaction Wheels With Python And LEGO

Reaction wheels are useful things, typically used by satellites to keep themselves oriented the right way up in space. Turning the reaction wheel creates an equal and opposite torque in the spacecraft, allowing it to point and rotate itself accurately. The same technique also works here on Earth, and [Brick Experiment Channel] decided to build one out of LEGO to control an inverted pendulum.

The initial design using a small LEGO wheel on an inverted pendulum was only able to work reliably over a 4-degree angle from the vertical. Upgrading the wheel to a larger, heavier one enabled the wheel to instead work over a 28-degree range instead.

A MPU9250 inertial measurement unit was pressed into service for control of the reaction wheel, fitted to the base of the pendulum and read by a Raspberry Pi. The Pi takes accelerometer and gyroscope readings, and then controls the motor on the pendulum with a PID controller to keep the inverted pendulum upright.

The video goes into a great deal of detail on what it takes to make the pendulum run smoothly. From changes to the control coefficients to measuring the motor’s back EMF, [Brick Experiment Channel] demonstrates everything required to make the pendulum robust to outside perturbances.

The inverted pendulum is a great way to learn about control theory, as we’ve seen time and again.

Continue reading “Building Reaction Wheels With Python And LEGO”

Lego Fourteen-Segment Display Needs Plenty Of Motors

Hackers love 7-segment displays, and will gladly wax lyrical about the silly words you can almost spell on them and so on. Less appreciated are their bigger cousins, the fourteen and sixteen segment displays, which get all alphanumeric about things and are thus much easier for humans to read. You can even build the former out of Lego, as [ord] demonstrates.

A look at the mechanism driving the display.

The “segments” are made up of Lego shafts that are pushed up through a yellow matrix of holes when they are switched “on.” A full seven motors are used to make the single-character display work, each one driving two segments. Two Lego Powered Up controller bricks are required to drive everything going on here, making the final design not just mechanically complicated, but electronically complicated as well.

Amusingly, those don’t come cheap, either; the parts total cost of this build is likely somewhere between $50-100 US. You probably don’t want to build an entire scrolling message board using this design, even if it does look resplendent in black and taxi yellow.

We’ve seen [ord]’s work before, too, in the form of these mechanically magnificent 7-segment Lego displays. Video after the break.

Continue reading “Lego Fourteen-Segment Display Needs Plenty Of Motors”

Building 7-Segment Displays With LEGO

Utter the words “7-segment display” amongst hackers and you’ll typically get people envisaging the usual LED and LCD versions that we all come across in our daily lives. However, mechanical versions do exist, and [ord] has assembled a couple of designs of their very own.

The first uses what appears to be two LEGO motors to drive individual segments of the display. Each segment consists of a pair of yellow axles thrust up through a black grid to represent parts of the number, as well as a minus sign as needed. [ord] demonstrates it by using it to display angle data from a tilt sensor inside a LEGO Powered Up controller brick. Further photos on Flickr show the drive system from underneath.

The second design relies upon a drum-like mechanism that seems to only be capable of displaying numbers sequentially. It works in a manner not dissimilar to that of a player piano. The required movements to display each number are programmed into sequences with Technic pins sticking out of beams in a drum assembly driven by either a hand crank or motor. It’s again demonstrated by [ord] using it to display angular data.

While it’s unlikely we’ll see LEGO displays used as angle of attack meters in light aircraft, you could do so if you wanted a cheap and unreliable device that is likely to fall to pieces if unduly jostled. In any case, it’s not the first time we’ve seen LEGO 7-segment displays, but it’s always great to see a new creative take on an existing concept. We’d love to see such a design implemented into a fancy clock, or perhaps even a news ticker running on a 16-segment version. Video after the break.

Continue reading “Building 7-Segment Displays With LEGO”

LEGO String Winder Hints At Greater Possibilities

Unless you’re an avid fan of 1997’s box office hit Mouse Hunt, or actively working in the string industry, you probably don’t spend a lot of time thinking about how those balls of string are made. [ord] has, however, and built a tidy little winding machine that has us contemplating the possibilities of how useful LEGO machines can really be. 

The design uses a large and imposing-looking ring gear to drive a spinning arm which carries the string onto the bobbin. The bobbin itself is rotated along with the spinning arm as the hand crank that operates the machine is mechanically linked to both. As the arm and bobbin turn, string is deposited onto the bobbin, building up into a pleasing ball of string that looks just like the ones you buy at the store.

We suspect that, unless [ord] is doing some very interesting things that we haven’t seen yet, the string was probably sourced off a reel or ball anyway, and this machine just serves to demonstrate how the process works.

However, it does go to show how LEGO machines can do real work. We’d love to see LEGO put to more practical uses like winding pickups or transformers, or other jobs that are maddeningly tedious when done by hand. Video after the break.

Continue reading “LEGO String Winder Hints At Greater Possibilities”

LEGO-Sorting Vacuum Defeats The Problem

What’s the worst thing about LEGO? Most would agree that it’s the fact that those bright and colorful pieces of ABS are somehow the most evil thing that can come between your bare feet and solid ground. [Unnecessary Inventions] have done a one-eighty from their handle and made a quite useful invention — a LEGO-sorting vacuum cleaner called Suck It.

Well, technically, it’s a shop vac attachment, but it does the job beautifully. [Unnecessary Inventions] started with a never-used machine and a clear plastic cylinder cut into fourths. Then he designed some 3D printable brackets that have two jobs: they hold the cylinder together again, and they do so in stages that collect and sort LEGO by size.

The sorting brackets have no top and bottom layers to them — they are all sorting holes and infill to allow maximum suction. But wait, it gets even better, because the brackets click together satisfyingly with embedded magnets. The only thing that would make this build better is some kind of head attachment that could gather more than a narrow swath at a time. Be sure to check out the build and demo video after the break.

Of course, with this method, you still have to open up the sections and put your LEGO away. You could just vacuum them straight into the box.

Continue reading “LEGO-Sorting Vacuum Defeats The Problem”

Lego Car Demonstrates Proper Use Of Ball Wheels

Wheels are typically just simple cylinders, though fans of I, Robot (2004) may have admired the handsome vehicle featuring ball wheels that was driven by the protagonist. YouTuber [Brick Technology] decided to evaluate the use of spherical wheels with a Lego car design.

The benefit of ball wheels is that they can turn in multiple directions when driven on different axes, with the benefit of improved maneuverability. With a set of drive rollers spring loaded with rubber bands pushing against the 52mm Duplo spheres, the ball wheels can be rotated both forward and back as well as left and right. This gives the Lego car a rather neat strafing ability, as well as the ability to spin on the spot or steer in a more traditional fashion. The car is controlled via smartphone, thanks to BuWizz modules that allow remote control of the Lego motors.

Ball wheels are unlikely to catch on in mainstream automobiles; the mechanical complexity required to drive them makes such designs impractical for cars. However, omniwheels and similar designs have found some applications on forklifts and other such slow-speed applications where the ability to move in any direction is very useful. Video after the break.

Continue reading “Lego Car Demonstrates Proper Use Of Ball Wheels”