IoT & Edge
AWS IOT: New Era of Home Automation

Introduction
AWS IoT Greengrass is software that elongate cloud capabilities to local devices. This enables devices to collect and analyse data closer to the source of information, react autonomously to local events, and communicate with each other on local networks with security. Local devices can also securely communicate with AWS IoT and export IoT data to the AWS Cloud. Free RTOS is an open source, real-time operating system for microcontrollers that makes small, low-power edge devices easy to program, deploy, secure, connect, and manage. FreeRTOS includes a kernel and a growing set of software libraries suitable for use across industry sectors and applications. This includes securely connecting your small, low-power devices to AWS cloud services like AWS IoT Core or to more powerful edge devices running AWS IoT Greengrass. FreeRTOS is built with an emphasis on reliability and ease of use.
The following diagram shows the basic architecture of AWS IoT Greengrass.

With AWS IoT Greengrass customers can build IoT devices and application logic. Specifically, AWS IoT Greengrass enables cloud-based management of application logic that runs on devices. Locally deployed Lambda functions and connectors are triggered by local events, messages from the cloud, or other sources. In AWS IoT Greengrass, devices securely communicate on a local network and exchange messages with each other without having to connect to the cloud. AWS IoT Greengrass provides a local pub/sub message manager that can intelligently buffer messages if connectivity is lost so that inbound and outbound messages to the cloud are preserved.
AWS IoT Greengrass consists of:
- AWS IoT Greengrass Core
- AWS IoT Device SDK
- AWS IoT Greengrass SDK
Building an AWS Greengrass:
Step 1: Establish a Greengrass core
AWS IoT Greengrass Connectors allow users to easily build complex workflows on AWS IoT Greengrass without having to worry about understanding device protocols, managing credentials or interacting with external APIs.Deployment and local execution of connectors and Lambda functio takes palce through Greengrass Core.It Process data streams locally with automatic exports to the AWS Cloud.
Step 2: Building a group
Once the core is established, we can continue to add devices to the group that are themselves on the cloud, or other devices which are AWS IoT provisioned, or AWS Lambda functions – which are essentially simple programs that can process or respond to data.

An AWS IoT Greengrass group is a collection of settings and components, such as an AWS IoT Greengrass core, devices, and subscriptions. Groups are used to define a scope of interaction. For example, a group might represent one floor of a building, one truck, or entire warehouse. The following diagram shows the components that can make up a Greengrass group.

Step 3: Code the Group
Once deployed, the core and devices can communicate, even without a internetconnection.IoT vs. AWS IoT Greengrass:The IoT (Internet of things) is a network of connected devices called “Things” that are connected to a cloud server (a fit-bit or a fridge or a thermal sensor could be a “thing”). Data aggregated from these things on to the cloud server, data could be monitored in real-time and react/respond immediately.

Use Case: Home Automation Using AWS IoT
For our use case, following services are used:
- AWS IoT
- AWS Greengrass
- AWS SQS
- AWS S3
- Kinesis Data Stream
- Free RTOS
- AWS EC2

- In Home Automation system, all Free RTOS end node devices are connected to IoT core. Free RTOS is an open source, real time operating system for Microcontrollers that makes small, low power edge devices. AWS Greengrass Core can interact directly with cloud even with intermittent internet connectivity.
- On subscribed topic data will get published on IoT Core.
- Then this data will be stream through Amazon Kinesis Data Streams (KDS) which is a massively scalable and durable real-time data streaming service. The data collected is available in milliseconds to enable real-time analytics use cases such as real-time dashboards.
- 60-degree (value can change according to application to application) data will send to AWS SQS. Amazon Simple Queue Service (SQS) is a fully managed message queuing service which will send message to Web applications, Mobile devices or on any subscription.
- Data will be store in Influx DB which is fast, high-availability storage and retrieval of time series data in fields such as operations monitoring, application metrics, Internet of Things sensor data, and real-time analytics.
- This data can be used for further analysis, switching and controlling automated equipment of automated Home. Using this technology all devices in home can be manage from one place.
Rushabh Sudame
Continue exploring
Related articles
AWS IoT TwinMaker Simplified
Introducing the AWS IoT TwinMaker Simplified, a game-changing innovation that simplifies the creation, tactics, management, and deployment of digital twins.
AWS IoT SiteWise: Explained
AWS IoT SiteWise is a managed service that allows you to collect, analyze and visualize data from industrial equipment at scale. Get more insights from Flentas!
Real Time Graph using AWS Services (Part 2)
AWS real-time analytics tutorial: In this tutorial learn how to setup server-side logic. Explore all steps including AWS Services setup, Backend and Frontend.

