A Short Introduction to

I1820 IoT Platform

Parham Alvani

@1995parham

What is an IoT platform?

  • An IoT platform is the middleware between the connected devices & application
  • It is a multi-layer software which enables provisioning and management of connected devices

Where does I1820 come from?

I1820 is named after one of my friends who is not among us right now

Architecture

Big Picture

i1820-architecture

Components

  • PM
  • DM
  • Link (Uplink/Downlink)
  • ElRunner
  • Backend (API-Gateway)
  • Frontend

Link; Uplink + Downlink

Link; Uplink + Downlink

  • Recieves data from HTTP or MQTT
  • Decodes data based on JSON, CBOR or uses custom decoder
  • Stores data into Database

Link; Uplink + Downlink

  • Downlink?!
  • Only works with MQTT

PM; The Project Manager

PM; The Project Manager

  • Builds project and its docker
  • Tunnels requests to project docker

ElRunner; Who runs in dockers

ElRunner; Who runs in dockers

  • Runs scenario
  • Decodes if needed
  • Stores decoder and scenario

DM; The Data Manager

DM; The Data Manager

  • Have some useful queries

Backend (API Gateway)

Frontend

  • Supports multiple interface for thing communications:
    • HTTP
    • MQTT
    • LoRaWAN Integration through TTN
    • LoRaWAN Integration through loraserver.io
  • Supports Application Integration by OpenAPI
  • Microservice Architecture
  • Users can define scenario to react based on events
  • Users can define codecs to parse their data

Platform as a Service

  • Prepaid Model
  • You don't pay for your sensors and actuators
  • You don't pay for your projects
  • APIs are here for your applications
  • Only pay for API calls over 1000

Joint IoT Ecosystem

  • Delegates their specific application to us

IoT Application Center

  • Connects developers to end-users
  • Applications are on top of the Platform
  • End-Users can use these applications to gain added-values
Fork me on GitHub
Live Demo
Supported by I1820 Open-Source Organization