Hack and /: Downsides to Raspberry Pi Alternatives

Learn about some of the risks when choosing an alternative to a Raspberry Pi for your project. By Kyle Rankin

I have a lot of low-cost single-board computers (SBCs) at my house. And, I've written a number of articles for Linux Journal that discuss how I put those computers to use—whether it's controlling my beer fridge, replacing a rackmount file server, acting as a media PC connected to my TV or as an off-site backup server in my RV (plus many more). Even more recently, I wrote a "Pi-ventory" article where I tried to count up just how many of these machines I had in my home.

Although the majority of the SBCs I use are some form of Raspberry Pi, I also sometimes use Pi alternatives—SBCs that mimic the Raspberry Pi while also offering expanded features—whether that's gigabit Ethernet, faster CPUs, SATA ports, USB3 support or any number of other improvements. These boards often even mimic the Raspberry Pi by having "Pi" in their names, so you have Orange Pi and Banana Pi among others. Although Pi alternatives allow you to solve some problems better than a Raspberry Pi, and in many cases they provide hardware with better specifications for the same price, they aren't without their drawbacks. So in this article, I take a look at the downsides of going with a Pi alternative based on my personal experience.

Third-Party Support

The initial Raspberry Pi was a runaway success, and all of the subsequent models have sold incredibly well. There are only a few variants on the Raspberry Pi platform, and later hardware upgrades have done a good job at maintaining backward-compatibility where possible (in particular with overall board dimensions and placement of ports). There also have been only a few "official" Raspberry Pi peripherals through the years (the camera being the best example). When you have this many of a particular hardware device out in the world, and the primary vendor is mostly focused on the hardware itself, you have a strong market for add-ons and peripherals from third parties.

The secondary Raspberry Pi market is full of cases, peripherals and add-on hardware like USB WiFi dongles that promise to be compatible out of the box with earlier models that didn't include WiFi. Adafruit is a good example of an electronics vendor who has jumped into the Raspberry Pi secondary market with a lot of different hobbyist kits that feature the Raspberry Pi as the core computing and electronics platform. That company and others also have created custom add-on shields intended to stack on top of the Raspberry Pi and add additional features including a number of different screen options, sensors and even cellular support. There's even a company that offers a case to turn a Raspberry Pi into a small laptop.

By contrast, the secondary market for Pi alternatives is pretty small. You might find cases or other basic peripherals, but because there just aren't as many of those devices out in the world, it's much riskier for a company to go to the trouble of making specific add-ons just for those devices. Fortunately, you often can re-use peripherals intended for a Raspberry Pi in these Pi alternatives. Many competitors make a point to ensure they are pin-for-pin compatible with the Raspberry Pi's GPIO pins, which are used for many add-ons. Even with this though, compatibility is not a sure thing—you have to do your research in many cases or risk wasting money on an add-on that might fit but might not have software support once you boot.

The Community

One of the major things Raspberry Pi has going for it is its community. Because of its popularity and how many of these devices were sold compared to those of competitors, it has an enormous community of users that spread across all kinds of disciplines—from electrical engineers to gamers to sysadmins to artists.

There are a lot of advantages to having a large and diverse community behind a project. It means that when you want to do something with your SBC, you are less likely to be the first. There's a good chance you will find more complete (and more up-to-date) documentation and HOWTOs for whatever you want to do. It also means if you run into problems following one of these guides, there is a community on forums and chat rooms who can help walk you through it.

Many of the Pi alternatives do have communities in their own right with forums and chat rooms that you can turn to for support. There are also guides online for some of the more common use cases for a particular board (for instance, boards that feature SATA and gigabit Ethernet being used as a file server). Some of the common software projects (like media PC projects) often also include Pi alternatives in their documentation alongside Raspberry Pi if a particular board becomes popular for that use. So in many cases, the community is there, but if you start to stray from the common uses for your particular board, you are more likely to be on your own, or at least you'll have to adapt a Raspberry Pi guide to your SBC.

OS Support

There are a couple official operating systems for the Raspberry Pi direct from the vendor. Due to the popularity of the Raspberry Pi and the number of people using them, these operating systems support the hardware well and receive regular updates. Raspbian, one of the most popular OS options for the Raspberry Pi, essentially behaves like a standard Debian distribution with Raspberry Pi-specific scripts and kernel patches so you can get the most out of the hardware (and perform overclocking and other tweaks).

The community also has created a wide range of special-purpose OSes for the Raspberry Pi based on Raspbian that add specific features. Some examples include OSMC, which adds the Kodi media PC software, and OctoPrint, which adds a network-based 3D printer front end. There are also projects that build a custom Raspberry Pi OS from the ground up, such as OpenELEC and LibreELEC, which include Kodi just like OSMC does but with a stripped-down, special-purpose OS that boots much faster.

OS support, in particular kernel support, is probably the biggest downside to choosing a Pi alternative. Each vendor tends to provide a few different OS options with their boards, some that mimic Raspbian and others that are based on Android. These distributions also provide custom kernels with patches to support the hardware, but unfortunately compared to the Raspberry Pi world, it's a toss-up as to how well these kernels support the hardware. I've had some Pi alternatives work perfectly well and stably with the vendor-provided Linux OS, while others seemed incredibly unstable. These custom kernels also are problematic because in some cases, it can be challenging to track down the source code for their custom patches. Even if you do find the patches, you might be on your own if you want to apply them to a newer kernel.

The other problem with Pi alternatives is fragmentation and long-term support for the provided OS. Vendors tend to create their own custom distributions for their boards instead of using Raspbian or other shared distributions. These vendors also tend to create updated models every few years, but the OS for a particular revision tends to freeze in time. This means outdated Linux distributions and Android versions as time goes on. If you are someone who wants to use these SBCs as a server platform in particular, having regular security updates and overall updates for your services is very important. In these cases, the kernel packages also tend to freeze in place.

Fortunately, the Armbian project has stepped up to provide a general-purpose Raspbian-like OS for Pi alternatives. Depending on your board, Armbian will have Debian- and Ubuntu-based images you can use, each with kernels patched to support your hardware. Unfortunately, for some boards, the kernel is a bit less stable, and Armbian tries to gauge stability for all of the hardware it supports. Armbian also gets regular updates, so a board that was unstable one day might improve over time. More important, you will get more regular updates to the rest of the software on your system with less worry that the device will be abandoned. As we all accumulate more and more of these computers around our homes, regular security updates are incredibly important.

Conclusion

If you are debating between a Raspberry Pi and another board for your project, I hope this article has been helpful. In general, my advice is just to do your research before you buy any particular board—even a Raspberry Pi. Without proper research, you may end up with a board that won't work well for your project or that works only with an ancient OS. Defaulting to a Raspberry Pi is also not a silver bullet. I've chosen Pi alternatives for many of my projects specifically because a Raspberry Pi would have been under-powered (or didn't have proper hardware support) for my needs.

Resources

About the Author

Kyle Rankin is a Tech Editor and columnist at Linux Journal and the Chief Security Officer at Purism. He is the author of Linux Hardening in Hostile Networks, DevOps Troubleshooting, The Official Ubuntu Server Book, Knoppix Hacks, Knoppix Pocket Reference, Linux Multimedia Hacks and Ubuntu Hacks, and also a contributor to a number of other O'Reilly books. Rankin speaks frequently on security and open-source software including at BsidesLV, O'Reilly Security Conference, OSCON, SCALE, CactusCon, Linux World Expo and Penguicon. You can follow him at @kylerankin.

Kyle Rankin