Earlier this month, the Raspberry Pi Foundation released a major new version of its tiny single-board computer system for aspiring computer science enthusiasts. But this rendition of Raspberry Pi has much broader aspirations than the first generation devices and is in fact powerful enough to form the basis of a general purpose PC. Better still, Microsoft will be releasing a version of Windows 10 for Raspberry Pi 2 later this year. So here’s a quick look at this amazing little device, and how you can turn it into a fully-functioning mini PC.
Raspberry Pi 2 is the product of some men of a certain age—Eben Upton, Rob Mullins, Jack Lang and Alan Mycroft—who wanted to recreate the DIY aspects of the pre-PC personal computing world, when Commodores, BBC Micros, Spectrum ZXs, and Amigas provided built-in programming tools that even novices could learn. Indeed, as a man of this age group, I fondly remember going into retail stores and writing quick BASIC programs on a Commodore 128 that would draw geometric shapes all over the screen in a loop.
A few years into this grand experiment, I have to think that Raspberry Pi’s success has thoroughly exceeded the expectations of its founders. They sought to make an inexpensive computer so anyone could jump onboard, and today’s Raspberry Pi 2, which is about as powerful as any high-end smart phone, costs just $35. They wanted to attract children and students to computer science, and have done so in droves. But Raspberry Pi has also attracted an amazing array of makers, tech enthusiasts, engineers, and others who have used these little boards as the basis for an astonishingly diverse range of hardware and software projects. And now with Raspberry Pi 2, Windows is joining the party. Congratulations, guys. You won.
Raspberry Pi 2 represents a big step up from previous Raspberry Pi boards, which evolved over four designs from the original. It features a Broadcom BCM2836 system on a chip (SOC) with integrated CPU (a quad-core 900 MHz ARM Cortex-A7), GPU, SDRAM (1 GB), DSP and USB, and includes 4 USB 2.0 ports, full-sized HDMI-out, a 3.5mm phone jack with composite audio/video-out, a micro-SD slot, 100 Mbps Ethernet and a hacker-friendly set of GPIO (general-purpose input/output) pins for expansion. Power comes via microUSB, as on a smart phone or mini-tablet.
When you buy a Raspberry Pi 2, you get only the board. So you’ll need to supply your own power and storage (via microSD) and whatever peripherals you may need. The versatility of this board lends itself to all kinds of projects—there are some awesome videos on YouTube if you’re curious—from the simple (see below) to the quite involved (handheld arcade game machines with 3D printed cases). I’m not an engineer, so I’m going to stick to the simple.
In the future, I will of course be experimenting with Window 10 on Raspberry Pi 2. But since that’s not available yet, I decided to see what I could do with it now. And two possibilities were immediately interesting. You can just use the device as a mini-PC—it’s so small it makes the HP Stream Mini Desktop PC or Apple Mac Mini look ludicrously large by comparison—with a keyboard, mouse and display. Or, using a pre-built version of XBMC (Xbox Media Center, recently renamed to KODI), you can use it as a living room set-top box. Nice!
Here I’ll look at the first of those two basic Raspberry Pi 2 uses. So in addition to the board itself, I needed to find/obtain a case, a microSD card, power, an HDMI cable, and a keyboard, mouse and display. Since I’m me, I have almost all of that stuff available in my home office. But I did need to buy two items: the Raspberry Pi 2 itself, which is available from Element 14 and other online retailers, and a case. As it turns out there are many, many Raspberry Pi 2 cases available, so you have quite a range of choices. I purchased something inexpensive for now, but for purposes of this experiment even the case is optional.
I had previously purchased a bunch of 64 GB microSD cards from Amazon.com during a recent sale, so I used one of those. You need to install an OS on that card, of course, and while Raspberry Pi Foundation offers a number of standalone choices—including Raspbian, a Pi-optimized version of Debian Linux—the simplest option is the unfortunately named NOOBS (New Out Of the Box Software), which steps you through the process nicely. So I used that. (You could also buy a preinstalled NOOBS SD card, but I don’t recommend that: It’s cheaper to get your own card, and easy to install.)
To install NOOBS on the microSD card, I inserted the card into its included full-sized SD card converter and plugged that into my Windows desktop PC. According to Raspberry Pi’s setup guide instructions, you’re supposed to format the card with SD Formatter 4.0, which is probably unnecessary since it was new. But that tool formats 64 GB SD cards using exFAT, which is incompatible with Raspberry Pi 2. (You should be fine with a smaller card, where FAT32 will be the default.) Noting that Windows only formats such cards with NTFS or exFAT, I found a handy tool called FAT32 Format and used that instead. (Direct download link.) Bingo.
With that hurdle, um, hurdled, I then dragged all of the files from the downloaded and extracted NOOBS folder onto the card. Then I inserted it into the microSD slot on the Pi 2.
From here, it was simply a matter of plugging in keyboard, mouse and HDMI and then plugging in the power to boot it up. One of the interesting things about Raspberry Pi 2 is that there’s no BIOS or other firmware on the device, so everything has to be on the microSD card. What this means is that if you use no microSD card (or an improperly formatted card, as I had originally), nothing happens. Literally nothing. But with a properly-created microSD card, boot is nearly instantaneous: you see a rainbow-colored pattern first and then the NOOBS boot screen.
Then, you choose what to do next. I chose to install Raspbian as recommended.
This process took about 12 minutes. When it was done, the Pi2 rebooted, displaying a running scroll of text like some mid-1990s Linux distribution.
Indeed, when that was done, I used a text-based menu (shades of Slackware, for your Linux geeks) to enable the system to boot directly into its graphical desktop environment (and auto-logon) and then rebooted again. Look! It’s Linux. And it even comes with a free version of Minecraft.
This is just basic stuff, of course. In the future, I’ll look at doing an XBMC/KODI install and see how well this device works in the living room. But first, a few quick notes:
Mouse. Instead of using a USB-based mouse, I used a Microsoft Bluetooth-based mouse with dongle and it worked without any issues, and immediately.
Networking. I used Ethernet networking, but you could also use a USB-based Wi-Fi dongle for wireless purposes, so I’ll try that in the future.
Power. If you’re going to plug in a lot of USB peripherals, you may need a powered hub and/or a more powerful microUSB-based power supply. For the latter case, that means one that provides 2 amps of current instead of 1. I used a 2 am power plug that came with a tablet as smart phone plugs are often in the .7 to 1.5 amp range.
Case. I didn’t actually add the Raspberry Pi 2 to the case as I wanted to make this little experiment worked first. I’ll do so in the near future, but that is obviously pretty straightforward.