Mastering Arduino
eBook - ePub

Mastering Arduino

A project-based approach to electronics, circuits, and programming

  1. 372 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Mastering Arduino

A project-based approach to electronics, circuits, and programming

About this book

Mastering Arduino is a practical, no-nonsense guide that will teach you the electronics and programming skills that you need to create advanced Arduino projects.

Key Features

  • Covers enough electronics and code for users at any level
  • Includes complete circuit diagrams for all projects
  • Final robot project combines knowledge from all the chapters

Book Description

Mastering Arduino is an all-in-one guide to getting the most out of your Arduino. This practical, no-nonsense guide teaches you all of the electronics and programming skills that you need to create advanced Arduino projects. This book is packed full of real-world projects for you to practice on, bringing all of the knowledge in the book together and giving you the skills to build your own robot from the examples in this book. The final two chapters discuss wireless technologies and how they can be used in your projects.

The book begins with the basics of electronics, making sure that you understand components, circuits, and prototyping before moving on. It then performs the same function for code, getting you into the Arduino IDE and showing you how to connect the Arduino to a computer and run simple projects on your Arduino.

Once the basics are out of the way, the next 10 chapters of the book focus on small projects centered around particular components, such as LCD displays, stepper motors, or voice synthesizers. Each of these chapters will get you familiar with the technology involved, how to build with it, how to program it, and how it can be used in your own projects.

What you will learn

  • Explains the basics of electronics and circuits along with the Arduino IDE and basic C operations
  • Use sensors to build a mini weather station
  • Control LEDs using code
  • Power a robot arm using stepper motors
  • Remotely control your Arduino using RF, Bluetooth LE, and Bluetooth Classic
  • Make a sound tone generator with buttons

Who this book is for

Mastering Arduino is for anybody who wants to experiment with an Arduino board and build simple projects. No prior knowledge is required, as the fundamentals of electronics and coding are covered in this book as well as advance projects.

Tools to learn more effectively

Saving Books

Saving Books

Keyword Search

Keyword Search

Annotating Text

Annotating Text

Listen to it instead

Listen to it instead

Information

Bluetooth LE

In this book so far, all external communication with our Arduino projects has been in a closed environment. By closed environment, we mean that our project simply received information or direction from a remote control and no information was transmitted out from the project. There are numerous use cases where we need to transmit information from our Arduino project to an external device such as a smartphone or other IoT device. When there is a need such as this, one of the first technologies that is brought up is Bluetooth Low Energy, also known as Bluetooth LE or Bluetooth Smart.
In this chapter, you will learn:
  • What Bluetooth LE is
  • How the Bluetooth LE radio works
  • What the GAP profile is
  • What the GATT profile is
  • How to use the HM-10 Bluetooth LE radio module with the Arduino

Introduction

One of the most common misunderstandings of Bluetooth LE by people that are not familiar with the technology is that Bluetooth LE is a lightweight subset of Bluetooth Classic. This is not true, as Bluetooth Classic and Bluetooth LE are two fundamentally different protocols with different design goals.
Most wireless technologies, such as Wi-Fi and Bluetooth Classic, were designed to satisfy a wide range of use cases; however, the design of Bluetooth LE is a bit different. Originally created by Nokia and known as Wibree, the primary design focus of Bluetooth LE was to create a radio standard with the lowest possible power consumption and optimized for low cost, low complexity, and low bandwidth.
Bluetooth LE specifications were released as part of the Bluetooth 4.0 Core specifications in June of 2010. The Bluetooth Core Specifications are overseen and updated by the Bluetooth Special Interest Group (SIG).
You can find information about Bluetooth and download the specifications from their site at https://www.bluetooth.com; however, at over 2500 pages, I would recommend that you read this chapter instead of the Bluetooth specifications unless you are looking for help with insomnia.
The adoption rate of Bluetooth LE has been much faster than most other wireless technologies. The reason for this is the adoption of the Bluetooth LE standard in the mobile industry where Apple and Google have put significant effort into including reliable Bluetooth LE stacks with the iOS and Android operating systems and developing easy-to-use-and-understand Bluetooth LE APIs for developers. This makes it very easy for developers to create and interact with devices that have Bluetooth LE radios.
The reason that the mobile industry has been pushing for the adoption of Bluetooth LE is that devices that connect using Bluetooth LE consume far less power, hence the name Bluetooth Low Energy, as compared to other wireless technologies such as Bluetooth Classic and Wi-Fi. This leads to longer battery life for their phones, which leads to happier customers.
Bluetooth devices come in three types, where each type supports either Bluetooth Classic, Bluetooth LE or both. The following chart shows what each type supports:
Device Type
Bluetooth Classic Support
Bluetooth LE Support
Pre-4.0 Bluetooth
Yes
No
Single-Mode
No
Yes
Dual-Mode
Yes
Yes
While the Bluetooth 5.0 specifications were released in June of 2016, at the time this book is being written, there are very few Bluetooth modules for the Arduino that support this new specification. In fact, at this time, there is very little support for the Bluetooth 4.1 or 4.2 specifications either; therefore, in this book, we are going to focus on the Bluetooth 4.0 specifications, knowing that Bluetooth 5.0, 4.2 and 4.1 are all backward compatible with this standard.
In order to design IoT devices that use Bluetooth LE we really need to understand the technology so we know when actually to use it. Therefore, we will delve into this technology a lot further than we have with other technologies in this book. We will start off by looking at the radio specifications.

Bluetooth LE radio

Since we will be using Bluetooth LE 4.0 for all the projects in this book, the following specifications are for this standard:
Range
Up to 100 meters
Radio Frequency
2.402 - 2.481 GHz
Radio Channels
40 (37 data and 3 advertising)
Maximum OTA Data Rate
1 Mbit/s
Application Data Throughput
0.125 Mbit/s
Network Topologies
Point-to-Point
Network Standard
IEEE 802.15.1
Bluetooth LE has a maximum range of 100 meters, but this is very dependent on the surroundings. When the connected devices are indoors, the range will be dramatically reduced due to walls and other obstacles that the radio s...

Table of contents

  1. Title Page
  2. Copyright and Credits
  3. Dedication
  4. Packt Upsell
  5. Contributors
  6. Preface
  7. The Arduino
  8. Basic Electronics
  9. Circuit Diagrams
  10. Basic Prototyping
  11. Arduino IDE
  12. Programming the Arduino - The Basics
  13. Programming the Arduino - Beyond the Basics
  14. Motion Sensor
  15. Environment Sensors
  16. Obstacle Avoidance and Collision Detection
  17. Fun with Lights
  18. Fun with Sound
  19. Using LCD Displays
  20. Speech Recognition and Voice Synthesizing
  21. DC Motors and Motor Controllers
  22. Servo Motors
  23. Using a Relay
  24. Remotely Controlling the Arduino
  25. Creating a Robot
  26. Bluetooth LE
  27. Bluetooth Classic
  28. Another Book You May Enjoy

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn how to download books offline
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 990+ topics, we’ve got you covered! Learn about our mission
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more about Read Aloud
Yes! You can use the Perlego app on both iOS and Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app
Yes, you can access Mastering Arduino by Jon Hoffman in PDF and/or ePUB format, as well as other popular books in Computer Science & Computer Science General. We have over one million books available in our catalogue for you to explore.