You are previewing Exploring BeagleBone: Tools and Techniques for Building with Embedded Linux.
O'Reilly logo
Exploring BeagleBone: Tools and Techniques for Building with Embedded Linux

Book Description

In-depth instruction and practical techniques for building with the BeagleBone embedded Linux platform

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.

The BeagleBone's small size, high performance, low cost, and extreme adaptability have made it a favorite development platform, and the Linux software base allows for complex yet flexible functionality. The BeagleBone has applications in smart buildings, robot control, environmental sensing, to name a few; and, expansion boards and peripherals dramatically increase the possibilities. Exploring BeagleBone provides a reader-friendly guide to the device, including a crash course in computer engineering. While following step by step, you can:

  • Get up to speed on embedded Linux, electronics, and programming

  • Master interfacing electronic circuits, buses and modules, with practical examples

  • Explore the Internet-connected BeagleBone and the BeagleBone with a display

  • Apply the BeagleBone to sensing applications, including video and sound

  • Explore the BeagleBone's Programmable Real-Time Controllers

  • Hands-on learning helps ensure that your new skills stay with you, allowing you to design with electronics, modules, or peripherals even beyond the BeagleBone. Insightful guidance and online peer support help you transition from beginner to expert as you master the techniques presented in Exploring BeagleBone, the practical handbook for the popular computing platform.

    Table of Contents

    1. Introduction
      1. Why the BeagleBone Black?
      2. How This Book Is Structured
      3. Conventions Used in This Book
      4. What You'll Need
      5. Errata
      6. Digital Content and Source Code
    2. Part I BeagleBone Basics
      1. Chapter 1 The BeagleBone Hardware
        1. Introduction to the Platform
        2. BeagleBone Documentation
        3. The BeagleBone Hardware
        4. BeagleBone Accessories
        5. Capes
        6. How to Destroy Your BeagleBone!
        7. Summary
        8. Support
        9. Notes
      2. Chapter 2 The BeagleBone Black Software
        1. Linux on the BeagleBone
        2. Communicating with the BBB
        3. Controlling the BeagleBone
        4. Node.js, Cloud9, and BoneScript
        5. Summary
        6. Further Reading
      3. Chapter 3 Exploring Embedded Linux Systems
        1. Embedded Linux Basics
        2. Booting the BeagleBone
        3. Managing Linux Systems
        4. Git
        5. Desktop Virtualization
        6. Code for This Book
        7. Summary
        8. Further Reading
      4. Chapter 4 Interfacing Electronics
        1. Recommended Equipment
        2. Basic Circuit Principles
        3. Discrete Components
        4. Logic Gates
        5. Analog‐to‐Digital Conversion
        6. Concluding Advice
        7. Summary
        8. Further Reading
        9. Notes
      5. Chapter 5 Practical BeagleBone Programming
        1. Introduction
        2. Scripting Languages
        3. JavaScript and Java
        4. C and C++ on the BeagleBone
        5. C++ with Classes
        6. Summary
        7. Further Reading
        8. Notes
    3. Part II Interfacing, Controlling, and Communicating
      1. Chapter 6 Interfacing to the BeagleBone Input/Outputs
        1. General-Purpose Input/Outputs
        2. The Linux Device Tree
        3. Analog Inputs and Outputs
        4. Advanced GPIO Topics
        5. Summary
        6. Further Reading
        7. Notes
      2. Chapter 7 Cross‐Compilation and the Eclipse IDE
        1. Setting Up a Cross‐Compilation Toolchain
        2. Cross‐Compilation with Third‐Party Libraries (Multiarch)
        3. Installing a Change Root
        4. Cross‐Compilation Using Eclipse
        5. Building Debian for the BBB
        6. Summary
        7. Further Reading
      3. Chapter 8 Interfacing to the BeagleBone Buses
        1. Introduction to Bus Communication
        2. I<sup xmlns="" xmlns:epub="" xmlns:m="" xmlns:svg="">2</sup>CC
        3. SPI
        4. UART
        5. Logic‐Level Translation
        6. Summary
        7. Further Reading
        8. Note
      4. Chapter 9 Interacting with the Physical Environment
        1. Interfacing to Actuators
        2. Interfacing to Analog Sensors
        3. Interfacing to Display Modules
        4. Remote Control BeagleBone
        5. Building Dynamic Linked Libraries
        6. Summary
        7. Further Reading
        8. Notes
    4. Part III Advanced BeagleBone Systems
      1. Chapter 10 The Internet of Things
        1. The Internet of Things (IoT)
        2. More Sensors (Things!)
        3. The BeagleBone as a Web Server
        4. A C/C++ Web Client
        5. The BeagleBone as a Web Sensor
        6. The C++ Client/Server
        7. Managing Remote IoT Devices
        8. IoT Physical Networking
        9. Summary
        10. Further Reading
        11. Notes
      2. Chapter 11 BeagleBone with a Rich User Interface
        1. Rich UI BBB Architectures
        2. Rich UI Application Development
        3. Qt Primer
        4. Remote UI Application Development
        5. Cross‐Compiling Qt Applications
        6. Summary
        7. Further Reading
        8. Notes
      3. Chapter 12 Images, Video, and Audio
        1. Capturing Images and Video
        2. Streaming Video
        3. Image Processing and Computer Vision
        4. BeagleBone Audio
        5. Summary
        6. Further Reading
      4. Chapter 13 Real‐Time BeagleBone Interfacing
        1. Real‐Time BeagleBone
        2. The PRU‐ICSS Architecture
        3. Getting Started with the PRU‐ICSS
        4. The PRU‐ICSS in Detail
        5. Applications of the PRU‐ICSS
        6. Additional PRU‐ICSS Tools
        7. Summary
        8. Further Reading
        9. Notes
    5. Titlepage
    6. Copyright
    7. Dedication
    8. About the Author
    9. About the Technical Editors
    10. Credits
    11. Acknowledgments
    12. End User License Agreement