Accessories command (LXDE main menu), 93
Acorn BBC Micro personal computer, 7-8
Acorn RISC Machines (ARM) processors, 8
add-ons, media centers, installing, 197-198
addresses, static IP, setting, 106
advanced options, Raspo-Config utility, 84
AlaMode (Arduino), 324-325, 332-335
Amtel microcontroller, programming with, 354-357
analog versus digital signals, 317
analogWrite() function, 331
Android Device, 2
Apache, 235
APIs (application programming interfaces), 10, 221-226
Apple OS X, 49
Application Launch Bar (LXDE), 92
application layer (OS), 48
applications
Pi Store, downloading, 97
remixing, 151
XBMC, 181
apt-get parameters, 313
Arch Linux ARM, 54
Esplora, 316
Mega 2560, 316
PAPERduino, 315
Playground, 321
shields, 317
starter kits, 319
ARM (Acorn RISC Machines) processors, 8
Atari 2600 Video Computer System (VCS), 199
Atmel ATmega 328P AVR microcontroller (Gertboard), 339
Atmel RISC chip, 10
audio
HDMI cables, 26
Audio Book Player, 2
autoclean parameter, 313
Automated Chicken Coop Door, 2
autoremove parameter, 313
Bald Wisdom blog, 324
Banzi, Massimo, 315
BASIC programming, 7
batteries, webcams, adding to, 273-274
BBC Micro personal computers, 7-8, 12
bilaterally symmetric breadboards, 35
binary large object (BLOB) driver, 15
bin directory, 70
Blendtec, 181
BLOB (binary large object) driver, 15
blocks
unlinking, 131
Blocks palette (Scratch), 125, 127
Blum, Richard, 154
breakout, 36
networking, 27
single-board microcontrollers, 37-38
Boolean blocks, 129
Boolean data type (Python), 172
boot behavior, adjusting, Raspi-Config, 88
boot directory, 70
boot partition contents, 310
breakout boards, 36
Bresnahan, Christine, 154
bridges, 35
Broadcom BCM2835 system-on-a-chip, 10
Broadcom VideoCore IV GPU, 179
browsers, 289
browsing Internet, proxy servers, 278-280
building Minecraft servers, 226-231
bus strips, 35
BYTEmark (nbench) benchmark, 307
Bytes data type (Python), 172
ribbon, 35
camera
enabling, 82
Model B board, 30
capturing still pictures, 259-263
interface, 254
specifications, 255
Camera Serial Interface (CSI) connectors, 30
Campidoglio, Enrico, 302
CanaKit Raspberry Pi Complete Starter Kit, 44
capacitors, PCBs (printed circuit boards), 17
Cap blocks, 129
Cartesian coordinate system, 130
cases, 32
C blocks, 129
Cheese-Powered Radio-Controlled Car, 1
chipsets, 31
Chrome web browser, 289
Chromium web browser, 120
Chun, Wesley, 178
circuit prototyping equipment, 34-37
classes, 221
classes, SD cards, 23
class libraries, 221
clients, Hamachi, installing, 284-285
codecs, XBMC, 181
command prompt, Raspbian, 67-69
commands
cp, 77
LXDE main menu, 93
mkdir, 77
mv, 77
rm, 77
rmdir, 77
startx, 69
community
Raspberry Pi, 357
computer science, 9
concatenation, Python, 173
configuration
GPIO-based IR receivers, 190-192
headless (q) Raspberry Pi, 110-117
SimpleCV vision library, 274-276
third-party USB webcams, 267-274
web servers, 240
XBMC, media detection, 194-196
connecting Arduino
connectors
CSI connectors, 30
RCA, 28
versus ports, 25
console video game emulation, RetroPie, 199-200
content, web servers, transferring to, 240-243
Control blocks (Scratch), 127
controls, RetroPie, setting up, 206-207
cp command, 77
CPUs (central processing units)
ARM11, 8
verifying status, 303
CPU Usage Monitor icon (LXDE), 92
CPU/GPU memory splits, adjusting, 307-311
CraftBukkit, 227
CrazyWorms2, 97
Creative Commons, 151
Creative mode (Minecraft), 218
cron utility, 271
CSI (Camera Serial Interface) connectors, 30
Cyberduck, 204
data processing tasks, personal computers, 9
data types, Python, 172
Dawson, Anne, 163
Debian, 52
Debian Linux
GUI. See GUI (graphical user interface)
Debian Reference icon (LXDE), 89
debugging Dodgeball Challenge, 147-149
dedicated audio, HDMI cables, 26
default gateways, 106
desktop
changing background, 98
enabling boot to, 82
LXDE (Linux X11 Desktop Environment), 87-94, 98-102
desoldering braids, 43
dev directory, 70
development workflow, Arduino, 323-332
DeviantArt Picture Frame, 1
DHCP (Dynamic Host Configuration Protocol), 104
dialog boxes
Import Background, 130
Internet Properties, 289
Panel Preferences, 100
Dictionaries data type (Python), 172
Digital Clock icon (LXDE), 92
digital versus analog signals, 317
Digital Video Interface (DVI-D), 27
digitalWrite() function, 329
diodes, PCBs (printed circuit boards), 18
discussion forums, 102
displays, 25
Display Serial Interface (DSI), 28
Dive into Python 3, 178
DIY Arduino, 319
dongles, 108
Doom, 217
downloading apps, Pi Store, 97
DSI (Display Serial Interface), 28
DVI-D (Digital Video Interface), 27
Dynamic Host Configuration Protocol (DHCP), 104
Eames, Alex, 344
Education command (LXDE main menu), 93
electrostatic discharge (ESD), 27
emulation, 200
encoding raspivid video files, 265-266
ESD (electrostatic discharge), 27
Esplora, 316
Esplora (Arduino), 316
ES-Scraper, installing, 211-212
etc directory, 70
Ethernet, 103
Ethernet Shield, 318
exiting LXDE, 88
expansion, Model B board, 31-32
Fedora Remix, 54
file extensions, Windows, showing in, 206
file system, expanding, 81
Firefox web browser, 289
firmware, Linux, 53
FM Radio Transmitter, 1
forked distributions, 52
FTP (File Transfer Protocol), installing and testing, 243
Gaddis, Tony, 178
gamepads versus joysticks, 212
games. See Minecraft; Minecraft Pi; RetroPie
game screens, setting up, 140-143
gateways, VPN, building, 280-285
General Purpose Input/Output (GPIO) pinout (Gertboard), 339-341
-based IR receivers, configuring, 190-192
lighting LED directly from, 351-352
module, loading in Python, 176-177
schematic, 215
Amtel microcontroller, programming with, 354-357
GPIO pinout. See General Purpose Input/Output (GPIO) pinout
input/output (I/O), testing, 349-350
installing and testing software, 343-346
Git, 311
Gnash player, 119
GNOME Linux GUI, 88
GNU General Public License, 15
GNU (GNU’s Not Unix), 15
GPIO pinout. See General Purpose Input/Output (GPIO) pinout (Gertboard)
GPU/CPU memory splits, adjusting, 307-311
Gralla, Preston, 234
Graphics command (LXDE main menu), 93
GSM Shield, 318
GtkPerf benchmarking utility, 305
GUI (graphical user Interface)
installing, updating and removing software, 94-95
Raspbian, 87
Hamachi clients, installing, 284-285
Hamachi VPNs, building, 280-284
HardInfo benchmarking utility, 305
hardware
circuit prototyping equipment, 34-37
monitors, 25
printed circuit boards (PCBs), 17-20
Secure Digital (SD) card, 23-24
single-board microcontrollers, 37-38
USB hubs, 24
hardware layer (OS), 48
Hat blocks, 128
HDMI (High Definition Multimedia Interface) cables, 26
HDMI (High Definition Multimedia Interface) ports, 27
“headless” Raspberry Pi, configuring, 110-117
home directory, 70
Hostname option (Raspi-Config), 84
How the Internet Works, 234
HTTP servers, 233
Hypertext Pre Processor (PHP), 235
ICs (integrated circuits), 18
IDLE 3 icon (LXDE), 90
IDLE icon (LXDE), 90
IDLE (Integrated DeveLopment Enviroment), Python, 154-156, 165-168
Import Background dialog box, 130
input, 9
input/output (I/O), Gertboardtesting, 349-350
installation
FTP, 243
Joomla, 246
LAMP stack, 236
phpMyAdmin, 244
integrated circuits (ICs), 18
internationalization options, Raspi-Config utility, 82
Internet command (LXDE main menu), 93
Internet connections, encrypting, 277-278
Internet Properties dialog box, 289
Internet Protocol (IP), 103
interpreter, Python 3, interacting with, 156-158
I/O (input/output), Gertboard, testing, 349-350
IP (Internet Protocol), 103
jacks, 25
joystick control mappings, RetroPie, configuring, 208-209
jumper wires, 35
KDE Linux GUI, 88
kernel, Linux, 53
key words, Python, 171
KindleBerry Pi, 1
L6203 motor controller (Gertboard), 339
layers, operating systems, 48
Learning Python, 163
LEDs (light emitting diodes), 29-30
GPIO, lighting directly from, 351-352
lib directory, 70
LibreOffice, 51
licenses, open source, 15
light emitting diodes (LEDs), 29-30
LinApple Apple II emulator, 206
Arch Linux ARM, 54
disadvantages, 51
Fedora Remix, 54
firmware, 53
Occidentalis, 54
Raspbian. See Raspbian
Red Hat, 49
runlevels, 312
Lists data type (Python), 172
Logitech Rumblepad 2 joystick, 212
Logout command (LXDE main menu), 94
Logout icon (LXDE), 92
Looks blocks (Scratch), 127
loop() function, 329
lost+found directory, 70
Lutz, Rick, 163
LXDE (Linux X11 Desktop Environment), 68, 87-94
starting and exiting, 88
LXPanel, customizing, 100
LXPanel icon (LXDE), 92
LXTerminal, customizing, 99
LXTerminal icon (LXDE), 90
Main Menu icon (LXDE), 91
Maker Shed Raspberry Pi Starter Kit, 44
manually adjusting memory splits, 309-311
manual method, overclocking, 304
Marriott, Jennifer, 246
MCP3002 Digital-to-Analog (D2A) converter (Gertboard), 339
MCP4801 Analog-to-Digital (A2D) converter (Gertboard), 339
media centers
Raspbmc. See Raspbmc
Media Companion, 195
media detection, XBMC, configuring, 194-196
media directory, 70
media scrapers, XBMC, 181
Mega 2560 (Arduino), 316
Memory Split option (Raspi-Config), 84
memory splits, adjusting, 307-311
Menu Bar (Scratch), 125
microcomputers, Arduino, 14
microcontrollers
Raspberry Pi-compatible, 11
versus personal computers, 9-11
Microsoft Office, 51
Micro USB power ports, 29
game modes, 218
learning to play, 218
platforms, 219
plugins, 232
Minimize All icon (LXDE), 91
mkdir command, 77
mnt directory, 70
Model B board, 27
camera, 30
networking, 27
power/status information, 29-30
processing, 31
storage, 29
modes
Minecraft, 218
overclocking, 302
ModMyPi cases, 32
monitors, 25
motherboards. See boards
Motion blocks (Scratch), 127
mv command, 77
Nazarko, Sam, 182
NES (Nintendo Entertainment System), 199
headless Raspberry Pi, configuring, 110-117
Model B board, 27
virtual private networks (VPNs)
encrypting Internet connections, 277-278
New Out Of Box Software (NOOBS), 63-65
NICs (network interface cards), 47
Nintendo Entertainment System (NES), 199
nodes (Tor), 295
NOOBS (New Out Of Box Software), 63-65
Numbers data type (Python), 172
O’Brien, Stephen, 218
Occidentalis, 54
OCR Resources icon (LXDE), 90
Office, 51
Office command (LXDE main menu), 93
Official Joomla! Book, The, 246
Openbox Configuartion Manager, 100-101
OpenOffice, 51
Arch Linux ARM, 54
Fedora Remix, 54
layers, 48
Occidentalis, 54
OpenELEC, 54
Raspbian. See Raspbian
RaspBMC, 54
RISC OS, 54
Operators blocks (Scratch), 127
Opera web browser, 289
opt directory, 71
Osborn, Kevin, 324
OS layer, 48
Other command (LXDE main menu), 93
output, 9
manual method, 304
modes, 302
warranty implications, 300-301
Overscan option (Raspi-Config), 84
Panel Preferences dialog box, 100
PAPERduino, 315
parameters, apt-get, 313
passwords, changing, 81
PCBs (printed circuit boards), 17-20
PCManFM icon (LXDE), 91
Pen blocks (Scratch), 127
PEP (Python Enhancement Proposal), 163
peripheral devices, 33
circuit prototyping equipment, 34-37
single-board microcontrollers, 37-38
Persson, Markkus PNotchN, 217
PetRockBlog RetroPie GPIO Adapter, 214
PHP (Hypertext Pre Processor), 235-238
phpMyAdmin, configuring, 243-245
Picade Arcade Cabinet, 1
Pi Cobbler board, 36
pictures, capturing, Camera Board, 259-263
Pi Hut cases, 32
Pi in the Sky, 1
Pilgrim, Mark, 178
pinMode() function, 329
Pi-Powered Bitcoin Miner, 1
Pi-Powered Motion Detector, 1
Pi-Powered Weather Station, 2
Pi Store
downloading apps, 97
Pi Store icon (LXDE), 89
platforms, Minecraft, 219
Playground (Arduino), 321
playing content, XBMC, 196-197
playing games, RetroPie, 209-210
plugins
Minecraft servers, 232
XBMC, 181
plugs, 25
power/status information, Model B board, 29-30
Practical Guide to Linux Commands, Editors, and Shell Programming, A, 74
Preferences command (LXDE main menu), 94
printed circuit boards (PCBs), 17-20
Privoxy
installing and configuring, 286-287
testing configuration, 287-291
proc directory, 71
processing, 9
processing, Model B board, 31
programming
Amtel microcontroller, 354-357
Python. See Python
Scratch. See Scratch
Programming Arduino: Getting Started with Sketches, 327
Programming command (LXDE main menu), 93
projects
remixing, 151
Projects website, Scratch, 126
protocols
VNC (Virtual Networking Computing), 110-117
stacks, LAMP, 234
Proto Shield, 318
pointing workstation computers at, 289-291
Python, 121, 153-154, 165, 171-178
concatenation, 173
data types, 172
interacting with interpreter, 156-158
keywords, 171
programs, writing, 158-160, 168-170
sample code repositories, 163
variables, 171
Python API, Minecraft, accessing, 221-226
Python Enhancement Proposal (PEP), 163
Python Fundamentals LiveLessons, 178
Python Games icon (LXDE), 90
Python programming language, 9
Python test suite, installing and testing, 344-346
Python Tutorial, 178
Quake III Arena timedemo, 305
Raspberry Pi, 7
naming of, 9
orgins, 7
purchasing, 16
Raspberry Pi Enhanced Bundle, 44
Raspberry Pi Foundation, 7
Raspberry Pi Keyboard Computer, 1
Raspberry Pi Media Center, 182
Raspberry Pi Robot, 1
GUI. See GUI (graphical user interface)
testing image, 65
controlling from web browser, 189
requirements, 182
transferring content to PI, 192-193
adjusting boot behavior, 88
adjusting memory splits, 308
advanced options, 84
internationalization options, 82
raspistill, capturing still pictures, 259-262
RasPlex, 179
Rastrack database, 83, 292-294
RCA connectors, 28
RCA video cables, 26
rechargeable batteries, webcams, adding to, 273-274
recording video, Camera Board, 263-266
Red Hat Linux, 49
Reduced Instruction Set Computing (RISC) processing architecture, 8
Relay Shield, 318
remixed distributions, 52
remixing projects, 151
remote controls, Rasspbmc-compliant, 186-192
remotely connecting to Raspberry Pi, 110-117
Reporter blocks, 129
resistors, PCBs (printed circuit boards), 17
RetroArch, 200
retroarch.cfg file, 207
ES-Scraper, installing, 211-212
joystick control mappings, configuring, 208-209
SD card image, 200
RetroZone, USB adapters, 213
ribbon cables, 35
RISC OS, 54
RISC (Reduced Instruction Set Computing) processing architecture, 8
RJ-45 Ethernet interface, 27
rm command, 77
rmdir command, 77
ROM (read-only memory), RetroPie, transferring to, 203-206
root directory, 71
Rossum, Guido van, 154
RPi.GPIO library, 344
rpix86 DOS 5.0 emulator, 206
Run command (LXDE main menu), 94
run directory, 71
runlevels, Linux, 312
Safari web browser, 289
sample code repositories, Python, 163
Sams Teach Yourself Python Programming for Raspberry Pi, 154
sbin directory, 71
applications, creating, 129-132
Projects website, 126
remixing projects, 151
Scratch Cat, 130
Scratch icon (LXDE), 89
Scratch programming language, 121
Screenlock icon (LXDE), 92
Scripts Area (Scratch), 125
scripts, Python, running, 161-162
SD (Secure Digital) cards, 23-24, 55-56
SD card slots, 29
SDHC (Secure Digital High Capacity) cards, 24
SDXC (Secure Digital eXtended Capacity) cards, 24
security and privacy device, 277
browsing via proxy server, 278-280
building proxy servers, 286-287
virtual private networks, building gateways, 280-285
virtual private networks (VPNs), encrypting Internet, 277-278
selinux directory, 71
Sensing blocks (Scratch), 127
Serial Peripheral Interface (SPI), enabling, 344-345
Server Outdated, 229
servers
proxy. See proxy servers
web. See web servers
Sets data type (Python), 172
setup() function, 329
SFTP, transferring content to web servers, 241
shields (Arduino), 317
SimpleCV vision library, 274-276
single-board microcontrollers, 37-38
SMSC LAN9512 Ethernet controller, 21
Sobell, Mark, 74
software
installing, updating and removing, 94-95
soldering irons, 42
Sound blocks (Scratch), 127
Sound & Video command (LXDE main menu), 93
Spigot, 227
SPI (Serial Peripheral Interface), enabling, 344-345
Sprite Header Pane (Scratch), 125
Sprites Pane (Scratch), 125
srv directory, 71
SSH option (Raspi-Config), 84
Stack blocks, 129
Stage (Scratch), 125
starter kits, Arduino, 319
starting LXDE, 88
Starting Out with Python, 178
startx command, 69
static IP addresses, setting, 106
still pictures, capturing, Camera Board, 259-263
storage, Model B board, 29
Streaming Music Jukebox, 1
Strings data type (Python), 172
Stuff About Code website, 252
“Style Guide for Python Code,” 163
subnet masks, 103
Super Mario Brothers, 210, 217
Survival mode (Minecraft), 218
sys directory, 71
System Tools command (LXDE main menu), 93
temperature, verifying status, 303
Terminal
terminal strips, breadboards, 35
testing
FTP, 243
voltage, 41
third-party USB webcams, 266
SimpleCV vision library, 274-276
time-lapse webcams, setting up, 270-272
tmp directory, 71
tools
soldering irons, 42
Tor proxy servers, building, 294-297
Tor routers, 295
Torvalds, Linus, 49
traces, PCBs (printed circuit boards), 17
transistors, PCBs, 18
troubleshooting Dodgeball Challenge, 147-149
Tuples data type (Python), 172
UI (user interface) Scratch, 124-129
ULN2803a open collector drivers (Gertboard), 339
Ultimate Player’s Guide to Minecraft, The, 218
unlinking blocks, Scratch, 131
Update option (Raspi-Config), 84
updating software, 77-80, 94-95
uploading
USB hubs, 24
Useful Modules list (Python Wiki), 175
user layer (OS), 48
user passwords, changing, 81
usr directory, 71
var directory, 71
Variables blocks (Scratch), 127
VGA (Video Graphics Array) ports, 28
vias, PCBs (printed circuit boards), 17
video
recording, Camera Board, 263-266
VideoCore graphics processing unit (GPU), 15
video game emulation, RetroPie, 199-200
configuring joystick control mappings, 208-209
installing ES-Scraper, 211-212
Video Graphics Array (VGA) ports, 28
Virtual Desktops icon (LXDE), 91
Virtual Networking Computing (VNC), 110-117
virtual private networks. See VPNs
VNC (Virtual Networking Computing), 110-117
voltage
testing, 41
verifying status, 303
VPNs (virtual private networks)
encrypting Internet connections, 277-278
Walmsley, Ryan, 292
Waring, Elin, 246
warranty implications, overclocking, 300-301
web browsers, 289
Chromium, 120
webcams
adding rechargeable batteries to, 273-274
Camera Board. See Camera Board
setting up, 269
SimpleCV vision library, 274-276
time-lapse, setting up, 270-272
web pages, 233
configuring, 240
phpMyAdmin, configuring, 243-245
placing on public Internet, 249-252
WiFi Config icon (LXDE), 89
Wi-Fi Shield, 318
Windows, showing file extensions, 206
wired Ethernet, configuring, 104-107
wireless Ethernet, configuring, 107-110
WiringPi library, 344
workstation computers, pointing at proxy servers, 289-291
Xbian, 179
applications, 181
codecs, 181
configuring media detection, 194-196
media scrapers, 181
plugins, 181
XBMC Media Center, 181
XFCE Linux GUI, 88
“Zen of Python, The”, 163