IoTMATE OS makes it super easy to launch your IoT based appliances without the need to write even a single line of code. IoTMATE OS provides a ready implementation of device firmware for several commonly used micro-controllers. The architecture of IoTMATE OS allows for easy integration of any device built on the supported micro-controllers. Using the zero-coding model, IoTMATE OS requires you only to supply the device profile using a JSON format for integration of a device into IoTMATE framework. Power your devices with IoTMATE OS, integrate them easily and securely with the IoTMATE Cloud platform, and run your IoT system effortlessly.

Salient Features

  • A stable OS powering all IoTMATE devices.
  • MQTT support for IoT applications.
  • Certificate based authentication for MQTT connection establishment.
  • Small memory foot-print to run on micro-controllers with small RAM.
  • Over the air (OTA) image upgrade.
  • Requires no coding to support new devices using supported protocols and peripherals.
  • Integration points for supporting new protocols and peripherals.

IoTMATE OS Details

The IoTMATE OS is the device firmware that powers all devices in the IoTMATION framework. The IoTMATE OS combines a bundle of services essential for IoT based operation of the devices. A core set of services are supported across all platforms in a platform agnostic manner. There are additional set of services that are supported based on the capability of the underlying MCU/CPU. The IOTMATE OS consists of four primary components.

The Application Framework

The application framework is the topmost layer of the IoTMATE OS and it manages various device specific services in completely platform agnostic manner. The various services managed by the application framework is shown in the diagram below.

The personality of a device is defined through a JSON encoded personality file. This defines the various peripherals attached to the device, their characteristics and their access attributes. The Peripheral manager depends on this personality to manage the peripherals attached to the device. The IoT Manager manages IoT connections and handles IoT message exchanges while the Control Interface provides the interface for device management. Certificate manager handles the certificates used for secured communication using cryptographic techniques. Connection Manager handles the management of data connection. Any runtime configuration is managed by the runtime configuration manager.

IoTMATE OS Libraries: The IoTMATE OS comes in two flavors; a Linux based OS is used for platforms with CPUs whereas a device SDK based firmware is used for platforms with MCUs. However, a set of common libraries allows for consistent operation of the core services in the application framework.

IoTMATE OS Core Components: A set of core components provide the required communication and other system capabilities to the devices. An abstraction layer on top of these components provide a uniform interface to the upper layers.

IoTMATE OS Kernel/SDK: The IoTMATE OS uses Linux Kernel or a device SDK based on the CPU/MCU architecture. The low level BSP, drivers, process and memory management, file system support, glibc and other toolchain are all part of this component.