Have you wondered how information from physical devices in the real world gets communicated to Smartphone processors? Do you want to make informed design decisions about sampling frequencies and bit-width requirements for various kinds of sensors? Do you want to gain expertise to affect the real world with actuators such as stepper motors, LEDs and generate notifications?
In this course, you will learn to interface common sensors and actuators to the DragonBoard™ 410c hardware. You will then develop software to acquire sensory data, process the data and actuate stepper motors, LEDs, etc. for use in mobile-enabled products. Along the way, you’ll learn to apply both analog-to-digital and digital-to-analog conversion concepts.
Learning Goals: After completing this course, you will be able to:
1. Estimate sampling frequency and bit-width required for different sensors.
2. Program GPIOs (general purpose input/output pins) to enable communication between the DragonBoard 410c and common sensors.
3. Write data acquisition code for sensors such as passive and active infrared (IR) sensors, microphones, cameras, GPS, accelerometers, ultrasonic sensors, etc.
4. Write applications that process sensor data and take specific actions, such as stepper motors, LED matrices for digital signage and gaming, etc.

From the lesson

GPIO Programming

Hello everyone and welcome to GPIO Programming! In order for the DragonBoard™ 410c to interact with the world there has to be an interface between them. For the purpose of this project the GPIO interface will serve as a way to sense and interact with the environment. In this lesson we will talk about General Purpose Input/Output pins and why they are important to this project. We will try to define them as well as provide other resources that could help further explain their purpose. In taking a look at the low speed expansion header on the DragonBoard™ 410c we will locate and explain all other GPIO interfaces. Since only the 12 GPIO will be necessary for this course, most of this lesson will focus on them. Once a greater understanding of the GPIO is achieved we will then access them via command prompt be it through a PC host or on board OS such as Ubuntu. Finally in this lesson we will show you how to make your first program/application capable of controlling a GPIO.