Author: Simon Monk
Audience: Raspberry Pi hardware experimenters
Reviewer: Harry Fairhead
A cookbook for raspberry pie - what could be more logical? But only if you spell it Raspberry Pi.
Raspberry Pi is the computing sensation of the decade. It is small, cheap and capable of being used for general purpose tasks as well as embedded computing. It isn't quite disposable computing but it gets very close.
In principle it is just a Linux ARM based computer and as such it probably doesn't need a book dedicated to it, but not everyone knows Linux. What is more not everyone who knows Linux knows about the Linux software that lets you get access to the Raspberry Pi's special hardware. What this means is that even an expert can find themselves wondering how to do some task or other. One alternative is to look it up on the web and, given the size of the Raspberry Pi community, this often works, but the information you find can be of variable quality in terms of both its presentation and how fresh it is. Another alternative is to buy a copy of this cookbook which provides information in a "you want to do this - then read this" sort of format.
The book starts off with a look at the very basics of getting started with the Pi. It covers things like selecting a power supply, getting an OS, connecting a monitor and management topics like changing password. Most of this is fairly basic so if you know something about the Pi you might well find that it hasn't got much to tell you. The same is true of the second chapter, which is on networking. Quite a few of the solutions could be condensed into the single piece of advice - if you want to configure the Pi use the configuration menu.
Chapter 3 is equally full of obvious things about how to do particular tasks using the Linux command line. Well, things that are obvious if you already know the Linux command line. Most of the tasks are 100% standard Linux, but occasionally a more specific Pi-oriented command turns up like listing USB devices.
Chapter 4 is a list of recipes for setting up the Pi to do particular tasks - a media center, office, web browser, Minecraft and so on. This is one of the more exciting chapters because it moves up from Linux basics to things you can actually use the Pi for.
Chapters 5, 6 and 7 are an introduction to programming in Python broken down into recipes such as creating strings, joining strings and so on. I'm not sure that this is the right way to learn any programming language. If you know how to program it could be handy to lookup how Python does something that you already know about. If you don't know how to program the I doubt you would even know where to look for the recipe i.e. what's a string?
Chapter 8 marks the start of seven chapters on the hardware side of using the Pi. This is where the book is really useful in that it collects together various aspects of using the unique hardware that the Pi offers.
Chapter 8 introduces the GPIO and has recipes for basic connection and setting up the software you need to make use of it - I2C, SP and using various breakout boards. Chapter 9 extends the topics to the connection of simple external hardware like LEDs, buzzers, relays and so on. Chapter 10 deals with motors and Chapter 11 with digital inputs. Chapter 12 describes how to use sensors - light, methane, voltage, temperature, distance and so on. Chapter 13 describes how to connect various displays - four digit LED, LED matrix and so on.
The final chapter explains how you can use the Pi with an Ardunio and, as you might expect, this really only makes sense if you already know something about the Arduino. Of course the Pi is just another Linux-based machine as far as the Arduino is concerned and you can use it to develop code for the Arduino. Most of the chapter is concerned with communication between the two devices. The final few recipes are on using the aLaMode board to let the Pi use Arduino shields and using the Gertboard as an Arduino interface.
The content of this recpie book varies from how to boil an egg to cord en blue cookery. The chapters on using Python are probably a bit of a waste but who knows they might suit your approach to learning a programming language. To get the best out of the book you need to know enough about software and a bit more about electronics. If you aren't interested in electronics then a fairly large chunk of the book will be irrelevant to you.
As long as you are Raspberry Pi experimenter this is a handy book to have close by.
Practical Raspberry Pi
Hacking Raspberry Pi
Raspberry Pi in Easy Steps