Practical Courses Framework : Get Started with YoIoT Gateway

Middleware are Software Enablers to develop, deploy and run software application on IoT architecture.

Like explained, Iot Architecture distinguishes three main layers :

This is kind of approach is sometimes called Fog approach, probably when “Cloud is closed to the field”.

Generally :

The key in an IoT architecture is then Edge Nodes. They are gateways when they only manage communication protocols, but they can also store, process data and provide new functionalities locally.

The purpose is then to build a typical Gateway allowing like that

Main installation is then based on docker and Node-Red under Docker.

For more explanation see sections here :

Docker Practice

Docker is used to run software packages called “containers”. Containers are isolated from each other and bundle their own application[8], tools, libraries and configuration files; they can communicate with each other through well-defined channels. All containers are run by a single operating system kernel and are thus more lightweight than virtual machines. Containers are created from “images” that specify their precise contents. Images are often created by combining and modifying standard images downloaded from public repositories.

Get Docker and Get Started

Node-Red Practice

Node-Red Website

Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways.

It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette. Node-RED provides a browser-based flow editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single click.

The light-weight runtime is built on Node.js, taking full advantage of its event-driven, non-blocking model.

Node-Red Programming Guide

Exercices

What is a Fog Node? A Tutorial on Current Concepts towards a Common Definition Eva Marín Tordera, Xavi Masip-Bruin, Jordi García-Almiñana, Admela Jukan Guang-Jie Ren, Jiafeng Zhu, Josep Farré, Universitat Politècnica de Catalunya-Advanced Network Architectures Lab, UPC-CRAAX, Spain, Technische Universität Braunschweig, Germany, IBM, Almaden Research Center, USA, Huawei, Santa Clara, USA, Neàpolis Center, Spain.