The Math That Makes Computers Go, Built On a Tiny PCB

A computer is, at its core, just a bunch of transistors wired together. Once you have enough transistors on a board, though, one of the first layers of abstraction that arises is the Arithmetic Logic Unit. The ALU takes in two sets of data, performs a chosen math function, and outputs one data set as the result. It really is the core of what makes computers compute.

An ALU is built into modern processors, but that wasn’t always how it was done. If you’re looking to build a recreation of an early computer you may need a standalone, and that’s why [roelh] designed an ALU that fits in a square inch piece of circuit board using five multiplexer chips and two XOR chips.

One of the commonly used components for this purpose, the 74LS181 ALU, is not in production anymore. [roelh’s] ALU is intended to be a small footprint replacement of sorts, and can perform seven functions: ADD, SUB, XOR, XNOR, AND, OR, A, B, and NOT A. The small footprint for the design is a constraint of our recent contest: Return of the Square Inch Project. Of course, this meant extra design challenges, such as needing to move the carry in and carry out lines to a separate header because there wasn’t enough space on one edge.

Exploring the theory behind an ALU isn’t just for people building retrocomputers. It is integral to gaining an intuitive understanding of how all computers work. Everyone should consider looking under the hood by walking through the nand2tetris course which uses simulation to build from a NAND gate all the way up to a functioning computer based on The Elements of Computing Science textbook.

If you’re a homebrew computer builder, it might be worthwhile to use one of these ALUs rather than designing your own. Of course, if building components from scratch is your thing we definitely understand that motivation as well.

Braille on a Tablet Computer

Signing up for college classes can be intimidating, from tuition, textbook requirements, to finding an engaging professor. Imagine signing up online, but you cannot use your monitor. We wager that roughly ninety-nine percent of the hackers reading this article have it displayed on a tablet, phone, or computer monitor. Conversely, “Only one percent of published books is available in Braille,” according to [Kristina Tsvetanova] who has created a hybrid tablet computer with a Braille display next to a touch-screen tablet running Android. The tablet accepts voice commands for launching apps, a feature baked right into Android. The idea came to her after helping a blind classmate sign up for classes.

Details on the mechanism are not clear, but they are calling it smart liquid, so it may be safe to assume hydraulic valves control the raised dots, which they call “tixels”. A rendering of the tablet can be seen below the break. The ability to create a full page of braille cells suggest they have made the technology pretty compact. We have seen Braille written on PCBs, a refreshable display based on vibrator motors, and a nicely sized Braille keyboard that can fit on the back of a mobile phone.

Continue reading “Braille on a Tablet Computer”

Electromagnetic Field: TIM, A Relay Computer

We are probably all familiar with computing history to the extent that we know the earliest computers were surprisingly simple devices. While early electronic machines such as Colossus or ENIAC were hugely complex racks of tubes, once expressed as a schematic or as a network of logic gates they would be relatively straightforward for today’s electronic engineer to understand their operation. Those who have made an in-depth study of computing history may have heard of the work of Konrad Zuse in the mid-20th century, his relay-based machines predate their fully electronic cousins by several years.

A relay-based computer can be simple enough to be built by a home constructor, and at the recent Electromagnetic |Field hacker camp [Rory Mangles] outlined his TIM relay computer built while he was at school. It’s an engaging story starting from first principles and describing a series of TIM devices from a simple binary adder to the final fully Turing-complete computer. He describes the design process for his ALU, eventually going with a 1-bit serial design to economise on relays.

The machine has a Harvard architecture, with the program pathway consisting of a paper tape from which the code is run directly. The instruction set is called BLT, which of course means Basic Language of Tim, and there is a T++ assembly language. Loops and if statements are handled in a nod to the classical Turing machine by looping the paper tape. The original TIM is a few years old, but he reveals that he’s recently brought it out of storage and added a parallel port. Thus the finale of the talk is a demonstration, printing a “Hello World”.

We’ve placed the full video below the break, meanwhile we were lucky enough that [Rory] brought TIM along to the EMF Hackaday Readers village for our bring-a-hack, so the header image is from when we had a chance to examine it. If you’re curious to know more, he has a web site with some more TIM details.

Continue reading “Electromagnetic Field: TIM, A Relay Computer”

Robot Maps Rooms with Help From iPhone

The Unity engine has been around since Apple started using Intel chips, and has made quite a splash in the gaming world. Unity allows developers to create 2D and 3D games, but there are some other interesting applications of this gaming engine as well. For example, [matthewhallberg] used it to build a robot that can map rooms in 3D.

The impetus for this project was a robotics company that used a series of robots around their business. The robots navigate using computer vision, but couldn’t map the rooms from scratch. They hired [matthewhallberg] to tackle this problem, and this robot is a preliminary result. Using the Unity engine and an iPhone, the robot can perform in one of three modes. The first is a user-controlled mode, the second is object following, and the third is 3D mapping.

The robot seems fairly easy to construct and only carries and iPhone, a Node MCU, some motors, and a battery. Most of the computational work is done remotely, with the robot simply receiving its movement commands from another computer. There’s a lot going on here, software-wise, and a lot of toolkits and software packages to install and communicate with one another, but the video below does a good job of showing what you’ll need and how it all works together. If that’s all too much, there are other robots with a form of computer vision that can get you started into the world of computer vision and mapping.

Continue reading “Robot Maps Rooms with Help From iPhone”

Build Your Own Supercomputer with ESP32s

If the computer you have isn’t particularly fast, there’s a well-documented way to get more out of it. You just need more of the same computer, and you can run your tasks on them all at the same time. Building computer clusters is an effective way of decreasing the time it takes for computers to solve certain problems, even if the computers themselves aren’t top-of-the-line hardware. Of course, with cheap enough hardware, people will build clusters out of just about anything, including the ESP32.

For this project, [Wei Lin] admits that this isn’t really a serious attempt at building speedy hardware, but rather an interesting exercise in creating a cluster as a sort of learning experience. ESP32 boards can be found for around $10 so building an experimental cluster with these is even more feasible than using the Raspberry Pi. [Wei Lin] goes into a great amount of detail on his GitHub page about all of his goals with the project, most of which involve exploring the functionality of the new cluster and its underpinnings.

While this might seem like little more than a thought experiment, it does have the advantage of being a great solution for problems that involve gathering data from points that are physically very far from one another. If you’ve ever been interested in parallel computing or computing clusters, this is a great project to check out. If you have more Raspberry Pis on hand than ESP32s and still want to build a cluster, check out this project that used a mere 750 of them for one.

 

Katherine Johnson: Computer To The Stars

In 1962, John Glenn sat in his capsule waiting for his rocket engines to light-up and lift him to space. But first, he insisted that Katherine Johnson double-check the electronic computer’s trajectory calculations. While that’s the dramatic version of events given in the recent movie, Hidden Figures, the reality isn’t very far off. Glenn wasn’t sitting on the launchpad at the time, but during the weeks prior to launch, he did insist that Johnson double-check the computer’s calculations.

So who is this woman who played an important but largely unknown part of such a well-known historical event? During her long life, she was a wife, a mother, an African-American, a teacher, and a human computer, a term rarely used these days. Her calculations played a part in much of early spaceflight and in 2015, she was awarded the Presidential Medal of Freedom by President Obama. She also has a building named after her at the Langley Research Center in Hampton, Virginia.

Continue reading “Katherine Johnson: Computer To The Stars”

Forth System-On-Chip Takes Us Back to the 80s

For anyone who has dealt with the programming language Forth, odds are good that you picked it up back in the 80s. Since the language is still in use for many applications, though, you might not have this sort of nostalgic feeling for the language that some might have. For that, though, you might want to try out [Richard]’s implementation which simulates the microcomputers of the 80s using this unique language.

The system has an FPGA-based CPU written in Verilog. It runs on a Nexys-3 board and features PS/2 Keyboard input, a VGA output with a VHDL VT100 terminal emulation module, access to the Flash and onboard SRAM, and a UART. With all of that put together it’s virtually a Forth-based time machine. It’s also extremely well documented even if you’re just curious how it works and aren’t planning on building your own.

The project also includes a CPU simulator written in C which can model the entire computer if you don’t have the hardware for building the actual computer. [Richard] also released everything that you’d need to roll out your own Forth computer on the GitHub page. There are other ways of heading way back to the 1980s, though, like using the quirky Parralax Propeller.