Single-board Computers/Computing
i.e. Raspberry Pi and Friends
There's not much to see in it, but here's the obligatory photo album:
https://goo.gl/photos/xsNtaeUk7LUxTu4g9
If you can't see the photos on this page, it's because your browser
does not support the webp image format. No big deal - you're not missing out
on much here.
In December 2013 i got my first Raspberry Pi model 1B. Though it was under-powered for anything i really wanted to do with it, it was a revelation for me how small computers were becoming and how little electricity they needed. Single-board Computers, or SBCs, as they are called, have had a place in my heart since then, though i have admittedly done only "normal computing stuff" with them, as opposed to tinkering with custom electronics (which is not even remotely my thing).
In June 2014 i got an ODroid U3, which was a much higher-spec'd SBC than any Pi at the time, and i actually used it as my primary computer through at least the end of 2014, and even did the first several months of programming the s2 scripting engine on it. It was a phenomenal machine, actually, and ran both Linux and Android with ease. Alas, i eventually outgrew it and bought a refurbished PC from my employer (who would sell computers to employees for "an apple and an egg" after the machines were 2 years old and could be written off tax-wise). To this day (summer 2020) that's still my most powerful PC, though i was gifted a second-hand laptop in 2017 and that machine gets more use.
i became interested in the Pine64 A+ SBCs when they were released via Kickstarter in 2016, and bought two of them, but they were a complete let-down on multiple levels. Marketed as having awesome performance and fantastic video, they just didn't have either. Uncomfortably slow, and not a single Android game, no matter how simplistic, could get more than a few frames a second of video on them. They ran Netflix on Android well enough until Netflix decided that rooted devices were a no-no and cut us off. Every attempt at doing something halfway "serious" with them utterly failed due to their performance (even for use as NAS devices they were sorely limited by having only USB 2.0 ports). In mid-2020 i attempted to make light Linux desktop use out of one and X11 crashed with - i kid you not - the message "your machine is too slow." At that point i gave them away (good riddance!) and started looking for a new SBC to replace my loud and electricity-hungry main PC.
The Pi was, of course, the first SBC i investigated, but i was also interested in the newer ODroids because i had been so happy with the U3. Much had happened in the SBC market since my last serious visit into it (2016) and i researched many boards. Though there are plenty which are more performant than the latest Pi models (model 4B, as of this writing), the level of support for the Pi, both from their creators and the community, is at least an order of magnitude higher than any of their competitors, which means more OS choices, more and more frequent software updates, etc. So i went with the Pi, and purchased an Pi 4B with 8GB of RAM (their top-end model at the time (summer of 2020)). My only issue with the Pi family is its near-complete lack of Android support, which apparently traces back to the creators, who feel (i read somewhere) that the commerical Android platform is not conducive to the environment/community which the Pi foundation wants to nurture. Okay, fine. i'd sure like to run Android on one, but that's currently a huge pain in the butt to get running.
After getting a Pi 4B, in late August 2020, it was my primary desktop machine for the better part of six months. Though not blazing fast as a desktop, it's completely adequate for the vast majority of what i do on the desktop (namely internetting and C programming, with much of the former delegated to a tablet nowadays), including writing the first version of this very web page. The exception is some of my heavier-weight Inkscape (SVG editing) stuff, for which there's still the desktop computer. Since then i've ordered another 4B to run as a dedicated Pi Hole DNS sink (ad blocker) for the home network. Though the 4B is utterly overpowered for that purpose, the models from previous generations, most notably the 3B, don't differ in price enough to justify going with the older models. The lowest-end 4B (with 2GB RAM) was the same price as the 3B when i shopped for it (about 35 Euros), but went with a 4B 4GB RAM model just for the sake of having some room to grow, and 4GB makes for a reasonable desktop environment if Pi Hole ends up not working out (but so far, so good).
Maybe someday i'll have something more interesting to say about SBCs than, "they're usable as full-fledged desktop PCs." Nowadays my main computer is a so-called mini-PC. Though not marketed as SBCs, they essentially are SBCs with expandable RAM. They're almost as price-competitive as modern ARM-based SBCs (a far cry more expensive than ARM SBCs used to be), and have (when not under heavy loads) competitive energy requirements, but are generally much faster.
In closing, here's a non-exhaustive list of properties of SBCs not shared by desktop-grade and laptop computers...
- Low cost of entry. The cheapest (suitable only for very limited uses) are as cheap as 10 Euros, and some high-end ones cost upwards of 100 or more. The most popular Pi units sit in the middle there, ranging anywhere (as of this writing) from 35 to 75 Euros, depending on how much RAM they ship with (there are, as of this writing, models with 2GB, 4GB, and 8GB of RAM). A full-fledged mini-PC, by comparison, currently runs anywhere from 150+, with 200-300 being the current approximate price range for a fairly decent desktop-grade one. That said, even a cheap SBC can require another 15-50 Euros in accessories (power supply and case, at a minimum), depending on what it will be used for, so a mini-PC may be a better deal, depending on the intended usage.
- Low electricity costs. The RPi 4 idles at something like 3.5 watts and can supposedly peak, not including externally-powered USB devices, at somewhere around 7 watts, compared with 50-200+ watts for full-fledged laptop or desktop PC. Lower electricity cost means money saved. Mini-PCs are often competitive, though not quite as low-powered, as ARM-based SBCs in this regard.
- Silent, or mostly so. Fans are often optional, depending on the workload, and the smarter fan setups can start and stop the fans as needed by the CPU. That's a prime feature of the Argon One RPi case - the smart fans (though it only works as-is with the Raspberry Pi OS (formerly known as Raspbian)).
- Their RAM sizes are fixed. There's no upgrading RAM after purchase. This is usually not a limitation on mini-PCs. However...
- Most SBCs support custom programmable ports, so they can be deployed for certain special-case tasks which off-the-shelf PCs/mini-PCs cannot easily take on.
- Cloud storage sync clients, e.g. for Dropbox and Google Drive, are missing, or very nearly so, for SBCs. Thankfully, all such services have web interfaces which can be used in a pinch to download/upload stuff from an browser-capable SBC. Alternately, the amazing rclone can be used to script cloud storage access as well as provide an FTP-based proxy to it. That is, one runs rclone on their system and tells it to serve their cloud storage, then accessing the proper FTP port on the local system using a file manager proxies access to the remote cloud storage. That approach gives any computer in the house easy access to the remote cloud storage.
Interestingly, an SBC's desktop footprint is not much smaller than a desktop PC's once all of the cabling and external drive(s) are accounted for :/. For non-desktop use, e.g. infrastructure-level home servers and such, they generally don't require so much of that and will fit in just about any extra nook or cranny. The Pi Zero, for example, is not much bigger than an adult-sized thumb and normally need no cabling beyond its micro-USB power cable.