Learn the Raspberry Pi 3 from the experts!
Raspberry Pi User Guide, 4th Edition is the "unofficial official" guide to everything Raspberry Pi 3. Written by the Pi's creator and a leading Pi guru, this book goes straight to the source to bring you the ultimate Raspberry Pi 3 manual. This new fourth edition has been updated to cover the Raspberry Pi 3 board and software, with detailed discussion on its wide array of configurations, languages, and applications. You'll learn how to take full advantage of the mighty Pi's full capabilities, and then expand those capabilities even more with add-on technologies. You'll write productivity and multimedia programs, and learn flexible programming languages that allow you to shape your Raspberry Pi into whatever you want it to be. If you're ready to jump right in, this book gets you started with clear, step-by-step instruction from software installation to system customization.
The Raspberry Pi's tremendous popularity has spawned an entire industry of add-ons, parts, hacks, ideas, and inventions. The movement is growing, and pushing the boundaries of possibility along with it-are you ready to be a part of it? This book is your ideal companion for claiming your piece of the Pi.
- Get all set up with software, and connect to other devices
- Understand Linux System Admin nomenclature and conventions
- Write your own programs using Python and Scratch
- Take advantage of Pi compatibility with Arduino, Gertboard, and more
The credit-card sized Raspberry Pi has become a global phenomenon. Created by the Raspberry Pi Foundation to get kids interested in programming, this tiny computer kick-started a movement of tinkerers, thinkers, experimenters, and inventors. Where will your Raspberry Pi 3 take you? The Raspberry Pi User Guide, 3rd Edition is your ultimate roadmap to discovery.
About the Authors
Eben Upton is the co-creator of the Raspberry Pi board and the founder of the Raspberry foundation.
Gareth Halfacree, author, freelance technology journalist, writer, programmer, electronics designer and erstwhile sysadmin. A love of technology drives development of open source systems and documentation, as well as features and news for publications including Linux User & Developer, Custom PC, Micro Mart, IT Pro, Bit-Tech and Expert Reviews.
Introduction 1 Programming Is Fun! 1 A Bit of History 3 So What Can You Do with the Raspberry Pi? 8 Part I The Board 11 CHAPTER 1 Meet the Raspberry Pi 13 A Trip Around the Board 13 Model A/B 16 Model A+/B+ 16 Raspberry Pi 2 17 Raspberry Pi 3 18 Raspberry Pi Zero 19 A Bit of Background 20 ARM Versus x86 20 Windows Versus Linux 21 CHAPTER 2 Getting Started with the Raspberry Pi 23 Connecting a Display 23 Composite Video 24 HDMI Video 25 DSI Video 26 Connecting Audio 26 Connecting a Keyboard and Mouse 27 Installing NOOBS on an SD Card 29 Connecting External Storage 30 Connecting the Network 31 Wired Networking 32 Wireless Networking 33 Connecting Power 34 Installing the Operating System 35 Installing Using NOOBS 35 Installing Manually 37 Connecting Bluetooth Devices 41 CHAPTER 3 Linux System Administration 43 Linux: An Overview 43 Linux Basics 46 Introducing Raspbian 46 About Raspbian s Parent, Debian 51 Alternatives to Raspbian .51 Using External Storage Devices 52 Creating a New User Account 54 File System Layout 54 Logical Layout 55 Physical Layout 57 Installing and Uninstalling Software 57 Managing Software Graphically 57 Managing Software at the Command Line 58 Finding the Software You Want 60 Installing Software 61 Uninstalling Software 62 Upgrading Software 62 Shutting the Pi Down Safely 63 CHAPTER 4 Troubleshooting 65 Keyboard and Mouse Diagnostics 65 Power Diagnostics 66 Display Diagnostics 68 Boot Diagnostics 69 Network Diagnostics 69 CHAPTER 5 Network Configuration 73 Wired Networking 73 Connecting to a Wired Network via the GUI 73 Connecting to a Wired Network via the Console 75 Testing Your Connectivity 76 Wireless Networking 76 Connecting to a Wireless Network via the GUI 77 Connecting to a Wireless Network via the Console 79 CHAPTER 6 The Raspberry Pi Configuration Tool 85 Running the Tool 85 The System Tab 86 Filesystem 86 Password 87 Hostname 88 Boot 88 Auto Login 88 Network at Boot 89 Overscan 89 Rastrack 89 The Interfaces Tab 90 Camera 91 SSH 91 SPI 91 I2C 91 Serial 91 1-Wire 92 Performance 92 Overclock 92 GPU Memory 94 Localisation 94 Locale 94 Timezone 96 Keyboard 96 CHAPTER 7 Advanced Raspberry Pi Configuration 99 Editing Configuration Files via NOOBS 99 Hardware Settings: config.txt 101 Modifying the Display 102 Boot Options 105 Overclocking the Raspberry Pi 106 Disabling L2 Cache 110 Enabling Test Mode 110 Memory Partitioning 111 Software Settings: cmdline.txt 112 Part II Building a Media Centre or Productivity Machine 115 CHAPTER 8 The Pi as a Home Theatre PC 117 Playing Music at the Console 117 Dedicated HTPC with OSMC 119 Streaming Internet Media 122 Streaming Local Network Media 123 Configuring OSMC 124 CHAPTER 9 The Pi as a Productivity Machine 127 Using Cloud-Based Apps 127 Using LibreOffice 130 Image Editing with the Gimp 131 Part III Programming the Pi 135 CHAPTER 10 An Introduction to Scratch 137 Introducing Scratch 137 Example 1: Hello World 138 Example 2: Animation and Sound 141 Example 3: A Simple Game 144 Interfacing Scratch with Hardware .149 Further Reading 152 CHAPTER 11 An Introduction to Python 153 Introducing Python 153 Example 1: Hello World 154 Example 2: Comments, Inputs, Variables, and Loops 159 Example 3: Gaming with pygame 164 Example 4: Python and Networking 172 Further Reading 179 CHAPTER 12 Minecraft Pi Edition 181 Introducing Minecraft Pi Edition 181 Installing Minecraft 182 Running Minecraft 182 Exploration 184 Hacking Minecraft 185 Part IV Hardware Hacking 191 CHAPTER 13 Learning to Hack Hardware 193 Electronic Equipment 193 Reading Resistor Colour Codes 195 Sourcing Components 197 Online Sources 197 Offline Sources 198 Hobby Specialists 199 Moving Up from the Breadboard 199 A Brief Guide to Soldering 202 CHAPTER 14 The GPIO Port 207 Identifying Your Board Revision 207 GPIO Pinout Diagrams 208 GPIO Features 210 UART Serial Bus 211 I2C Bus 211 SPI Bus 211 Using the GPIO Port in Python 212 GPIO Output: Flashing an LED 212 GPIO Input: Reading a Button 216 Soldering the Raspberry Pi Zero s GPIO Header 220 CHAPTER 15 The Raspberry Pi Camera Module 223 Why Use the Camera Module? 224 Choosing a Camera Module 224 Installing the Camera Module 225 Enabling Camera Mode 228 Capturing Stills 230 Recording Video 232 Command-Line Time-Lapse Photography 233 CHAPTER 16 Add-On Hardware 237 Official Raspberry Pi Case 238 Installation 239 Raspberry Pi 7" Touchscreen Display 240 Installation 241 Sense HAT 244 Installation 245 Programming the Sense HAT 247 Part V Appendixes 251 APPENDIX A Python Recipes 253 Raspberry Snake (Chapter 11, Example 3) 253 IRC User List (Chapter 11, Example 4) 255 GPIO Input and Output (Chapter 14) 257 APPENDIX B Raspberry Pi Camera Module Quick Reference 259 Shared Options 259 Raspistill Options 264 Raspivid Options 266 APPENDIX C HDMI Display Modes 269 Index 277