After numerous delays and unexpected compliance testing, the Raspberry Pi Foundation is finally shipping the first batch of highly anticipated Raspberry Pi computers. This computer-on-a-board is coveted for its low price ($35) and small size, roughly that of a deck of cards. The foundation hopes this product will get kids excited about programming. Is it finally time for a revolution in ultra-affordable computers?
The first thing we noticed about the Raspberry Pi is its size. This computer is tiny. The entire unit measures 3.37 x 2.13 x 0.67 inches, so it's slightly bigger than a credit card and only a bit too large for an Altoids tin. It weighs 1.2 ounces, less than half the weight of a deck of cards. The Model B is covered in all the ports needed to get connected and running in a matter of minutes: HDMI out, two USB ports, audio out, RCA video, an SD card reader, and a microUSB power connector.
While the Raspberry Pi Model B includes RCA video and audio out ports, the device was created for newer technology, and its creators encourage HDMI use. A USB keyboard, and optionally a mouse, are connected via USB, and grabbing a wireless keyboard and mouse can give Raspberry Pi users more mobility.
The initial run of Raspberry Pi Model B's does not include a case; the device is simply a circuit board fitted with connectors. The Raspberry Pi Foundation plans on shipping future models enclosed in a protective case at no extra cost.
Describing the Raspberry Pi as an educational device is quite accurate, especially for those who aren't advanced computer users. Even setting up the Raspberry Pi requires a bit of command line computing. Fortunately, there is great online support available for users of all ability levels, from YouTube video tutorials and online forums to user-contributed wikis.
The Raspberry Pi runs on a bootable SD card, which needs to be created before the device can even power on. Three disk images are currently available for download directly on the Raspberry Pi website: Debian "squeeze," Arch Linux ARM and QtonPi. Each is a modified version of the Linux operating system designed specifically for the Raspberry Pi, since this computer can't run unmodified versions of Linux or any version of Windows or Android. The Raspberry Pi Foundation recommends the Debian "squeeze" Linux distribution for those just starting out.
While the foundation provides three disk images, communities of developers are actively working on other operating systems to run on the Raspberry Pi. One of the most anticipated is a beta version of Xbox Media Center called Raspbmc. Even as an unfinished product, Raspbmc provides a robust media experience on the Raspberry Pi.
Creating a bootable SD card is more complicated than dragging and dropping a downloaded disk image into the mounted card. The memory card first must be completely erased, which can be accomplished with the command line tool diskpart. A simple disk formatting won't work; Windows' format disk tool doesn't properly prepare the SD card for a Linux operating system.
Windows users are encouraged to use a program called Win32DiskImager to write disk images to the bootable card. There is a link to download Win32DiskImager on the Raspberry Pi website, and this tool makes the disk-writing process easy.
Those intimidated by the process of creating the boot disk can also buy an SD card pre-loaded with appropriate Linux distributions from individual sellers on eBay for $15 to $20. The official Raspberry Pi website includes a link to step-by-step instructions for beginners, and we were able to follow along and create our own bootable SD card despite our minimal experience.
There is no on-or-off switch on the Raspberry Pi, only the microUSB power supply, so you need to connect a monitor and keyboard to the device before providing power. Once turned on, the Raspberry Pi immediately enters the command line interface, showing each part of the computer loading one by one, a process hidden on most modern computers.
The Raspberry Pi does not include a real-time clock, which would have required a battery. As a result, the first command line prompt when running Linux is to enter the current date and time. Once the time is set, users can either continue using the device via the command line interface or type "startx" and launch the graphical user interface (GUI).
Debian "squeeze" OS
When we connected our Raspberry Pi to a 60-inch Samsung HDTV, everything looked crisp and clear. The Debian "squeeze" graphical user interface greeted us with a bright and colorful Raspberry Pi desktop background image. Text was easily readable, even at smaller sizes. A task bar runs along the bottom of the screen, with a start menu on the bottom left and the time and other stats on the bottom right, much like Windows.
Clicking the start menu reveals applications organized into helpfully labeled folders. These folders include Accessories, Education, Internet, Other, Programming, Sound & Video, and System Tools.
Debian "squeeze" also provides the user with two different desktops, a feature similar to OS X Spaces. The controls for switching back and forth between these two desktops is right next to the start button. This is a compelling feature for anyone connecting the Raspberry Pi to a small monitor, such as a modified PSOne screen.
Leafpad, a no-frills text editor similar to Microsoft's Notepad, is included as the default text editor. There's also an archive utility called Xarchiver for handling compressed files. The bulk of the default applications, however, relate to programming and education.
Debian "squeeze" also includes Scratch, whose accessible programming language--essentially dragging and dropping colorful blocks--makes it easy to create animations, video games and interactive art. Scratch ran great on the Raspberry Pi, and we were able to create a short animation of a cat walking around the screen in a short period of time.
Installing new software requires entering a Unix shell. We wanted to install a screen-capture application, and without much Linux experience it took a bit of time to figure out the software installation process. Fortunately, most software can be installed with an apt-get shell command. This can get a bit confusing, sometimes requiring modifications to the default sources.list file, but Google is a great tool for answering any questions that arise.
The Raspberry Pi was designed to support the Python programming language, but any language that will compile for ARMv6 can be installed and used. Debian "squeeze" includes an integrated Python development environment called Stani's Python Editor. This IDE includes auto indentation and completion, syntax coloring, to-do lists and other features of a robust programming environment.
There will be no "World of Warcraft" or "Diablo III" on the Raspberry Pi. However, this device's 700-MHz ARM11 processor and 256MB of RAM were not designed to rival the latest PCs but perform basic tasks and be an educational tool. The Raspberry Pi contains a Videocore 4 GPU, which means it's capable of Blu-ray-quality playback when using H.264 at 40MBits/s. Although the graphics processor is capable of performance roughly matching the first generation Xbox, real-life performance better matches a 300-MHz Pentium 2.
With the Linux disk image, the computer took 22 seconds to turn on and load the command prompt, and loading the GUI took 17 seconds more. Loading applications definitely felt slow. It took between five and 10 seconds to launch the Web browser without any other applications running. Running multiple applications concurrently is possible but will definitely slow things down. Any more than three applications at the same time, and the computer's "thinking" time gets annoying.
Unfortunately, the Debian "squeeze" OS does not support Flash and HTML5, although the Raspberry Pi Foundation says the upcoming Debian "wheezy" will have "somewhat more responsive" Web browsing and computing. When we clicked on a video through YouTube, we were greeted with a message informing us that Flash was not installed and our Midori browser did not support HTML5. Attempts at installing Flash and getting a different browser were unsuccessful.
Next, we installed the popular media player VLC and opened a small H.264-encoded video clip. The video was choppy and unwatchable. Running both an operating system and a video was a bit too much for the processor. However, we had greater success when using the Xbox Media Center OS.
Xbox Media Center OS
We installed the Raspbmc operating system, a version of the Xbox Media Center designed specifically for the Raspberry Pi that's on a separate SD Card. Because Raspbmc is currently in beta, a few features, such as weather and remote control browsing, aren't yet supported. But we were able to successfully use audio, video, and picture applications directly through this Raspberry Pi media browser.
Raspbmc runs faster than Debian "squeeze" on the Raspberry Pi. Switching between screens and launching applications took between one and five seconds, compared to the 5-10 seconds to load the Web browser in Debian "squeeze." This speed was a pleasant surprise after spending time in Linux and was a better showcase of the Raspberry Pi's performance.
There are dozens of video applications available for Raspbmc. The YouTube add-on is fully supported and installs at the click of a button. Launching the YouTube app allowed us to search, browse videos or sign into our account. There are still bugs with the video browsing feature, so our attempt at browsing top trailers returned zero results. However, the YouTube search function worked perfectly. We searched for the trailer for "Django Unchained" and enjoyed smooth and crisp 1080p HD video on our 60-inch TV. The accompanying sound, also traveling through HDMI, took full advantage of the monitor's built-in speakers and filled the room at a midrange volume setting.
In addition to video add-ons, Raspbmc has applications for audio and pictures. We easily connected to our Grooveshark account and logged into our Flickr account for photo browsing and sharing. You can also play downloaded media files via a USB thumb drive or hard drive; more-advanced users can load files directly into Raspbmc by enabling root access and connecting via FTP.
As there's no hard drive on the Pi itself, the only storage you get is on the SD card boot disk. The default Debian "squeeze" disk image takes up just under 2GB of space, 1.5GB of which is used by the operating system. We used a 4GB card, the recommended minimum, but the Raspberry Pi Foundation claims to have successfully used up to a 32GB card.
If 32GB still isn't enough, additional storage can be supplied by connecting a USB drive, which will be useful for anyone who uses the Pi as a media center.
There are two models of the Raspberry Pi, dubbed Model A and Model B. At this point, only Model B is available; Model A is expected in the not-too-distant future. Both models are fitted with 256MB of RAM, but Model A, which costs $25, has only one USB port and no Internet support The $35 Model B is fitted with two USB hubs and can connect to the Internet via Ethernet. Neither version includes Wi-Fi, but Raspberry Pi's FAQ says this capability will be made available via a USB dongle.
At $35, the Raspberry Pi is small and inexpensive but definitely requires some time and dedication to set up and use. It won't replace any desktop, laptop or tablet anytime soon, but it provides a great experience for anyone wanting to learn how computers work or build their own media center. At such a low price, this device is made for experimenting, learning to code or testing peripherals and circuit board soldering techniques. Overall, the Raspberry Pi is a fun little computer at an amazing price.