IoT Platform – Kaa

Description

  • It is an IoT Platform which is available in following forms:
  1. In-premise solution (Anyone can use it for their specialized or customized solution)
  2. Cloud based solution (Kaa provides Platform as a service solution – PaaS for their customization solution)
  • Below are the two major characteristics of Kaa architecture:
  1. Modular Architecture
  2. *Microservice Architecture

This type of architecture offers below benefits:

  1. Scalability
  2. Extensibility
  • This platform offers below features:
FeatureDescription
Device management– Digital twining and records of such devices
– Filtering & Grouping of devices
– Accessing credentials and metadata of devices
CommunicationEstablishing communication between Device & Gateway to address below requirements:
– Authentication & Authorization
– Data exchange
– Multiplexing
Data collectionCollection & Storage of below types of data and automatic remote transmission (telemetry)
– Time Series
– Device Logs
– Alerts
Configuration managementDevice and overall system configuration data in small & large scale deployment
Command invocationSending on demand or time based commands remotely.
Data analyticsQuerying mechanism to analyze & visualize the data.
Software updatesContinuous software up-gradation
VisualizationWeb interfaces for below requirements:
– Data Visualization
– Device Management
– Platform Administration
Also provides customizable dashboard
*Multi-tenancySupport for accessing solution by multiple tenants
InfrastructureManaging and monitoring clustering operations
Table 1.0

*Microservice architecture enables split a large solution into separate small multiple services where each service is responsible for specific functionality.

*Multi-tenancy is an architecture where a single instance of software is used by multiple tenants (group of users). Multi-tenancy architecture is different from multi-instances architecture.

Is it open source?

Yes, but cloud solution is subscription based.

https://github.com/kaaproject/kaa

Supported Messaging & Security protocols

  • MQTT
  • HTTPS
  • TLS

Supported Networks

  • Sigfox, LoRa, NB-IoT, …),Near Field (WiFi, BLE, Z-Wave, …) Cellular (2G/3G/4G/…)
  • Wired (Ethernet)

Supported technologies

  • NodeJS, REST API, WebSockets
  • Business tools like SAP, Salesforce, etc

Supported Languages

  • Java, Go, and TypeScript (NodeJS),
  • Platform users implement their compatible and integrated microservices also in Python, Rust, Scala, etc.

Supported Databases

  • Databases like Cassandra, MongoDB, InfluxDB, and others.

Supported OS

  • All major OS are supported.

Industries where it is used and can be used

  • Automotive
  • Agriculture
  • Healthcare
  • Logistics
  • Telecom
  • Wearables
  • Consumer Electronics
  • Renewable Energy etcs.

IoT Platform – Zetta

Description

  • It is an Internet of Things platform that provides IoT servers. This server can be run on:
  1. Distributed computers
  2. Cloud
  3. *IoT Hub using computer platforms that are specially designed for IoT applications i.e Raspberry Pi, Intel Edison & BeagleBone.
  • This IoT server is Node.js based that is cross platform.
  • Zetta Platform/Server consists below modules:
  1. Scouts – It is a device discovery module that performs below functionalities:
    • Search for devices on particular protocols
    • Reporting of found devices to Zetta server
    • Identifying the previously connected/communicated devices using unique id like MAC address
    • Maintaining devices specific relevant data like security credentials.
  2. Drivers – It enables to interact with device on physical level and is also responsible for modelling devices that help to generate APIs (Java-script) to use in Zetta platform.
  3. Server Extensions – It works on pluggable models to extend functionalities like defining new APIs & adding security in APIs etc.
  4. Registry/Database – It is a persistence storage that acts like a small database to keep information about devices.
  • It supports almost all device protocols.
  • It uses siren specification for APIs (*Hypermedia) that supports below functionalities:
  1. Querying for devices on a particular server
  2. Setting up links between servers
  3. Interacting with devices
  4. Streaming sensor data with web-sockets
  5. Registering hub-less devices
  • It supports reactive programming by exposing web-socket for streaming of real time data like events/notifications.
  • It also has peer to peer communication between zetta servers.
  • It has SQL like syntax to query the devices.

*IoT Hub acts as a central message hub for communication between an IoT application and its attached devices. You can connect millions of devices and their backend solutions reliably and securely. Almost any device can be connected to an IoT Hub.

