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.
  • Similarly, if temp > 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.

We can help transform your business and make it future-ready

Get expert assistance with our wide range of Cloud and IoT offerings.