Interfacing with


About this course: Arduino senses the environment by receiving inputs from add-on devices such as sensors, and can control the world around it by adjusting lights, motors, and other actuators. In this class you will learn how and when to use the different types of sensors and how to connect them to the Arduino. Since the external world uses continuous or analog signals and the hardware is digital you will learn how these signals are converted back-and-forth and how this must be considered as you program your device. You’ll also learn about the use of Arduino-specific shields and the shields software libraries to interface with the real world.

Course duration:  3 weeks

Created by:  BrilliantArms, India

Module 1
IoT devices involve a combination of software and hardware. This module provides background on the basics of hardware design and wiring needed to build useful circuits. This module describes the functions of basic passive components and describes how to use them in simple circuits. This module also describes how to wire circuits together using a breadboard. The goal of this module is to enable students to design and implement the circuits they need to interact with basic sensors and actuators.
  1. Lecture 1.1 – Electrical Circuits
  2. Lecture 1.2 – Electrical Properties
  3. Lecture 1.3 – Ohm’s Law
  4. Lecture 2.1 – Electrical Components
  5. Lecture 2.2 – Diodes
  6. Lecture 2.3 – Switches, Potentiometers
  7. Lecture 3.1 – Wiring
  8. Lecture 3.2 – Wiring Demo, Pushbutton
  9. Lecture 3.3 – Wiring Demo, Potentiometer
Module 2

Module 3

This module introduces the use of software libraries with an Arduino sketch. One of the best aspects of the Arduino environment is that the use of good libraries allows a programmer to use complicated hardware without dealing with the complexity. The Arduino environment is supported by many libraries and this module examines the use of several of the more common libraries that allow the use of hardware peripherals in the microprocessor.
  1. Lecture 1.1 – Arduino Libraries
  2. Lecture 1.2 – EEPROM
  3. Lecture 1.3 – Masking
  4. Lecture 2.1 – I2C Communication
  5. Lecture 2.2 – I2C Transactions
  6. Lecture 2.3 – Sending Bits
  7. Lecture 3.1 – Wire Library
  8. Lecture 3.2 – Master Communication
  9. Lecture 3.3 – Slave Operation

Module 4

In this module we’ll examine Arduino shields and how they are used to extend the capabilities of an Arduino-based system. Shields are printed circuit boards that are stacked on top of the Arduino together with libraries that enable the new hardware to be used through an Arduino sketch. We’ll describe the benefits of shields and their basic construction as well as the use of libraries in interfacing with each shield. This module also describes how to connect your IoT device to the Internet using shields. We focus on an Ethernet shield in order to establish a wired network connection, and a WiFi shield to establish a wireless connection.
  1. Lecture 1.1 – Arduino Shields
  2. Lecture 1.2 – Ethernet Shield
  3. Lecture 1.3 – Ethernet Library
  4. Lecture 2.1 – Ethernet Client
  5. Lecture 2.2 – Client Examples
  6. Lecture 2.3 – Ethernet Server
  7. Lecture 2.4 – Ethernet Shield Demo
  8. Lecture 3.1 – WiFi Shield
  9. Lecture 3.2 – WiFi Shield Demo