Hands-On with the Raspberry Pi 2

I've been working with the new Raspberry Pi 2 for a few days now. Here are some of my impressions, opinions, and thoughts about it.

I've had my lovely new Raspberry Pi 2 for a few days now. It was shipped from the Swiss Pi-Shop less than a week after the announcement, so thanks once again to them for their prompt and courteous service. I've been trying it out since then, mostly comparing it to my original Models B and B+. The results have been interesting, generally what I expected, but with one or two surprises.

RasPi2
Raspberry Pi 2
Raspberry Pi 1 Model B

First the hardware. The form factor of the new Raspberry Pi 2 is identical to the Raspberry Pi 1 Model B+, meaning that it will fit in the same case. It has four USB ports, wired network, HDMI, audio and composite video, and power connection. It also has the 40-pin GPIO header, camera interface, and a micro-SD click-in/out slot which I much prefer to the original SD friction-fit slot.

A small side comment here: the micro-SD card is the only place where I have noticed something that might be a very minor issue with the new hardware. I got mine with the same transparent plastic case as I have for the B+, and the SD card actually rubs on the case a bit when it is inserted or removed. This can make it a bit more difficult, especially removing it, than it should be. But perhaps this is just a rough edge on my case, and isn't true in general.

Logically, the RPi 2 is also identical to the Model 1 B+, so programs which were written for the RPi 1 will still work on the RPi 2. This was a major point with the people at the Raspberry Pi Foundation. They have said from the start that if/when they brought out a new model, they did not want to make all of their older systems instantly obsolete.

At the PC board and component level, of course, there are some differences. The RPi 2 is based on a quad-core 900MHz ArmCortex-7 CPU, using a Broadcom BCM2386 SoC (System on a Chip), where the RPi 1 had a single-core 700MHz ARM11 in a Broadcom BCM2385 SoC. The other major component difference is that the RPi 2 has 1GB of SDRAM, where the RPi 1 had 512MB.

There are other less obvious differences in the hardware, but if what you are concerned about is telling the difference between a B+ and a 2 when you have both, don't worry - the name is etched on the board. Of course, if they are both in non-transparent cases, you might have a bit of a problem...

A NOOBS (New Out-Of-Box Software) package (version 1.3.12) was released along with the Raspberry Pi 2, both in the full-download and network-install (NOOBS Lite) versions. I have switched to using the Lite version for the sake of efficiency, since it only downloads what you actually choose to install. The Lite image itself is only about 22MB, vs about 780MB for the full NOOBS image.

You start the installation the same way with either version, by simply extracting the contents of the NOOBS image to a blank FAT32-formatted SD card. Then insert that card in the RPi and boot. You will be presented with a list of the available operating systems to install (Raspbian, Pidora, Arch, OpenELEC, RaspBMC, and RiscOS), and you can choose which you want.

This is where I thought things got just a tad confusing. First, OpenELEC is listed twice, with the only difference being the names (OpenELEC_Pi1 and OpenELEC_Pi2). OK, it's not too difficult to figure out that the Pi1 version is for the Raspberry Pi 1, and the Pi2 version is... well, you get the picture, right? But sometimes I can be a bit slow catching on.

Second, that difference in OpenELEC is actually indicative of what you really need to be aware of. Only Raspbian and OpenELEC_Pi2 have been created specifically for the RPi 2; if you choose any of the others for installation, when you try to actually start the installer you will get this message:

Warning: Incompatible Operating System(s) detected. The following OSes aren't supported on this revision of Raspberry Pi and may fail to boot or function correctly:

Of course, this was guaranteed to pique my curiosity, so I chose to install not only Raspbian and OpenELEC (Pi2), which were what I was primarily interested in, but also Pidora just to see how (or if) it would work.

Installation of those three requires just over 6GB of space, so they will all fit on an 8GB SD card, and it takes about 30 minutes to install them. Of course, if you choose to install fewer operating systems, the installation will be faster; if you install only Raspbian, I think it takes about 15 minutes.

