Welcome to the Companion Website

This is the companion site for the book “Exploring Raspberry Pi: Interfacing to the Real World with Embedded Linux” by Derek Molloy. It is maintained by the author and it contains supporting digital downloads, video, and source code examples. The website also contains additional materials that are too specific to include in the book. Each chapter in the book links to an individual web page (e.g., /chapter1), which can be accessed using the drop-down menu on the top right-hand side of this page.

Open Exploring BeagleBone Website

Exploring BeagleBone Book (Second Edition, 2019)

Please also see my other book website on the BeagleBone Black. Exploring BeagleBone is a hands–on guide to bringing gadgets, gizmos, and robots to life using the popular BeagleBone embedded Linux platform. Comprehensive content and deep detail provide more than just a BeagleBone instruction manual—you’ll also learn the underlying engineering techniques that will allow you to create your own projects. The book begins with a foundational primer on essential skills, and then gradually moves into communication, control, and advanced applications using C/C++, allowing you to learn at your own pace. In addition, the book’s companion website features instructional videos, source code, discussion forums, and more, to ensure that you have everything you need.

How does this book compare to Exploring BeagleBone?

Open Exploring BeagleBone Website

The Book


700 pages

Purchase the Book:

Paperback  and Kindle versions available Worldwide.



Rest of the World:


Full List of Worldwide Locations: Wiley International List

Source Code

Octocat_smallAll of the source code that is described in this book is available in a public GitHub repository: Derek Molloy Exploring Raspberry Pi repository.

You can clone this repository on a Linux desktop computer or your Raspberry Pi using the command:

You can also install a Windows GitHub desktop application or a Mac OS X GitHub desktop application. Alternatively, you can download a full ZIP archive of the code using the following link: Download Source Code (this is a live link that automatically provides you with the very latest files).


Economical and versatile, the Raspberry Pi can be adapted for thousands of applications. Open up all its possibilities by applying engineering principles along with Linux programming techniques, and develop the skills you need to design and build an endless array of projects.


Exploring Raspberry Pi first covers the basics of the hardware platform, recommended accessories, software, embedded Linux systems, and Linux programming techniques. Then it takes you deeper into interfacing, controlling, and communicating, with detailed information about Raspberry Pi GPIOs, buses, UART devices, and USB peripherals. You will learn to configure a cross-compilation environment in order to build large-scale software applications, as well as how to combine hardware and software to enable the Raspberry Pi to interact effectively with its physical environment. Finally, you’ll discover how to use the Raspberry Pi for advanced interfacing and interaction applications such as the Internet of Things (IoT); wireless communication and control; rich user interfaces; images, video, and audio; and Linux kernel programming.

“Exploring Raspberry Pi is THE book to go to if you are interested in learning about the impressive physical computing capabilities of the Raspberry Pi platform. Derek Molloy imparts the electronics, programming, and embedded Linux skills that are vital to today’s innovators in building the next generation of Internet of Things applications.”
Eben Upton (Co-creator of the Raspberry Pi), Raspberry Pi Foundation

Instead of recipes for a few specific projects, Exploring Raspberry Pi arms you with the skills needed to build the projects that exist in your imagination. You’ll learn to:

  • Develop essential Linux and programming skills
  • Build Internet of Things (IoT) applications
  • Master interfacing, controlling, and communication
  • Design applications that interact with the physical environment
  • Utilize the Arduino platform as a service processor
  • Build wireless communication applications
  • Write and install a custom Linux loadable kernel module
  • Apply the Raspberry Pi 3 and Raspberry Pi Zero to your projects


Prof. Derek Molloy is a Professor in the School of Electronic Engineering at Dublin City University, Ireland. Derek produces a popular YouTube series on the BeagleBone platform and a wide variety of embedded Linux topics. His videos and personal blog have introduced millions of people to the BeagleBone, embedded Linux, and digital electronics. See the About the Author page for more information.

Technical Editor

Dr. Tom Betka came to the world of embedded systems development by way of a previous career in the aviation industry, and then as a physician practicing clinical medicine for well over a decade. During this time his love of computers and software development evolved toward the field of embedded systems, and his training in computer science culminated in a second undergraduate-level degree. After leaving clinical medicine, Dr. Betka began working in the world of software development and has served as a subject-matter expert in both medicine and embedded systems for various companies in the industry. His recent work has included projects at the NASA Kennedy Space Center and the Sierra Nevada Corporation. Tom’s first love is the C-family of programming languages and using these languages to program 8-bit microcontrollers. As a Linux user for the past decade, he has also been working with the BeagleBone, BeagleBone Black, and Raspberry Pi devices for the last several years as well. His hobbies include advanced mathematics, aviation, high-powered model rocketry, and robotics. Also, he can often be found building prototype devices in his home-based machine shop. In a previous life, Tom worked for several years as a professional drummer—and was one of the first in his area to embrace the use of electronic percussion devices in live music scenarios.

Molloy, D. (2016). Exploring Raspberry Pi: Interfacing to the Real Wold with Embedded Linux. New York: Wiley, 978-1119188687, 720pp.

BibTeX Citation: