• Length:
    4 Weeks
  • Effort:
    2–3 hours per week
  • Price:

    FREE
    Add a Verified Certificate for $99 USD

  • Institution
  • Subject:
  • Level:
    Intermediate
  • Language:
    English
  • Video Transcript:
    English

Prerequisites

Before starting this course, students should understand the following:
  • IoT terminology and business goals
  • Embedded device programming
  • C programming
  • Modern software development tools

About this course

Are you ready to begin developing IoT device applications? Now is your chance. This course will lead you through a series of labs that teach you how to program IoT devices for secure communication with the cloud. You will learn how to create and configure a cloud gateway (IoT hub), how to register, provision, and manage IoT devices, and how to develop and deploy real-world IoT applications. The lab activities in this course are based on real-world scenarios.

The course begins with a quick walkthrough of the cloud gateway options available today and where Azure and the Azure IoT Hub fit in. Next, you create your own IoT Hub and explore features of the IoT Hub Service. You will then learn how to configure the development environment for an MXChip device, register your device with the IoT Hub, and deploy a pre-configured solution that demonstrates how communication between a device and the cloud is implemented.

You will then take a closer look at the Azure IoT SDKs and how to implement secure 2-way communication between devices and the cloud. You will provision a Raspberry Pi device and walk your way through the process of developing a solution as you dig deeper into the code that leverages the SDKs to implement secure communication with the hub. You will also learn how to provision simulated devices using client tools such as Azure CLI and how to preform management tasks while examining aspects of device security.

Next, you will learn about the Device Provisioning Service and how to provision devices at scale. You will also use automated processes to configure device identities and properties at scale. After that, you will examine device management tasks using both device twins and direct methods, and learn why using device twins is the recommended approach. Shifting focus briefly to managing IoT Hub operations, you will learn more about IoT Hub endpoints and message routing.

To finish up this course, you will be tasked with implementing a real-world project scenario. You will evaluate project documentation to determine requirements, develop your project hardware and software, and then apply what you learned during the course to implement the client-side and server-side portions of the solution. You will even look into including Azure IoT Edge in your solution.

What you'll learn

  • Create and manage a cloud gateway
  • Provision a device
  • Implement a simple device to a cloud communication example
  • Examine the IoT Device and Service SDKs
  • Develop a device application that sends telemetry messages to your cloud gateway
  • Configure the local admin tools for Azure IoT 
  • Configure and secure IoT devices
  • Describe device management and how to use device twins and device properties
  • Provision devices using the Device Provisioning Service
  • Automate device configuration and management
  • Manage IoT Hub operations
  • Evaluate solution design goals
  • Implement telemetry data aggregation and batch communications 
  • Archive data for cold path analytics
  • Implement a simple IoT edge device
This course is completely lab-based. There are no lectures or required reading sections. All of the learning content that you will need is embedded directly into the labs, right where and when you need it. Introductions to tools and technologies, references to additional content, video demonstrations, and code explanations are all built into the labs.
 
Some assessment questions will be presented during the labs. These questions will help you to prepare for the final assessment.

The course includes four modules, each of which contains three or more lab activities. The lab outline is provided below.

Module 1: Configure a Cloud Gateway and Devices
  • Lab 1: Creating Your Cloud Gateway
  • Lab 2: Getting Started with Your MXChip AZ3166 Device
  • Lab 3: Implementing Simple Device-to-Cloud Communication
Module 2: Implement Device Communications
  • Lab 1: Exploring the IoT SDKs
  • Lab 2: Developing a Raspberry Pi Device Application
  • Lab 3: Configuring and Securing IoT Hub Devices
Module 3: Manage Your Devices
  • Lab 1: Provisioning Devices
  • Lab 2: Automating Device Configuration and Management
  • Lab 3: Managing IoT Hub Operations
Module 4: Develop Real-World Device Applications
  • Lab 1: Evaluating Solution Design Goals
  • Lab 2: Implementing Device Hardware and Software
  • Lab 3: Archive Data for Cold Path Analytics
  • Lab 4: Getting Started with IoT Edge

Meet your instructors

Chris Howd
Engineer and Software Developer
Microsoft
Matt Dixon
Owner and Founder
Front Range Systems

Pursue a Verified Certificate to highlight the knowledge and skills you gain $99.00

View a PDF of a sample edX certificate
  • Official and Verified

    Receive an instructor-signed certificate with the institution's logo to verify your achievement and increase your job prospects

  • Easily Shareable

    Add the certificate to your CV or resume, or post it directly on LinkedIn

  • Proven Motivator

    Give yourself an additional incentive to complete the course

  • Support our Mission

    EdX, a non-profit, relies on verified certificates to help fund free education for everyone globally

Who can take this course?

Unfortunately, learners from one or more of the following countries or regions will not be able to register for this course: Iran, Cuba and the Crimea region of Ukraine. While edX has sought licenses from the U.S. Office of Foreign Assets Control (OFAC) to offer our courses to learners in these countries and regions, the licenses we have received are not broad enough to allow us to offer this course in all locations. EdX truly regrets that U.S. sanctions prevent us from offering all of our courses to everyone, no matter where they live.