I was recently able to get my hands on a Raspberry Pi. I’m not talking about the food – though in retrospect, now I want pie. I’m talking about this absolutely amazing computer system. For some people it’s a hobby board, able to perform in a wide range of projects from robotics to security systems. For some it’s a miniature server, capable of running Apache, PHP, MySQL, Python, and a host of other technologies. Still others are chaining these little guys together and creating mini “super-computers” for things like high-processing tasks and 3D render farms.
Available from multiple locations – mine was purchased from Amazon – they range in price from around $35 USD for the board by itself, up to around $100 USD for an “Ultimate Starter Kit”, which includes not just the Raspberry Pi itself but a case, power cord, Micro SD card, HDMI Cable, heat sinks, and a collection of supplies to get you started making things.
When I say that these are “little guys” I’m being quite literal. The Raspberry Pi 3 Model B is a little bit larger than a credit card, albeit much thicker than one. The RPi3 comes with 4 USB ports, one Ethernet port, built-in WiFi and Bluetooth Low Energy, an HDMI out port for connection to a display, a headphone jack for audio, and is powered by a Micro-USB input.
To set one of these up for the first time, you’ll need a display with an HDMI port – mine is hooked up to my TV, a keyboard and mouse – I use a Logitech wireless keyboard with built-in trackpad because I had one laying around, and a computer with a Micro-SD card reader to write the operating system image.
The first step is to download an operating system of your choice, and thankfully there’s a number of them to choose from. The official Raspberry Pi Install Guide recommends downloading NOOBS to start with, at least until you’re more advanced. Me, I went straight for the Raspbian image as I knew what I wanted to accomplish. The two official operating systems are NOOBS and Raspbian. NOOBS isn’t a full-fledged operating system though – it’s more of a step along the way, to help you install another system instead. Also available from the Raspberry Pi download page are Ubuntu Mate, Snappy Ubuntu Core, Windows 10 IoT Core, OSMC, LIBREELEC, PINET, RISC OS, and Weather Station.
Once you’ve downloaded your chosen operating system, the next step is to write it to the Micro SD card. How you do that depends on what operating system your computer is running – I’m running Windows on my main system, so I had to download the Win32DiskImager software to write to my card. The install guide has the full instructions, so I won’t duplicate them here.
Once you have your Micro SD card ready to go, you plug it into the slot on your Raspberry Pi, plug the power cord in, and within seconds your Pi is booted and up and ready to go! Depending on what operating system you installed, will depend on what screen you see. I’ve installed two operating systems so far, on two separate SD cards – OSMC, and Raspbian. OSMC is the card I use most often.
If you’re like most of the world these days, you likely have some of your video collection backed up onto a computer, or maybe even some of your home movies. OSMC helps you to utilise those files. Many people I know – myself included – have previously used various ways to stream those videos over their network. A game console, smart TV, even to smart phones and tablets. OSMC is a great OS for this, as its entire purpose is as a multimedia center. It’s built upon the open source Kodi software, and has multiple plugins available for a wide range of purposes. It takes a lot less hassle for my wife and I to boot the RPi into OSMC and watch things, than it does to use one of the various other systems we have at our disposal.
The second card I have has Raspbian installed on it, and that’s the one I use for my workhorse. There is no shortage of things that the RPi is capable of! I have DosBox installed on mine for instance, for when I take breaks from my work and want to play some of my really old Dos based video games. I’ve also started setting mine up as a programming environment, hoping to eventually make use of some of the power of this little computer. There was a recent update to the Raspbian desktop environment that was nicknamed “Pixel”. It makes some changes to the window manager (for you Linux people out there that may be wondering, Raspbian uses the LXDE desktop environment by default, but it’s possible to throw other WMs on there – if I try to do so I’ll write an article on it), updates a number of things, and best of all it allows you to install the open source Chromium browser, on which the Google Chrome browser is based.
There are dozens of accessories available for the RPi. Cases top the list, as the Pi doesn’t come with one outside of one of the multitudes of kits you can get. In addition to that, there’s makers kits, breakout boards, sensors, and the list goes on. Which brings to what I think is by far the most useful part of this device. The GPIO.
GPIO stands for “General Purpose Input/Output” and is a double row of pins that run along one side of the board, for 40 pins in total. This is where the magic of the board takes place; how people are able to create so many amazing things with the Raspberry Pi. With a little knowledge of electronics, the Pi can be made to use sensors to read temperature, or utilise a camera as a basic security system. The projects I’ve seen range from blinking an LED light, to controlling your entire household. I even saw a complete R2-D2 droid from Star Wars, using the Raspberry Pi as its control. As of yet I haven’t played with the GPIO pins yet, but it’s definitely in the cards for me. I will of course document my projects and write about them for you all to enjoy and maybe even duplicate!
In closing, the sky really is the limit with the Raspberry Pi. I haven’t even begun to explore everything that this little computer is capable of doing but I most definitely look forward to the journey. For those not familiar with Linux, there is a learning curve. If you want to make full use of the Pi in projects, you’ll need to know or learn something about electronic circuits and how they work. Regardless of what you want to use it for, it is definitely up to the task in some way or another. Check back with me in the future as I challenge myself and see how far I can push not just the bounds of this technology, but how far I can push myself to make use of it.