Single-board computers or “SBC” are compact computer systems that fit entirely on a single printed circuit board (PCB). These low power systems have been used mostly for prototyping low power solutions such as a household smart alarm panel or a car’s navigation system but are becoming more popular as media centres, retro game console and lightweight development workstations.
Consumer-grade integrated high memory systems haven’t been widely available until recently. Enter the 8GB raspberry pi 4. This heavyweight has a quad-core 64-bit processor with a whopping 8 GB of memory onboard. It can output dual 4k over HDMI, has Bluetooth and Wi-Fi. It’s essentially a micro laptop without a keyboard or display.
There are many kits available to consumers to house your single-board computer. I chose this fancy NES-PI case from Amazon. While I was shopping, I also picked up a 480GB SSD and the 64GB SD card to give this tiny board some serious storage capabilities. I worked on an ESD (electrostatic discharge) mat with an ESD wrist band because components are handled directly in the assembly process.
One of the features of this case is that it has storage in the form of an NES cartridge caddy. The SSD is inserted into the cartridge caddy, and then it’s internally routed to the Raspberry Pi.
It doesn’t look like much, and it’s smaller than my tech kit, but this is a 64-bit quad-core system with 8GB memory and half a TB of storage!
A barrier to consumer adoption is the process of installing an operating system. The easiest way to do this is to already have another computer up and running. I will be installing Manjaro, a 64-bit Arch-based Linux operating system that is free and open source. There are many flavours of Manjaro. The distinguishing factor for using Manjaro on a Raspberry Pi is that it uses ARM processors instead of x86. This makes it more like a new Apple M1 than an Intel or AMD based system. I recommend the XFCE flavour of ARM Manjaro as it is the most stable, and it’s fairly lightweight and responsive.
You will need to navigate to the Manjaro website and then to downloads, editions, ARM, and Raspberry Pi 4. Then select XFCE. It’s very important to verify the iso file’s integrity by following the instructions here.
Now download the image; it should have an extension of .img.xz. I use Rufus to create my bootable images, but there are many offerings available for free. I am using an A1 rated 64GB SD card and a USB card reader to interface with my main workstation. Most laptops still have a card reader, and most SD card purchases come with a free adapter. Just point Rufus to the image and the SD card, and he will do the rest. Once the bootable image has finished its creation process, insert it gently into the Raspberry Pi. Depending on your case (if you have one), you may have to wait until the Raspberry Pi is installed before you slot the card in. Always be careful and don’t force components. Using an ESD safe mat and wristband is always recommended when working with electronic components outside of their enclosures.
Connect the monitor port closest to the USB power input to an HDMI monitor before powering on; otherwise, the system may not boot if it has older firmware. I would also recommend connecting a USB keyboard and mouse. The Raspberry Pi 4 has onboard Wi-Fi and Bluetooth, but it’s best to keep things very simple when building a system.
Follow the prompted commands and install Manjaro XFCE. It should take about 5-10 min depending on your connection speed and how old the image that was used to create the SD card is. Reboot when prompted.That’s it! Now a single board computer is powering a true quad-core, 64-bit desktop environment with 8 GB of memory, enough to install your favourite Linux IDE and get to work or install RetroArch and play some retro games!
As the System’s Architect for Switch Engineering, I employ these boards for rapid prototyping projects. They are inexpensive, easy to use and most 3D printers are large enough to print cases for them. They also have a general-purpose in/out pin array (GPIO) that can connect to virtually any low powered device like environmental sensors and relay controllers, but I would probably just use a microcontroller for those tasks instead. The main reason for me to use a Raspberry Pi is for the onboard video, which got me thinking about using one for a compact home media solution, but I was hesitant to use a system with only 4GB of memory and 32-bit architecture.
The best part about this build is that it can be slapped into virtually any rapid development project that requires some sort of consumer interface. This could power a prototype point of sale system, smart signage, video display systems, and the next generation of contactless ordering systems and self-checkout systems.