An earlier blog made the Case for Edge Computing in IoT describing various capabilities and how they can be used to design and implement better IoT solutions. In particular, a differentiation was made between Basic Edge computing that can bi implemented in IoT Device microcontrollers or SOCs (System on a Chip) and Advanced Edge computing implemented on more powerful Device/System processors or embedded boards will full-fledged operating systems. As described in the earlier blog, both types of Edge computing can accommodate the same IoT data processing and control while Advanced allows for more sophisticated capabilities. IoT solution specific capabilities like data encryption, security, device authentication, management and updates require integration with IoT data handling platforms and/or applications. These can of course be developed as part of an IoT device through programming and/or use of software packages. Unfortunately, the complexity of this development combined with IoT applications and management function integration add substantial challenges, time and costs to the overall IoT solution development. To mitigate these challenges there are two approaches available. The first is to use IoT device-oriented software agents available on the market to simplify device development. This still leaves integration with IoT applications and functions. The second is to use IoT device software agents already integrated with an IoT platform. Such agents are available as part of the leading IoT platform providers like AWS, Azure and others.

AWS Edge Computing

As part of its IoT cloud computing offering, AWS spearheaded the integration of two IoT edge processing offerings with the AWS IoT Core cloud computing platform: FreeRTOS as operating system for embedded microcontrollers and SOCs For Basic Edge computing, and Greengrass as IoT agent for embedded solutions that have full-fledged operating systems for Advanced Edge computing. Both are closely integrated with the AWS IoT Core platform providing functions for Device Management, Provisioning & Updates, Security, Gateway Implementation, Device Shadow and more. They are license free and open source. A closer look at each will highlight their use cases and specific capabilities:

FreeRTOS is a market-leading real-time operating system (RTOS) for microcontrollers and small microprocessors. Distributed freely under the MIT open-source license, FreeRTOS includes a tiny power-saving kernel with modular libraries and a growing set of IoT libraries suitable for use across all industry sectors. It is also part of the AWS IoT Reference Architecture with libraries to implement clients for AWS IoT specific value add cloud services, including over the air updates (OTA). These libraries are suitable for building smart microcontroller-based devices that connect and integrated with the AWS IoT cloud: Libraries include:

  • OTA – Over the Air Update)
  • Device Shadow = Persistent virtual representation of a connected device
  • Jobs – Service notifying devices of scheduled tasks
  • Device Defender – Monitors security metrics
  • Fleet provisioning – Provisioning new devices without need for device certificates.
  • Signature and authorization header that complies with cloud signing process.

To further support development and integration there are:

  • A family of IoT microcontroller device development boards supporting NXP, STM and Espressif MCUs. Allowing for quick connectivity and device messaging speeding up integration of IoT device.
  • AWS Cloud Connectivity Integration tools
  • AWS Cloud IoT Platform Integration tools

FreeRTOS simplifies the development of IoT devices using microcontrollers or SOCs by combining state of the art RTOS and libraries for integration with and connectivity to ASW IoT cloud platform using a standard embedded C development environment.

AWS IoT Greengrass is an IoT gateway platform allowing customers to develop IoT devices and systems incorporating:

  • Connectors with built-in integration with local services, protocols, and software
  • Lambda runtime IoT data processing
  • Data Stream management
  • Message management
  • Local resource access
  • Local machine learning inference

Greengrass provides the following functionality:

  • Deployment and the local running of connectors and Lambda functions.
  • Process data streams locally with automatic exports to the AWS Cloud.
  • MQTT messaging over the local network between devices, connectors, and Lambda functions using managed subscriptions.
  • MQTT messaging between AWS IoT and devices, connectors, and Lambda functions using managed subscriptions.
  • Secure connections between devices and the AWS Cloud using device authentication and authorization.
  • Local shadow synchronization of devices. Shadows can be configured to sync with the AWS Cloud.
  • Controlled access to local device and volume resources.
  • Deployment of cloud-trained machine learning models for running local inference.
  • Automatic IP address detection that enables devices to discover the Greengrass core device.
  • Group Management with central deployment of new or updated group configuration. After the configuration data is downloaded, the core device is restarted automatically.
  • Secure, over-the-air (OTA) software updates of user-defined Lambda functions.
  • Secure, encrypted storage of local secrets and controlled access by connectors and Lambda functions.

AWS IoT Greengrass is closely integrated with the AWS IoT Core cloud service extending its benefits to the edge. It can operate in a stand-alone mode with a device shadow in the cloud that is updated when connected. It runs on embedded Linux and Microsoft operating systems allowing for integration with existing embedded computing environments and development environments and tools.

Conclusion

There are several advantages in selecting IoT Edge Computing solutions that are fully integrated with the IoT Data Handling platform of choice. Foremost among them are design and development time and access to IoT capabilities already developed by the cloud platform provider including data/device security, device management and integrated data processing functions. In the case of gateway agents, it can provide access to the same advanced functions and capabilities as the platform. In the case of AWS this includes edge implementation of ML and AI as well as integrated access to all AWS cloud computing capabilities.

Triotos rapid IoT onboarding solution can be fully integrated with your IoT device development using FreeRTOS or AWS IoT Greengrass allowing you to quickly develop and integrate complete IoT solutions in record time. Our platform allows you to simulate your devices while you are developing them allowing you to focus on IoT application value instead of trying to get your solution to work. As part of our service, we advise you on how to incorporate the right and best AWS Edge Processing solution that meets your needs. If the choice is Greengrass, we provide guidance and integration with one of the leading embedded computing development environments – the RaspberryPi.

About the Author

Mats Samuelsson

Mats Samuelsson is the CTO & VP Marketing and Business Development for Triotos. In this role, he is responsible for the new business, development, integration, and deployment of Triotos technology initiatives.