Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.

Module Name: Overview of IoT and High level Architecture

  • Objectives:
  • To walk though technology timeline(brief history) and evolution of IoT
  • Gain knowledge about IoT applications across various segments
  • Understand IoT architecture and its building blocks
  • Introduction to various IoT platforms
  • Understand the technology and skills required in building and IoT product. 
  • Detailed course contents:
  • What Is the Internet of Things (IoT)? 
  • Brief History and evolution of IoT 
  • IoT Architecture 
  • Trends in the Adoption of IoT
  • IoT Is Powerful and Pervasive
  • Societal Benefits of IoT
  • Risks, Privacy, and Security

Module (2/8)

Module Name: Setting up IoT Workflow

  • Objectives:
  • Setup IoT platforms, by understanding the knowledge gained in the previous module
  • Become familiar with the building blocks in IoT architecture
  • Implement IoT use cases using various IoT platforms
  • Detailed course contents:
  • Setup IoT Platform1 (Opensource IoT Platform on local machine)
  • Setup IoT Platform2 (Amazon IoT platform)
  • IoT Use case-1 Implementation on two platforms
  • Opensource IoT platform
  • Amazon IoT cloud)
  • IoT Usecase-2 Implementation
  • Opensource IoT platform
  • Amazon IoT cloud

Module (3/8)

Module Name: Advanced / Embedded C Programming

  • Objectives:
  • Clearly understand concepts of C language 
  • To obtain good quality and style in programming
  • Gear you up for programming in Embedded environment
  • To induce confidence in you!

 

  • Detailed course contents:
  • Basics of C:
    • Operators
    • Conditionals
  • Arrays
  • Functions
  • Advanced C programming:
  • Structures
  • Unions
  • Files
  • Deep dive into pointers
  • Pre-processor directives
  • Recursion
  • Project environment – Creating & Building a project, Makefiles
  • Deep dive – Logic to program translation, Creating your own library, Dry-run
  • Introduction to Data Structures

Module (4/8)

Module Name: Micro-controller programming using Arduino platform

  • Objectives:
  • Understand Embedded Systems and its components
  • Learn how to build embedded applications using Arduino Platform
  • Become familiar with hardware interfacing using Arduino
  • Should be able to read device datasheets and board schematics
  • Learn basic communication protocols and communicate using Arduino Libraries
  • Build IoT applications using wired and wireless protocols (ex: Bluetooth, Wifi)
  • Debug applications using Arduino IDE

  • Detailed course contents:
  • Overview of Embedded Systems
  • Components of Embedded Systems
  • Micro-controller Architecture and Properties
  • Installing and Setting up the Arduino development environment
  • Blinky Sketch – A walk through
  • Arduino Sketches
  • Classes
  • Sketch Structure
  • Pins
  • Arduino Shields
  • Hands-on working with GPIOs, Analog I/Os, Memory usage
  • Micro controller peripherals usage – Timers, Counters, Interrupts and its sources
  • Communication protocols I – UART, SPI, I2C, CAN

 

  • Interfacing IoT sensors and Actuators

 

  • Debug applications using Arduino IDE

 

  • Communication protocols II – Wired and Wireless communication

 

  • Ethernet Client Server Implementation
  • Build WiFi Application
  • Build Bluetooth Application

Module (5/8)

Module Name: Programming with Python

Objectives:

  • Become a professional python programmer

 

  • Learn basic to advanced features of Python programming language

 

  • Build object oriented programs using python
  • Work with file streams, access csv files

 

  • Create packages, Implement exception handles and learn to debug python application

 

  • Learn basics of regular expressions

 

  • Detailed course contents:
  • Overview of Programming with Python

 

  • Native Datatypes and Operators

 

  • Python Statements and Conditionals

 

  • Functions
  • Strings

 

  • Object oriented programming with Python

 

  • Errors and Exception Handling

 

  • File handing

 

  • Regular expression

 

  • Modules and Packages

Electrocus solution  Certified IoT

NOW FOR      SIMPLIFIED SOLUTIONS

Module (6/8)

Module Name: Building IoT Applications using Raspberry Pi

  • Objectives:
  • Become familiar with Raspberry Pi (Rpi) hardware

 

  • Setup and Install Raspbian OS on Rpi

 

  • Understand how Rpi can be leveraged as an IoT gateway

 

  • Become familiar with Linux OS

 

  • Setup Rpi as an IoT gateway
  • Using Python Interface with Arduino using Serial Port Interface

 

  • Build Socket applications to communicate to Arduino device using Ethernet, Wifi and Bluetooth interfaces

 

  • Build IoT applications using HTTP and MQTT protocols
  • Learn to use Node Red programming tool

 

  • Detailed course contents:
  • Overview of Raspberry Pi (RPi) hardware platform
  • Peripherals on Rpi

 

  • Setup and Install Raspbian OS on Rpi

 

  • Overview of Linux OS and its sub-systems

 

  • Process
  • Memory Mangement
  • Multi-Threading
  • IPC
  • Linux CLI and important commands
  • Linux File System

 

  • Everything is a file concept in Linux
  • Device Access using system calls
  • Install packages on Raspbian OS

 

  • Setting up Raspbian as an IoT gateway

 

  • Write Python program to interface with Arduino using serial libraries

 

  • IoT Communication Models and Protocols

 

  • Request-Response, Publish-Subscribe, Push-Pull, Exclusive Pair
  • Application Protocols: HTTP, CoAP, MQTT, AMQP

 

  • Communication APIs: REST-based, WebSocket-based

 

  • Network Layer: IPv4, IPv6, 6LoWPAN
  • Building python based programs to communicate to cloud server using various application protocols

 

  • Develop a complete python based application IoT application

 

  • Rpi as a device

 

  • Interfacing with sensors and actuators using GPIO pins

 

  • Interfacing with camera on Rpi

Electrocus solution  Certified IoT

NOW FOR                                             SIMPLIFIED SOLUTIONS

Module (7/8)

Module Name: IoT Cloud Infrastructure

  • Objectives:
  • To understand IoT cloud infrastructure blocks

 

  • Making right IoT platform choice by understanding various popular platforms

 

  • Configuring IoT platforms to get required analytics
  • Learn integration elements (ex: REST APIs) for devices

 

  • Detailed course contents:
  • IoT cloud building blocks
  • Using the platform specific dashboards

 

  • Device configuration and addressing

 

  • IoT Platforms in detail

 

  • MQTT Server

 

  • Injection Engine

 

  • Time Series database

 

  • Rules Engine

 

  • Data monitoring, visualization and IoT Analytics

 

  • Rest API interface
  • Device Management

 

  • Application Service

Module (8/8)

Module Name: Performance and Security in IoT

  • Objectives:
  • Learn how to benchmark IoT applications and platforms

 

  • Understand the security risks in IoT, counter measures and design consideration

 

  • Get an understanding of using crytography in IoT

 

  • Detailed course contents:
  • Benchmarking IoT applications and Platforms
  • MQTT vs HTTP performance

 

  • Security considerations

 

  • Firmware updates

 

  • Cryptography basics

 

  • Cryptography in IoT
  • Privacy considerations and design guideline