After the installation completed, I was able to boot Raspbian and OpenELEC with no problem (duh), but Pidora would not boot. I don't know if this is true of the other non-Pi2 images, and I don't really care enough to find out right now, so just be aware, pay attention to the warning if you select one of the others, and don't be surprised if you insist on installing it and it doesn't work. I'm sure that Pi2 compatible images of most or all of the others will be coming along soon.

noobs.png
NOOBS Operating System Selection

Oh, here is something else to be aware of - it caught me out a while back. In the early NOOBS releases, the installation image for all of the operating systems were included in the full NOOBS package. (As a result, the NOOBS package itself was huge.) When you got to the operating system selection on first boot, there was a little disk symbol to the right of every option.

noobslite.png
Newer NOOBS Operating System Selection

But at some point, I'm not sure exactly when because I wasn't paying enough attention to notice, it changed to only having the Raspbian installation image actually included in the NOOBS download. So now when you get to the operating system selection there is a disk symbol next to Raspbian, but a wired network symbol next to the others, indicating that they will be downloaded on demand if they are selected. (Yeah, I know, the image on the right-hand side here is not really the correct one, but it was the only one I could find that showed the network installation icons. Sorry)

This explains something that happened to me not long ago. I was sure that I had downloaded the full NOOBS installation package, but when I booted it I could only install Raspbian (and Boot to Scratch, of course). It turns out that if you boot without a network connection, the installer notices that and it doesn't offer the network-installed images for installation.

In fact, the same thing happens if you press 'shift' during boot on an installed system; it will boot to the installer, which will notice that the network is not connected and it will only offer to install Raspbian. Of course, this means that the NOOBS Lite image is not quite so much of an advantage as it used to be, assuming that you are going to at least install Raspbian anyway... but if you were going to install OpenELEC only there would still be a significant advantage.

When you boot Raspbian after installation has completed, you get your first good look at the difference in performance of the Raspberry Pi 2. The original RPi 1 takes a bit more than 45 seconds from the time you select Raspbian and press RETURN, and the RPi 2 takes a bit less than 30 seconds to do the same. If you then install all of the available updates for Raspbian, it actually reduces the boot time even further, to less than 25 seconds.

I have one other off-the-cuff comment about the speed improvement. The first thing I always do after installing and booting Raspbian is install the synaptic package manager. I will apologize now to the die-hard Linux people, but I am just too old and lazy to fool around with apt on the command line. On the original Raspberry Pi, using synaptic was rather slow - and it didn't take long for it to become irritating. But the improvement on the Raspberry Pi 2 makes it much more 'normal' (and thus tolerable) to use.

If you are interested in more specific and detailed benchmark tests and comparisons between the RPi 1 and 2, check the Pi Blog Benchmarking article. The general consensus is that the Pi Foundation's estimate of ~6x better performance using current single-threaded applications is correct. The hope for the future is that as software gets tuned and compiled specifically for the quad-core CPU, the difference will be even larger.

There is more good news about the OpenELEC installation image. The Pi2 image contains OpenELEC 5.0.2, which is based on the new KODI 14.1, rather than the OpenELEC 4.2.x/XBMC 13.x that was in NOOBS a few weeks ago when I installed it on my B+, and which I assume is still in the OpenELEC_Pi1 image. Even better, when I booted OpenELEC and enabled Automatic Updates, it immediately found, downloaded, and extracted the latest update, so when I rebooted after that it upgraded itself to 5.0.3! Good stuff...

So, that is how far I have gotten with my Raspberry Pi 2. Of course, I've been playing around with it, trying out various things and generally appreciating the significant improvement in speed. But what is equally important, when you consider the magnitude of the hardware change, is that I haven't had a single problem with the new system. This is a tribute to the commitment of the Raspberry Pi developers to their existing users as well as to their continuing development, and they should be commended for it.

Below are 10 Raspberry Pi 2 alternatives. Click here to learn more about them.

Read more on Raspberry Pi