Course Outline
Module 0: Foundations & AWS IoT Ecosystem
- Introduction to IoT
- Defining IoT in 2024: Moving beyond "Things" to include Edge Intelligence, AI/ML at the Edge, and Cyber-Physical Systems.
- Key drivers of IoT adoption across various industries and use cases.
- Emerging trends such as Edge Computing, sustainability, AI/ML integration, and enhanced security measures.
- The position of AWS IoT within the wider AWS ecosystem, including resources from the AWS Partner Network (APN).
- Overview of the AWS IoT Service Landscape
- AWS IoT Core (covering MQTT/Bridge, Jobs, and Device Defender).
- AWS IoT Device Management (handling Device Onboarding, Configuration Management, and OTA Updates).
- AWS IoT Analytics (focusing on data processing, enrichment, and modelling).
- AWS IoT Greengrass (enabling Edge compute, local execution, and secure connectivity).
- AWS IoT Button (a conceptual overview for simple device interactions).
- Integration path: AWS IoT Core connected to Lambda/DynamoDB/OpenSearch/Step Functions/SageMaker via >.
Module 1: IoT Architecture, Components & Security
- IoT Architecture
- Device Layer (including Sensors, Actuators, and Edge Devices such as Raspberry Pi and ESP32).
- Connectivity Layer (covering MQTT, CoAP, HTTP, and LPWAN standards like LoRaWAN, NB-IoT, Sigfox, and Cellular IoT).
- Cloud Integration Layer (utilising AWS IoT Core, API Gateway, Lambda, and Step Functions).
- Data Processing & Analytics Layer (employing DynamoDB, Timestream, OpenSearch, S3, Athena, and SageMaker).
- Application Layer (Mobile and Web Apps using AWS Amplify, plus Custom Business Apps).
- Context: Explaining the rationale behind distributed architectures, focusing on latency, bandwidth, compute power, and security.
- In-depth Look at Essential IoT Components
- Hardware: Selection criteria (MCU, connectivity, sensors) and security elements (such as Trusted Execution Environments - TEEs).
- Edge Computing (via AWS Greengrass): Highlighting benefits like low latency, reduced cloud traffic, and local decision-making.
- Device Management: Covering Onboarding (Over-the-Air - OTA, Pre-provisioning), Configuration, Monitoring, and Remote Debugging.
- Security Deep Dive: Focusing on Device Identity, Authentication & Authorization (X.509 Certs, JSON Web Tokens - JWTs), Data Encryption (at rest and in transit), and AWS IoT Device Defender.
- Security Standardisation: Introduction to relevant standards (e.g., IEEE P2145, Open Connectivity Foundation - OCF) and compliance frameworks (ISO/IEC 27001, SOC 2).
- AWS-Specific PaaS Functions for IoT
- AWS IoT Core (providing Secure MQTT/Bridge, Jobs for firmware updates, and Device Defender).
- AWS Lambda (offering Serverless compute for data preprocessing and triggering actions).
- AWS Step Functions (managing Stateful workflows for complex device interactions).
- Amazon DynamoDB (a NoSQL DB designed for fast IoT data ingestion).
- Amazon OpenSearch Service (for Search & Analytics and Time Series data handling).
- Amazon Timestream (a specialised time-series database).
- Amazon S3 (for Raw data lake storage).
- AWS IoT Device Defender (for monitoring and security assessment).
- AWS IoT Wireless (facilitating connection for remote LPWAN devices).
Module 2: IoT Device Communication Protocols
- MQTT (MQTT v5 & WebSockets)
- Key features of MQTT 5.0 (including Retain, Clean Session flags, User Properties, and Wildcard topics).
- Implementing MQTT over WebSockets (Standardisation aspects).
- Explanation of Quality of Service (QoS) Levels.
- Best practices for protocol implementation.
- Alternative Protocols
- CoAP (Constrained Application Protocol) suitable for constrained devices.
- AMQP / MQTT over AMQP (Standard data interchange formats).
- HTTP (Ideal for simpler, less frequent updates).
- WebSockets (enabling Full-duplex communication).
Module 3: Building Robust IoT Applications with AWS
- Device Onboarding & Secure Connectivity
- Pre-Provisioning using AWS IoT Device Defender.
- Secure Over-The-Air (OTA) Onboarding (drawing on AWS IoT Button concepts).
- Managing Device Certificates (via ACM/PKI).
- Implementing MQTT with TLS encryption.
- Data Ingestion, Storage & Processing
- Efficiently transmitting data from devices to AWS IoT Core.
- Selecting the appropriate target: Lambda (event-driven), Step Functions (orchestration), Timestream (time-series), OpenSearch (search & analytics), or S3 (raw data).
- Utilising AWS IoT Analytics for data enrichment and cleansing prior to storage.
- Managing high-throughput scenarios using Kinesis/Firehose.
- Device Management & Operations
- Leveraging AWS IoT Device Management for fleet operations.
- Implementing and managing OTA Updates (using AWS IoT Jobs).
- Conducting Remote Monitoring and Configuration.
- Constructing the IoT Backend
- Using API Gateway to create REST/GraphQL APIs for interacting with devices and data.
- Implementing business logic with AWS Lambda.
- Coordinating distributed components with AWS Step Functions.
- Utilising Amazon SQS/SNS for asynchronous messaging and event triggering.
Module 4: Edge Computing & Advanced Integration
- AWS IoT Greengrass
- Core concepts (Core, Device, and Connector).
- Executing Lambda functions locally on the device.
- Running code directly on the device (using C++ or Python).
- Ensuring secure communication between Greengrass Core and AWS/IoT devices.
- Use Cases: Local data filtering, preprocessing, or AI inference at the edge.
- Integration with AI/ML
- Deploying complex ML models in the cloud using SageMaker.
- Performing ML inference at the edge using the Greengrass ML Accelerator (GMA).
- Data Visualization & User Interfaces
- Employing AWS IoT SiteWise for industrial data visualisation.
- Developing Web Apps with AWS Amplify (covering API, UI, and Authentication).
- Creating dashboards using Amazon QuickSight or OpenSearch Dashboards.
Module 5: Security, Governance & Best Practices
- IoT Security Lifecycle
- Principles of Secure Design (focusing on Defense-in-Depth).
- Secure Development Practices (referencing the OWASP IoT Top 10).
- Strategies for Vulnerability Management.
- Threat Modelling specifically for IoT environments.
- AWS Security Services for IoT
- AWS IoT Device Defender (both Service & Device Defender components).
- Utilising AWS Shield and AWS Identity and Access Management (IAM).
- Performing compliance checks with AWS Config.
- Integration with Hardware Security Modules (HSMs).
- Data Privacy & Governance
- Handling sensitive data (including PII).
- Establishing Data Retention and Deletion policies.
- Addressing Compliance considerations.
Module 6: Hands-on Projects & Capstone
- Guided Hands-on Labs
- Device Onboarding and MQTT Communication.
- Implementing Secure Data Ingestion to AWS.
- Creating a Simple IoT Dashboard.
- Simulating OTA Updates.
- Introduction to AWS IoT Greengrass.
- Capstone Project
- Developing a complete IoT solution addressing a real-world issue (e.g., Smart Home Automation, Environmental Monitoring, or Industrial Sensor Hub).
- Requirements: A secure device, data ingestion, processing, visualisation, and an optional edge component.
- Applying AWS services covered throughout the course.
Requirements
Purpose:
Contemporary IoT development heavily relies on Platform-as-a-Service (PaaS) infrastructure. Prominent PaaS platforms in the IoT space include Microsoft Azure, AWS IoT (Amazon), Google IoT Cloud, and Siemens MindSphere. It is crucial for developers to comprehend the PaaS functionalities necessary for integrating IoT data with broader ecosystems. During this course, you will engage in hands-on training using a Raspberry Pi paired with a multi-sensor TI SensorTag chip, which features ten built-in sensors including motion, ambient temperature, humidity, pressure, and a light meter. You will master the fundamentals of IoT operations and learn how to implement these functions within the AWS IoT PaaS cloud environment using Lambda functions.