Exploring BeagleBone Tools and Techniques for Building with Embedded Linux by Derek Molloy.
The BeagleBone is amazing! Given the proliferation of smartphones, the idea of holding in one hand a computer that is capable of performing two billion instructions per second is easy to take for granted—but the fact that you can modify the hardware and software of such a small yet powerful device and adapt it to suit your own needs and create your own inventions is nothing short of amazing. Even better, you can purchase it for as little as $45–$55.
The BeagleBone board on its own is too complex a device to be used by a general audience; it is the ability of the BeagleBone to run embedded Linux that makes the resulting platform accessible, adaptable, and powerful. Together, Linux and embedded systems enable ease of development for devices that can meet future challenges in smart buildings, the Internet of Things (IoT), robotics, smart energy, smart cities, human‐computer interaction (HCI), cyber‐ physical systems, 3D printing, advanced vehicular systems, and many, many more applications.
The integration of high‐level Linux software and low‐level electronics represents a paradigm shift in embedded systems development. It is revolutionary that you can build a low‐level electronics circuit and then install a Linux web server, using only a few short commands, so that the circuit can be controlled over the Internet. You can easily use the BeagleBone as a general‐purpose Linux computer, but it is vastly more challenging and interesting to get underneath the hood and fully interface it to electronic circuits of your own design—and that is where this book comes in! This book should have widespread appeal for inventors, makers, students, entrepreneurs, hackers, artists, dreamers—in short, anybody who wants to bring the power of embedded Linux to their products, inventions, creations, or projects and truly understand the BeagleBone in detail. This is not a recipe book—with few exceptions, everything demonstrated here is explained at a level that will enable you to design, build, and debug your own extensions of the concepts presented here. Nor is there any grand design project at the end of this book for which you must purchase a prescribed set of components and peripherals in order to achieve a very specifi c outcome. Rather, this book is about providing you with enough background knowledge and “under‐the‐hood” technical details to enable and motivate your own explorations.
I strongly believe in learning by doing, so I present low‐cost, widely available hardware examples in order that you can follow along. Using these hands‐on examples, I describe what each step means in detail, so that when you substitute your own hardware components, modules, and peripherals you will be able to adapt the content in this book to suit your needs. As for that grand project or invention—that is left up to you and your imagination! When writing this book I had the following aims and objectives:
■ To explain embedded Linux and its interaction with electronic circuits— taking you through the topics from mystery to mastery!
■ To provide in‐depth information and instruction on the Linux, electronics, and programming skills that are required to master a pretty wide and comprehensive variety of topics in this domain.
■ To create a collection of practical “Hello World” hardware and software examples on each and every topic in the book, from low‐level interfacing, general‐purpose input/outputs (GPIOs), analog‐to‐digital converters (ADCs), buses, and UARTs, to high‐level libraries such as OpenCV, Qt, and complex and powerful topics, such as real‐time interfacing with the PRU‐ICSS.
■ To ensure that each circuit and segment of code is specifi cally designed to work on the BeagleBone. Every single circuit and code example in this book was built and tested on the BeagleBone.
■ To use the “Hello World” examples to build a library of code that you can use and adapt for your own BeagleBone projects.
■ To make all of the code available on GitHub in an easy‐to‐use form.
■ To support this book with strong digital content, such as the videos on the DerekMolloyDCU YouTube channel, and a custom website www.exploringbeaglebone.com , which has been developed specifi cally to support this book.
■ To ensure that by the end of this book you have everything you need to imagine, create, and build advanced BeagleBone projects.
How This Book Is Structured
There is no doubt that some of the topics in this book are quite complex—the BeagleBone is a complex device! However, everything that you need to master the device is present in the book within three major parts:
■ Part I: BeagleBone Basics
■ Part II: Interfacing, Controlling, and Communicating
■ Part III: Advanced BeagleBone Systems
In the fi rst part in the book, I introduce the hardware and software of the BeagleBone platform in Chapters 1 and 2, and subsequently provide three
■ Chapter 3 : Exploring Embedded Linux Systems
■ Chapter 4 : Interfacing Electronics
■ Chapter 5 : Practical BeagleBone Programming
If you are a Linux expert, electronics wizard, and/or software guru, then feel free to skip the primer chapters; however, for everyone else I have put in place a concise but detailed set of materials to ensure that you gain all the knowledge required to effectively and safely interface to the BeagleBone.
In the second part of the book, Chapters 6 to 9, I provide detailed information on interfacing to the BeagleBone GPIOs, analog inputs, buses (I2 C, SPI), UART devices, and USB peripherals. You’ll learn how you can configure a cross‐compilation environment so that you can build large‐scale software applications for the BeagleBone. This part also describes how you can combine hardware and software in order to provide the BeagleBone with the ability to interact effectively with its physical environment. The fi nal part of the book, Chapters 10 to 13, describe how the BeagleBone can be used for advanced applications such as Internet of Things (IoT); rich user interfaces; images, video, and audio; and real‐time interfacing. Along the way you will meet many technologies, including TCP/IP, ThingSpeak, Xively, PoE, Wi‐Fi, Bluetooth, cron, Apache, PHP, e‐mail, IFTTT, VNC, GTK+, Qt, XML, multi‐threading, client/server programming, V4L2, video streaming, OpenCV, Boost, USB audio, Bluetooth A2DP, text‐to‐speech, and the PRU‐ICSS.
SizeL 10.5 MiB
Download Exploring BeagleBone Tools and Techniques for Building with Embedded Linux by Derek Molloy in free pdf format for free.