*Hypermedia, an extension of the term hypertext, is a nonlinear medium of information that includes graphics, audio, video, plain text and hyperlinks. This designation contrasts with the broader term multimedia, which may include non-interactive linear presentations as well as hypermedia. [From wiki]

Is it open source?

Yes

https://github.com/zettajs/

Supported technologies

  • Node.js/Rest API
  • Websockets
  • HTTP

Supported Languages

  • Javascript & other web based programming languages

Supported OS

  • All operating systems that support Node.js

Hardware Requirements

  • It can run on 500MB, 500 Mhz with minimum 500MB storage space.

Security

Secure tunneling helps establish bidirectional communication to remote devices over a secure connection.

Industries where it is used and can be used

  • Automotive infotainment system
  • Home security system

other IoT based solutions where this technologies meets all requirements.

IoT- Basics of Nano-network

  1. What is nano-machine?

If device size is measured in a few nano-meters or a few micrometers is called nano-machine.

2. What is nano-network?

A set of interconnected nano-machines is called nano-network.

3. What are the basic tasks performed by nano-network?

It Performs below tasks:

  • Sensing
  • Actuation
  • Computing
  • Storing

4. What are the areas where nono-network is used?

  • Military
  • Biomedical
  • Industry
  • Environmental Research etc

5. What types of communication technologies are used in nano-networks?

  • Molecules based data transmission & reception
  • Electromagnetic radiation based data transmission & reception

6. What types of frequencies are used in nano-network?

It works in tera-hertz frequencies. The frequency range is from 0.1 THz to 100 Thz.

IoT – Message Protocols

Common Message Protocols Used in IoT

  1. MQTT(Message Queuing Telemetry Transport)
  2. HTTP/HTTPS
  3. AMQP(Advanced Message Queuing Protocol)
  4. CoAP(Constrained Application Protocol )
  5. STOMP (Simple (or Streaming) Text Oriented Message Protocol)
  6. DDS (Data Distribution Service)
  7. XMPP (Extensible Messaging and Presence Protocol)
  8. SSE (Server-Sent Events)
  9. LwM2M or Lightweight M2M

Details about some most commonly used protocols


MQTTHTTP/HTTPSCoAP
Latest version5.02.0RFC 7252
IP SuiteTCP/IPTCP/IPUDP (no Handshake or delivery acknowledgement)
SecuritySSL/TLS but weak authentication. Additional security can be added.TLS/SSLDTLS(Data gram TLS) & IPSec
Commercial/Open SourceOpenOpenOpen
ScalabilityYesYesYes
Throughput (msg/sec)FastFastFast (better than MQTT, HTTP & AMQP)
LatencyLow but more than AMQP & CoAP & HTTPLow but more than AMQP & CoAPVery Low
Power ConsumptionLowHigh (more than MQTT)Low
Memory ConsumptionLowHigh (more than MQTT)Low
Table 1.0


AMQPDDSXMPP
Latest version5.0.92.3RFC 6120,RFC 6121 and RFC 7622
IP SuiteTCP/IPTCP/IP, UDP, Shared MemoryTCP/IP
SecurityTLS extensions, including SNI, and SASL (better than MQTT)TLS, DTLSTLS, SASL (secure authentication)
Commercial/Open SourceOpenBoth Open & CommercialOpen Source
ScalabilityYesYesYes
Throughput (msg/sec)Fast (better than MQTT & HTTP)Very Fast as it is used for real time data transfer.Fast (used for instant messaging, chat & video chat)
LatencyVery LowVery LowLow
Power ConsumptionLow (More than MQTT)Not very high, it is used in IoT devicesNeed more power as compared to other protocols
Memory ConsumptionLow(More than MQTT)Not very high, it is used in IoT devicesNeed more power as compared to
Table 2.0

Layered architectures of IoT

Introduction

Based on the business and technologies needs, the architecture of the IoT solution is designed. It is very critical for any enterprise or government organization to define the IoT architecture to fulfill their requirements. Therefore, Industry experts, researchers and architects have invented layer based architecture for IoT solutions. They highly recommend choosing and defining the architecture very intelligently.

Layer based architecture has following advantages:

  1. Segregation of requirements into various categories
  2. Identifying the technologies
  3. Defining the overall work flow of solution
  4. Planning & managing different activities
  5. Defining hardware & software requirements
  6. Estimating the approximate cost of overall infrastructure
  7. Minimize complexity and increase confidence level of stakeholders

What are the available IoT Layered architectures?

  1. 3 Layered Architecture
  2. 4 Layered Architecture
  3. 5 Layered Architecture
  4. 6 Layered Architecture

There is also 7 Layered architecture exits based on business requirement by adding a separate Edge Layer. All these architectures are evolved based on research and actual business requirements.

In most of the cases, 5 Layered architecture is used.

What are the different layers in IoT layered architectures and their hierarchies?

3 Layers Architecture4 Layers Architecture5 Layers Architecture6 Layers Architecture
Application LayerApplication LayerBusiness LayerBusiness Layer
Network LayerNetwork LayerApplication LayerApplication Layer
Perception LayerSupport LayerProcessing/Middle-ware LayerSecurity Layer
Perception LayerNetwork LayerProcessing/Middle-ware Layer
Perception LayerNetwork Layer
Perception Layer
Table 1.0 Layered Architectures

Here, data flows in both directions from top to bottom and from bottom to top.

Description about different Layers

Perception Layer

IoT Devices (Sensors & Actuators) reside in this layer. These devices capture data and pass to the next layer.

Network Layer

This layer provides support for different wired & wireless network connectivity like ethernet, wifi, Bluetooth, BLE, Zigbee, sigfox, RFID, LoRAWAN, NB-IoT , 2G, 3G, LTE & 5G etc. This also includes different messaging transfer protocols i.e MQTT, CoAP, AMQP and DDS.

Processing Layer

This layer performs all types of activities that are required to generate structured data that can be shown to the user or administrator. These activities are data accumulation, parsing of different formats, filtering of data, data aggregation, storage of data and conversion of data in recipient format.

Support/Security Layer

This layer provides devices & user authentication along with authorization. It is also responsible for data protection (encryption & decryption) to support all types of cryptography based solutions to enhance security in complete solution. Nowadays, software and hardware based security is very much needed at IoT devices, Gateway, communication networks, message protocols as well as user interface level.

Application Layer

This layer provides an interface for end users to interact with IoT solutions. This interface enables the generation of information based on end user requirements. Here, the end user can be a customer who uses IoT enabled services or an administrator who manages and controls IoT components and overall operations.

Business Layer

This layer defines a set of rules, organization policies, defines security parameters, defines specification of data based on business or customer needs and use cases.

IoT Gateway

What is the I0T Gateway?

It is a key component in the entire IoT infrastructure, that provides a solution to transfer data among IoT edge (devices – sensors & actuators) and IoT cloud infrastructure networks.

Why is the IoT Gateway required?

1. Electric Power constraint

Most of the IoT devices have limited availability of electric power as they are battery operated therefore to transfer data into cloud there is an essential requirement of a solution that addresses this limited electric power constraint. IoT Gateway works as a bridge by supporting network protocols that consume very less electric power. And then sends received data to the cloud using 2G, 3G or LTE networks.

2. Usage of Heterogeneous data transfer protocols

As we know that different types of IoT devices support different data transfer protocols like BLE, Bluetooth, Zigbee, Wifi etc. Therefore, for providing interoperability among different types of protocols, an IoT Gateway is required that processes and converts data into recipient format. IoT Gateway does this processing by parsing different formats, filtering, aggregating data & taking local data storage or backup.

3. Security

a. Authentication & Authorization

To allow only registered and authorized IoT devices operate in given IoT infrastructure; a mechanism is required to find all devices but provision only authorized devices. IoT Gateway fulfills such need by enabling proper authentication & authorization mechanisms along with support of device management as well.

b. Data Protection

While transferring data among different IoT devices and cloud networks, there is a critical requirement to protect data so that no one can steal or tamper it. Therefore, proper data encryption & decryption mechanism is also required. IoT Gateway supports all types of cryptographic technologies.

4. Integration with Heterogeneous cloud solution providers

There are different types of cloud based solution providers those provides various services along with APIs to consume them. Therefore, a proper integration with those APIs is required. IoT Gateway also provides such APIs integration framework.

