Course Outline
Module 0: Foundations & AWS IoT Ecosystem
- Introduction to IoT
- Defining IoT in 2024: Moving beyond simple "Things" to include Edge Intelligence, AI/ML at the Edge, and Cyber-Physical Systems.
- Factors driving IoT growth across industries and specific use cases.
- Leading IoT trends such as Edge Computing, sustainability, AI/ML integration, and enhanced security.
- 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, including device onboarding, configuration management, and OTA updates.
- AWS IoT Analytics for data processing, enrichment, and modeling.
- AWS IoT Greengrass for edge compute, local execution, and secure connectivity.
- AWS IoT Button as a conceptual overview for simple devices.
- Integration Point: Connecting AWS IoT Core to Lambda, DynamoDB, OpenSearch, Step Functions, and SageMaker >.
Module 1: IoT Architecture, Components & Security
- IoT Architecture
- Device Layer: Sensors, actuators, and edge devices such as Raspberry Pi and ESP32.
- Connectivity Layer: Protocols like MQTT, CoAP, HTTP, and LPWAN technologies including LoRaWAN, NB-IoT, Sigfox, and Cellular IoT.
- Cloud Integration Layer: Services like AWS IoT Core, API Gateway, Lambda, and Step Functions.
- Data Processing & Analytics Layer: DynamoDB, Timestream, OpenSearch, S3, Athena, and SageMaker.
- Application Layer: Mobile and web apps built with AWS Amplify, along with custom business applications.
- Significance: Understanding the rationale behind distributed architectures regarding latency, bandwidth, compute power, and security.
- In-Depth Look at Essential IoT Components
- Hardware: Selection criteria (MCU, connectivity, sensors) and security elements like Trusted Execution Environments (TEEs).
- Edge Computing (AWS Greengrass): Advantages such as low latency, reduced cloud traffic, and local decision-making.
- Device Management: Onboarding (via Over-the-Air (OTA) or pre-provisioning), configuration, monitoring, and remote debugging.
- Security Deep Dive: Device identity, authentication & authorization (X.509 Certs, JSON Web Tokens (JWTs)), data encryption (at rest and in transit), and AWS IoT Device Defender.
- Security Standardization: Overview of standards (e.g., IEEE P2145, Open Connectivity Foundation (OCF)) and compliance frameworks (ISO/IEC 27001, SOC 2).
- IoT-Specific PaaS Functions in AWS
- AWS IoT Core for secure MQTT/Bridge, firmware update Jobs, and Device Defender.
- AWS Lambda for serverless compute in data preprocessing and action triggering.
- AWS Step Functions for stateful workflows managing complex device interactions.
- Amazon DynamoDB as a NoSQL database for rapid IoT data ingestion.
- Amazon OpenSearch Service for search, analytics, and time-series data handling.
- Amazon Timestream as a specialized time-series database.
- Amazon S3 for raw data lake storage.
- AWS IoT Device Defender for monitoring and security assessment.
- AWS IoT Wireless for connecting remote LPWAN devices.
Module 2: IoT Device Communication Protocols
- MQTT (MQTT v5 & WebSockets)
- Features of MQTT 5.0, including Retain, Clean Session flags, User Properties, and Wildcard topics.
- Standardization of MQTT over WebSockets.
- Explanation of Quality of Service (QoS) levels.
- Best practices for protocol implementation.
- Alternative Protocols
- CoAP (Constrained Application Protocol) designed for constrained devices.
- AMQP and MQTT over AMQP for standard data interchange formats.
- HTTP for simpler, less frequent update scenarios.
- WebSockets for full-duplex communication.
Module 3: Building Robust IoT Applications with AWS
- Device Onboarding & Secure Connectivity
- Pre-Provisioning with AWS IoT Device Defender.
- Secure Over-The-Air (OTA) onboarding, leveraging concepts from AWS IoT Button.
- Management of device certificates using ACM/PKI.
- Implementation of MQTT with TLS for secure transmission.
- Data Ingestion, Storage & Processing
- Efficiently transmitting data from devices to AWS IoT Core.
- Selecting appropriate targets: Lambda (event-driven), Step Functions (orchestration), Timestream (time-series), OpenSearch (search & analytics), or S3 (raw data).
- Utilizing 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 oversight.
- Implementing and managing OTA Updates via AWS IoT Jobs.
- Performing remote monitoring and configuration adjustments.
- Developing the IoT Backend
- Using API Gateway to create REST/GraphQL APIs for interacting with devices and data.
- Employing AWS Lambda for business logic execution.
- Using AWS Step Functions to coordinate distributed components.
- Utilizing Amazon SQS/SNS for asynchronous messaging and event triggering.
Module 4: Edge Computing & Advanced Integration
- AWS IoT Greengrass
- Core concepts: Greengrass Core, Device, and Connector.
- Executing Lambda functions locally on the device.
- Running code directly on the device using C++ or Python.
- Establishing secure communication between Greengrass Core and AWS/IoT devices.
- Use Case: Local data filtering, preprocessing, or AI inference at the edge.
- Integration with AI/ML
- Utilizing SageMaker for complex ML models in the cloud.
- Performing ML inference at the edge using Greengrass ML Accelerator (GMA).
- Data Visualization & User Interfaces
- Using AWS IoT SiteWise for industrial data visualization.
- Developing web applications with AWS Amplify (API, UI, Authentication).
- Creating dashboards using Amazon QuickSight or OpenSearch Dashboards.
Module 5: Security, Governance & Best Practices
- IoT Security Lifecycle
- Principles of secure design, specifically Defense-in-Depth.
- Secure development practices, referencing the OWASP IoT Top 10.
- Strategies for vulnerability management.
- Threat modeling techniques for IoT systems.
- AWS Security Services for IoT
- Overview of AWS IoT Device Defender (Service and Device Defender).
- Implementation of AWS Shield and AWS Identity and Access Management (IAM).
- Using AWS Config for compliance verification.
- Integration with Hardware Security Modules (HSMs).
- Data Privacy & Governance
- Handling sensitive data, particularly Personally Identifiable Information (PII).
- Policies for data retention and deletion.
- Considerations for regulatory compliance.
Module 6: Hands-on Projects & Capstone
- Guided Practical Labs
- Device Onboarding and MQTT Communication setup.
- Implementing secure data ingestion to AWS.
- Constructing a basic IoT dashboard.
- Simulating an OTA Update process.
- Familiarization with AWS IoT Greengrass.
- Capstone Project
- Develop a comprehensive IoT solution addressing a real-world issue, such as Smart Home Automation, Environmental Monitoring, or an Industrial Sensor Hub.
- Requirements include a secure device, data ingestion, processing, visualization, and an optional edge component.
- Application of AWS services covered throughout the course.
Requirements
Learning Objectives:
Contemporary IoT development is heavily reliant on Platform-as-a-Service (PaaS) infrastructure. Major PaaS providers in the IoT space include Microsoft Azure, AWS IoT (Amazon), Google IoT Cloud, and Siemens MindSphere. It is vital for developers to comprehend the PaaS functionalities necessary for integrating IoT data with broader enterprise ecosystems. In this course, you will undergo practical training using a Raspberry Pi and a multi-sensor TI SensorTag chip, which features ten built-in sensors for measuring motion, ambient temperature, humidity, pressure, light, and more. You will acquire foundational knowledge of IoT functions and learn how to implement them within the AWS IoT PaaS cloud environment using Lambda functions.