Three Chips Should Be Enough for Anyone

How low can you go and still run Linux? Dmitry Grinberg built a minimal computer with just three 8-pin chips that runs a full Debian system.

Nick Bild
7 days agoHW101
Yes, this runs Linux (📷: Dmitry Grinberg)

What are the bare minimum hardware requirements for a computer to be able to run a Linux operating system? Your first thought might be a Raspberry Pi or similar single-board computer. But while these computers are quite small physically, they are actually packed with a lot of processing power, memory, and peripherals. They hardly qualify as minimal systems.

A software engineer and hardware hacker by the name of Dmitry Grinberg has been playing around with very low-end systems and machines with unusual form factors for some time now, with the goal of getting Linux to run on all of them. Now, he has just completed another project that is specifically targeted at finding a minimal system design for running Linux. He defined such a minimal system as being a machine that can adequately run Debian Linux (including tools like vi, gcc, and make) with 8MB of RAM, 1 MIPS of CPU, USB, and storage on an SD card.

Grinberg also wanted this project to be something that others can copy and enjoy, so he wanted to make sure it was easy to build. For this reason, he decided to limit the hardware to 8-pin chips that anyone with a cheap, low-power soldering iron and basic skills could assemble. That severely restrained the available options, but there are still just enough options to eke out a minimal design with USB-to-serial, RAM, and microcontroller chips.

Choosing the USB-to-serial chip was easy, since there are so few options with an 8-pin footprint. The Prolific PL2303GL is about the only show in town, and it also happens to be just about perfect for the job, so Grinberg selected it for the design. There are plenty of 8MB SOIC-8 PSRAMs chips available, so take your pick. Choosing a microcontroller was much harder, but after an exhaustive search, Grinberg found that the STMicroelectronics STM32G031J6M6 would fit the bill nicely. A round custom PCB and a few passive components and sockets rounded out the design.

While the microcontroller is rated for operation at 64MHz, it is known to be highly overclockable. Grinberg used a few tricks to get it all the way up to 148MHz, which put it comfortably above the minimum specs he initially defined. With the hardware out of the way, Linux partitions were set up on an SD card.

The boot process takes about one minute, so it is quite reasonable. A terminal session can be initiated via a UART connection, and as a full Debian system, .deb packages can be installed to add new software. This computer is definitely not going to become your daily driver, but it has reasonably good performance for just three 8-pin chips.

Schematics for the board and an SD card image are available for download, so if you want to reproduce this project, all of the heavy lifting has already been done. Full build details are available in the project write-up.

Nick Bild
R&D, creativity, and building the next big thing you never knew you wanted are my specialties.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles