Chapter 1 What Is the Raspberry Pi?
Is the Raspberry Pi Open Source?
Open Source and the Raspberry Pi
How Can I Purchase a Raspberry Pi?
Chapter 2 Hardware Components Quick Start
Understanding Pi Hardware Terminology
The Hidden Cost of Owning a Raspberry Pi
Chapter 3 A Tour of Raspberry Pi Peripheral Devices
Task: Check Raspberry Pi Voltage with a Multimeter
Chapter 4 Installing and Configuring an Operating System
Raspberry Pi’s Other Operating Systems
Installing Raspbian on Your Raspberry Pi
Task: Creating a Raspbian SD Card in Windows
Task: Creating a Raspbian SD Card in OS X
Task: Creating a Raspbian SD Card in Linux
Task: Installing an OS on Your Raspberry Pi Using NOOBS
Testing Your New Raspbian Image
Chapter 5 Debian Linux Fundamentals—Terminal
Chapter 6 Debian Linux Fundamentals—Graphical User Interface
Task: Using Raspi-Config to Adjust Boot Behavior
Installing, Updating, and Removing Software
Task: Downloading a Free App from the Pi Store
Task: Change the Desktop Background
Task: Customize the LXTerminal
Chapter 7 Networking Raspberry Pi
Task: Setting a Static IP Address on Your Raspberry Pi
Task: Setting Up Wi-Fi on Your Pi
Configuring “Headless” Raspberry Pi
Task: Using SSH to Connect to a Raspberry Pi Remotely
Virtual Network Computing (VNC)
Task: Using VNC to Connect to the Raspberry Pi
Task: Configure Your Pi to Start VNC Server Automatically
On Browsing the Web with the Pi
Chapter 8 Programming Raspberry Pi with Scratch—Beginnings
Getting Comfortable with the Scratch Interface
Crafting a (Very) Simple Scratch Application
Task: Creating a Basic Scratch App
Task: Using the PicoBoard in Scratch
Chapter 9 Programming Raspberry Pi with Scratch—Next Steps
Task: Setting Up the Game Screens
Task: Setting Up the Scratch Cat
Setting Up the Second and Third Balls
Task: Share Your Scratch Project
Chapter 10 Programming Raspberry Pi with Python—Beginnings
Checking Out the Python Environment
Interacting with the Python 3 Interpreter
Writing Your First Python Program
Task: Creating Your First Python Script
Task: Running Python Scripts (command line)
Task: Running Python Scripts (IDLE)
Broadening Your Python Horizons
Chapter 11 Programming Raspberry Pi with Python—Next Steps
Task: Creating a New Python Script File
Delving into a Bit More Detail
Task: Loading and then Updating the GPIO Module in Python 3
Part III Basic Raspberry Pi Projects
Chapter 12 Raspberry Pi Media Center
Task: Installing Raspbmc Under Windows
Task: Installing Raspbmc Under OS X
Getting Your Remote Control Working
Task: Controlling Your Raspbmc Box from iOS
Task: Controlling Your Raspbmc Box from a Web Browser
Task: Configuring a GPIO-based IR Receiver
Transferring Content to Your Pi
Task: Uploading Media Content to Raspberry Pi
Task: Configuring XBMC Media Detection
Chapter 13 Raspberry Pi Retro Game Station
A Word About Console Video Game Emulation
Task: Transferring ROMs to Your Raspberry Pi
Task: Configure RetroPie Joystick Control Mappings
In Search of the Perfect Joystick
Chapter 14 Raspberry Pi Minecraft Server
Task: Loading the Minecraft Python Libraries
Task: Making Your Player Jump High!
Task: Installing Java and the Minecraft Server
Administering a Minecraft Server
Chapter 15 Raspberry Pi Web Server
Task: Installing the LAMP Stack on Raspberry Pi
Task: Verifying PHP Configuration
Task: Verifying MySQL Installation
Tweaking Up Your Web Server Settings
Transferring Content to Your Web Server
Task: Using SFTP to Transfer Content to Your Pi
Task: Install and Test FTP on Your Raspberry Pi
Task: Installing Joomla on Your Raspberry Pi
Putting Your Web Server on the Public Internet
Task: Making Your Raspberry Pi Publicly Accessible by Using No-IP
Chapter 16 Raspberry Pi Portable Webcam
About the Raspberry Pi Camera Board
Installing and Configuring the Raspberry Pi Camera Board
Task: Preparing the Raspberry Pi for the Camera Board
Task: Installing the Raspberry Pi Camera Board
Recording Video with the Camera Board
Task: Encoding a raspivid Video File
Using a Third-Party USB Webcam
Task: Configuring a Third-Party USB Webcam
Task: Setting Up a Time-Lapse Webcam
Adding a Rechargeable Battery Pack to Your Pi Camera
Chapter 17 Raspberry Pi Security and Privacy Device
Encrypting Your Internet Connection with a VPN
Browsing Where You Want via a Proxy Server
Building Your Raspberry Pi VPN Gateway
Task: Creating Your Hamachi VPN
Task: Connecting to Your Hamachi VPN from Your Desktop Computer
Task: Installing Hamachi Client on Your Raspberry Pi
Building Your Raspberry Pi Proxy Server
Task: Installing and Configuring Privoxy Raspberry Pi
Task: Pointing Your Workstation Computer at Your Pi Proxy
Task: Adding Your Raspberry Pi to the Rastrack Database
Building a Raspberry Pi Tor Proxy
Part IV Hacking the Raspberry Pi
Chapter 18 Raspberry Pi Overclocking
Warranty Implications of Overclocking
Task: Verifying Your Pi’s CPU, Voltage, and Temperature Status
Task: Installing and Running nbench
Adjusting the Memory Split on Your Pi
Task: Tweaking Memory Split with Raspi-Config
Various and Sundry Performance Tweaks
Chapter 19 Raspberry Pi and Arduino
Connecting the Arduino and the Raspberry Pi
Connecting the Raspberry Pi GPIO Pins to the Arduino Serial Pins
Connecting the Raspberry Pi GPIO Pins to the Arduino I2C
Connecting the Raspberry Pi to the Arduino via USB
Connecting the Raspberry Pi to the Arduino via a Shield or Bridge Board
Connecting the Raspberry Pi to an Arduino Clone
Understanding the Arduino Development Workflow
Task: Install and Configure Arduino IDE on the Raspberry Pi
Task: Running the “Blink” Sample Sketch
Task: Getting the AlaMode Up and Running
Chapter 20 Raspberry Pi and the Gertboard
Connecting Your Gertboard and Raspberry Pi
Installing the Testing Software
Task: Enabling SPI on Your Raspberry Pi
Task: Installing the Python Gertboard Test Suite
A Couple Quick Breadboarding Exercises
Accessing the GPIO Pins Directly
Task: Lighting an LED Directly from the GPIO
Accessing the GPIO Pins via the Pi Cobbler
Programming the Atmel Microcontroller