There are 10 Kinds of Computers in the World

There’s an old joke that there are 10 kinds of people in the world. Those who know binary, those who don’t, and those who didn’t see a base three joke coming. Perhaps [Dmitry Sokolov] heard that joke because he’s built a ternary (base 3) computer. He claims it is the first one to be built in the last 50 years. You can see a video about the device below. There’s also a video of the device with a nixie tube output.

You may not think of it often, but bit is a contraction of binary digit, so a ternary computer doesn’t have those. It has trits. The CPU operates on 3 trit words and uses nothing but multiplexers as building blocks. Instructions use 5 trits, some of which are a two-trit opcode and a 3 trit address of one of the 13 registers. The allure of using ternary, by the way, is that you can represent more numbers in fewer bits — um, trits, rather.

Continue reading “There are 10 Kinds of Computers in the World”

Why Only Use One Controller When You Can Use ALL Of Them?

After booting up his RetroPie system, [jfrmilner] had the distinct feeling that something was off. Realizing that the modern Xbox 360 controller didn’t fit right when reliving the games of his youth, he rounded up all his old controllers to make sure he always had the right gamepad for the game.

Wanting to keep the controllers unmodified — so they could still be used on the original systems — he had to do a bit of reverse-engineering and source some controller sockets before building his controller hub. Using shift-in registers, shift-out registers, and some multiplexers, he designed a large circuit selector — which acts as a shield for an Arduino Micro — so all the controllers remain connected. A potentiometer allows him to select the desired controller and a few arcade buttons which access RetroPie shortcuts really round out the hub. Check out the demo after the break!

Continue reading “Why Only Use One Controller When You Can Use ALL Of Them?”

A Few of Our Favorite Chips: 4051 Analog Mux

Raindrops on roses, and whiskers on kittens? They’re alright, I suppose. But when it comes down to it, I’d probably rather have a bunch of 4051, 4052, and 4053 analog multiplexers on the component shelf. Why? Because the ability to switch analog signals around, routing them at will, under control of a microcontroller is tremendously powerful.

Whether you want to read a capacitive-sensing keyboard or just switch among audio signals, nothing beats a mux! Read on and see if you agree.

Continue reading “A Few of Our Favorite Chips: 4051 Analog Mux”

Neopixels Light the Way in Pressure-Sensitive Floor

It’s got a little “Saturday Night Fever” vibe to it, but this pressure-sensitive LED floor was made for gaming, not for dancing.

Either way, [creed_bratton_]’s build looks pretty good. The floor is a 5×6 grid of thick HDPE cutting boards raised up on a 2×4 lumber frame. Each cell has a Neopixel ring and a single force-sensitive resistor to detect pressure on the pad. Two 16-channel multiplexers were needed to consolidate the inputs for the Arduino that’s running the show, and a whole bunch of wall warts power everything. The video below shows a little of the build and a look under the tiles. It’s not clear exactly what game this floor is for, but you can easily imagine a maze or some other puzzle that needs to be solved with footsteps.

Light-up floors are nothing new here, what with this swimming pool dance floor. But this interactive dance floor comes close to the gaming aspect of [creed_bratton_]’s build.

Continue reading “Neopixels Light the Way in Pressure-Sensitive Floor”

Pneumatic Multiplexer

This is a pretty cool project [Sebastian Morales] is working on – a 3D printed Pneumatic Multiplexer. Large interactive installations, kinetic art and many other applications require large numbers of actuators to be controlled. For these type of projects to work, a large number of actuators equals higher resolution and that allows the viewer to be captivated by the piece.

The larger the system becomes, the more complex it becomes to control all of those actuators. [Sebestian] wanted to move a large number of components with a relatively low number of inputs. He thought of creating a mechanical equivalent of the familiar electronic X-Y matrix that can control large quantities of outputs using only a few inputs – in a more descriptive form, Outputs=(Inputs/2)^2.

airlogic_01He looked at chemical reactions that change liquids in to gases, but that seemed pretty complicated. Refrigerants used in air conditioning looked promising, but their handling and safety aspects looked challenging.

Eventually, he decided to look at using “air logic“. Air logic uses pneumatic devices to create relays, limit switches, AND gates, NAND gates, OR gates, amplifiers, equivalent to electrical circuits. Electrical energy is replaced with compressed air. His plan was to build a multiplexer whose elements would open only if the combination of pressure between both lines was the right one. As in electronics, NAND logic is easy to implement. A moving element creates a seal and only allows air out if the bottom line was low and the top line was high.

He had access to a high resolution, resin based 3D printer which allowed him to create fully air-tight systems. He started with prototyping a small 4×4 matrix to test out his design, and had to work through 6 to 7 iterations before he could get it to work. The next step was to create a larger matrix of 100 elements controlled by 20 inputs (10×10 matrix). He created Omnifarious – a kinetic sculpture demonstrating the concept of shapeshifting objects. The Omnifarious is a hexecontahedron which would be able to transform its surface to render different geometries via 59 balloons on its surface. Below, you can check the videos of his progress building the various prototypes and another video showing the Omnifarious sculpture.

Continue reading “Pneumatic Multiplexer”

Arduino Tetris on a Multiplexed LED Matrix

[Alex] needed a project for his microcomputer circuits class. He wanted something that would challenge him on both the electronics side of things, as well as the programming side. He ended up designing an 8 by 16 grid of LED’s that was turned into a game of Tetris.

He arranged all 128 LED’s into the grid on a piece of perfboard. All of the anodes were bent over and connected together into rows of 8 LED’s. The cathodes were bent perpendicularly and forms columns of 16 LED’s. This way, if power is applied to one row and a single column is grounded, one LED will light up at the intersection. This method only works reliably to light up a single LED at a time. With that in mind, [Alex] needed to have a very high “refresh rate” for his display. He only ever lights up one LED at a time, but he scans through the 128 LED’s so fast that persistence of vision prevents you from noticing. To the human eye, it looks like multiple LED’s are lit up simultaneously.

[Alex] planned to use an Arduino to control this display, but it doesn’t have enough outputs on its own to control all of those lights. He ended up using multiple 74138 decoder/multiplexer IC’s to control the LED’s. Since the columns have inverted outputs, he couldn’t just hook them straight up to the LED’s. Instead he had to run the signals through a set of PNP transistors to flip the logic. This setup allowed [Alex] to control all 128 LED’s with just seven bits, but it was too slow for him.

His solution was to control the multiplexers with counter IC’s. The Arduino can just increment the counter up to the appropriate LED. The Arduino then controls the state of the LED using the active high enable line from the column multiplexer chip.

[Alex] wanted more than just a static image to show off on his new display, so he programmed in a version of Tetris. The controller is just a piece of perfboard with four push buttons. He had to work out all of the programming to ensure the game ran smoothly while properly updating the screen and simultaneously reading the controller for new input. All of this ran on the Arduino.

Can’t get enough Tetris hacks? Try these on for size.