5. Seamless data transfer for large demographic solution

To provide an IoT based solution in large demography, there is an essential requirement to transfer data seamlessly and not be affected by network or power outage. Therefore, a proper cluster based load balancing solution is needed. IoT Gateway also plays a good role there by supporting clustering technologies.

6. Centralized monitoring and controlling IoT devices

For managing & diagnose multiple IoT devices along with sending proper commands on demand or periodically, a proper portal is required that is accessible from browser as well as from mobile app.

IOT Connectivity Technologies

What are Radio-technologies (Radio frequency Range) used to transfer data among devices?

  • Bluetooth-BLE (Bluetooth Low Energy Protocol) Wearable devices generally use it i.e smartwatches, wireless headphones, smartphones etc.
  • RFID(Radio Frequency Identification) Primarily used for product information and location retrieval.
  • WiFi Medium range wireless data transfer technology.
  • ZigBee Wireless technology having IEEE 802.15.4 *mesh network standard, specially designed for low cost and low power IOT devices for reliable and secure data transfer.
  • Thread IPv6 based wireless technology having IEEE 802.15.4-2006 *mesh network standard, specially designed for low power IOT devices for reliable and secure data transfer. It enables access services on the cloud as well.
  • LoRAWAN(Low Powered Wide Area network) A wireless technology built on top of LoRa radio modulation technique that can be primarily used for IoT devices. AWS IoT core has support for LoRAWAN.
  • Sigfox A long range wireless technology designed for low power, low data and low cost data transmission for IoT devices.
  • LTE-CatM1(Long Term Evolution Category M1) It is for IoT devices connected directly with the 4G network.
  • NB-IoT (Narrow Band Internet of Things) It is 3GPP low power wide area network standard that is compatible with 2G, 3G and other 3GPP standards that are designed for wide area IoT devices connectivity.

Wireless data transfer technologies can be categorized based on range like WiFi, ZigBee and Thread are for medium range data transfer. LoRAWAN, Sigfox, LTE-CatM1 & NB-IoT are for long range data transfer.

*Mesh Network refers to network topology where multiple nodes are directly connected to each other without any hierarchy to efficiently route data.

Note: Low power consumption devices are mostly used in IoT therefore radio- technologies are used accordingly that supports or provide long battery life.. There is always a trade-off between low power consumption and frequent data transfer.

Internet of things (IOT)

Introduction

Analytics is a very much essential part of human being. Human brain, which is fully capable of doing analytics, is one of the greatest and oldest machine of all time. And innovations are one of the finest products of this machine.

Innovations are becoming a new business model in fact in some cases Innovations are a basic need for human survival. Innovations are becoming a new destination for investors and government organizations. Being a software professional, sometimes I feel that bits and bytes are becoming bread and butter. In every aspect of the new challenge, now we are keen to find solutions through analytics. Analytics is a new framework whose base is technology. 

To perform the Analytics, you need data, you need devices to capture data and you need algorithms to get desired output from given data.

Nowadays data known as BigData, devices are known as semiconductors chips and algorithms are known as software packages. When all these three things are combined then different business or solution models are developed. Internet of things (IOT) is one such business or solution model.

Definition

Devices that are interconnected via the internet, exchange data amongst themselves and have the ability to do processing.

What are the key technologies involved in IOT?

1. Embedded Devices having sensors

2. BigData for storage & generating structured data

3. Software packages or Algorithm for processing

Other major technologies are networking and Security or protection (encryption & Decryption),

Where is IOT used?

  • Wearable technologies – Healthcare EcoSystem
  • Intelligent Automobile technologies – Cover vehicle condition monitoring, Intelligent prediction system, infotainment , Navigation related whole ecosystem.
  • Intelligent image processing technologies – Monitoring, Safety & Security of living & non-living things, technology based investigation, rich satellite or drone based Geographical Information system.
  • Intelligent Waterair technologies – Eco system of water and air
  • Intelligent Agro-Farm technologies – Eco system of agriculture and Farming

And other sensor-device driven technologies that can be integrated with any type of intelligent system.

Here, intelligent systems enable users to perform analytics, machine or deep learning for prediction and also offer artificial solutions.

Real life examples of IOT – Smart-watch, autonomous car, home appliances, Drones etc.