Azure IoT Training

Azure IoT Training

Abstract and Learning Objectives

Use the unique benefits of Internet of Things (IoT) to build a smart city solution to help improve traffic and public transportation in New York City. Use a combination of the power of the cloud, along with IoT Edge devices to provide anomaly detection of city buses (engine anomalies and aggressive driving detection), location broadcasting to update bus route status, and to send traffic information to help inform the timing of traffic lights. Traffic lights will also receive new IoT devices that can help detect maintenance and performance issues, such as voltage irregularities. Easily view all of this information through a centralized reporting dashboard provided by Azure Time Series Insights. Use the IoT Remote Monitoring starter solution to manage and simulate IoT devices, set alerts, and view data on a map.

Learning Objectives:

  • Use IoT Hub to manage IoT devices
  • Configure and run the IoT Remote Monitoring starter solution to provision, manage, and simulate telemetry for IoT devices via IoT Hub SDKs, configure alerts on device telemetry, send actions to devices, and view devices on a map
  • Use Azure IoT Edge to collect vehicle telemetry data, detect anomalies with the help of a local Azure Stream Analytics module, and send the summarized data to Azure IoT Hub as needed
  • Create a custom endpoint in IoT Hub to route critical alerts to a Service Bus Queue
  • Create an Azure function that extracts critical alerts from the Service Bus Queue and stores them in Cosmos DB
  • Use Azure Time Series Insights to store, visualize, and query the large amounts of time series data generated by various IoT devices, as well as conduct root-cause analysis and anomaly detection


IoT for Business hands-on lab is an exercise that will challenge you to implement an end-to-end scenario using a supplied sample that is based on IoT Hub, IoT Edge devices, Cosmos DB, Time Series Insights, Service Bus, and related Azure services. The hands-on lab can be implemented on your own, but it is highly recommended to pair up with other members at the lab to model a real-world experience and to allow each member to share their expertise for the overall solution.

Solution Architecture

Azure IoT Training by Flexmind

Image Source: Microsoft


Course Outline

Before the hands-on lab

  • Set up a development environment
  • Disable IE Enhance Security
  • Validate connectivity to Azure
  • Download & explore the solution files

Set up IoT Remote Monitoring Solution environment

  • Execute CLI commands
  • Open new web application and stop running device simulation

Provision additional Azure services

  • Create service bus queue
  • Add consumer group to IoT Hub
  • Add custom endpoint and route to IoT Hub
  • Create custom IoT Hub route
  • Create Azure Time Series Insights instance
  • Provision Azure container registry
  • Provision new Linux virtual machine to run the IoT Edge device

Create bus and traffic light simulated devices, and add alerts and filters

  • Configure the SimulationAgent and WebService projects to run locally
  • Finish configuring the simulated IoT device models and scripts
  • Explore the remaining files to understand what is happening
  • Configure and run the Storage Adapter project
  • Run the Simulator web app and create a new simulation
  • Run the device simulation agent locally
  • Create alerts and filters in the monitoring web app
  • Send jobs to IoT devices

Create IoT Edge device and custom modules

  • Add a new IoT Edge device
  • Install and start the IoT Edge runtime
  • Create and deploy the custom C# IoT Edge module for vehicle telemetry
  • Create the Azure Stream Analytics IoT Edge module
  • Deploy the custom modules to IoT Edge device

Run a console app to view critical engine alerts from the Service Bus Queue

  • Make sure the Service Bus Queue is receiving messages
  • Configure and execute the ReadEngineAlerts solution in Visual Studio 2017

Create Azure Function App to ingest critical engine alerts and store them in Cosmos DB

  • Create new Cosmos DB collection
  • Create a new Function App
  • Create a new Function
  • Add an Azure Cosmos DB output to the messages collection
  • Add an Azure Cosmos DB output to the critical-alerts collection
  • Modify the function code
  • View data stored by the function in Azure Cosmos DB
  • View the critical engine alerts in the IoT Remote Monitoring web interface
  • Add tag to Edge’s device twin and create new filter from it

View all data in Azure Time Series Insights

  • Add your account as a Contributor to the Data Access Policies
  • Go to the Time Series Insights environment and use the data explorer
  • View the simulated and IoT Edge bus data side-by-side
  • Use Perspective View to create a simultaneous view of up to four unique queries
Sharing is Caring
Scroll to Top