IoT platforms analysis

A gap analysis of available IoT platforms based of their ability to meet the expectations of the IoT

IoT platforms

The list of the surveyed platforms shall by no means be seen as exhaustive, though we believe that a representative sample of the available platforms has been included in the survey.

Name Heterogeneous devices support Type Architecture Open source REST Access control Service discovery
AirVantage™ Needs gateway M2M PaaS Cloud-based Libraries only (Apache v2, MIT and Eclipse v1.0) Yes OAuth 2.0 No
Arkessa Yes M2M PaaS Cloud-based No ? Facebook like privacy settings No
ARM mbed Embedded devices M2M PaaS Centralized/Cloud-based No CoAP User's choice No
Carriots® Yes PaaS Cloud-based No Yes Secured access No
DeviceCloud Yes PaaS Cloud-based No Yes ? No
EveryAware Yes Server Centralized No Yes 4 levels No
Everyware Needs gateway PaaS Cloud-based No Yes ? No
EvryThng Yes M2M SaaS Centralized No Yes Fine-grained No
Exosite Yes PaaS Cloud-based Libraries only (BSD) Yes ? No
Fosstrack RFID Server Centralized No No Locally stored No
GroveStreams No PaaS Cloud-based No Yes Role-based No
H.A.T. Home devices PaaS Decentralized Yes Yes Locally-stored Yes
IoT-framework Yes Server Centralized Apache 2.0 Yes Locally-stored Yes
IFTTT Yes SaaS Cloud-based No No No storage Limited
Kahvihub Yes Server Centralized Apache 2.0 Yes Locally-stored Yes
LinkSmart™ Embedded devices P2P Decentralized LGPLv3 No Locally-stored Yes
MyRobots Robots Robots PaaS Cloud-based No Yes 2 levels No
Niagara AX Yes M2M SaaS Distributed No ? ? ?
Nimbits Yes Server Centralized/Cloud-based Apache 2.0 Yes 3 levels No
NinjaPlatform Needs gateway PaaS Cloud-based Open source hardare and Operating System Yes OAuth 2.0 No
Node-RED Yes Server Centralized Apache 2.0 No User-based privileges No
OpenIoT Yes Hub Decentralized LGPLv3 No User-based privileges Yes
OpenMTC Yes M2M client/server Centralized/Cloud-based No Yes Secured access No
OpenRemote Home devices Server Centralized Affero GNU Public License Yes Locally-stored No
Open.Sen.se Ethernet-enabled devices PaaS/SaaS Cloud-based No Yes 2 levels Limited
realTime.io Needs gateway PaaS Cloud-based No Yes Secured access No
SensorCloud™ No PaaS Cloud-based No Yes ? No
SkySpark No SaaS Centralized/Cloud-based No Yes ? No
Swarm Yes PaaS Cloud-based Client is open source Yes ? ?
TempoDB No PaaS Cloud-based No Yes Secured access No
TerraSwarm Yes OS Decentralized ? ? ? Yes
The Thing System Home devices Server Centralized MIT Yes User's choice No
Thing Broker Yes Server Centralized Yes Yes Locally-stored No
ThingSpeak Yes Server Centralized/Cloud-based GNU GPLv3 Yes 2 levels Limited
ThingSquare Embedded devices Mesh Cloud-based Gateway firmware is open source Yes No No
ThingWorx Yes M2M PaaS Cloud-based No Yes User-based privileges Yes
WoTkit Yes PaaS Cloud-based No Yes Secured access Yes
Xively Yes PaaS Cloud-based Libraries are open source (BSD) Yes Secured access Yes

Centralised architecture The table lists the surveyed platforms and summarizes some characteristics which are seen by the authors as fundamental for meeting the expectations of the users and application developers.

Cloud-based architectureHence, this table aims to provide quick visual information for those interested in selecting the most appropriate IoT platform to be deployed in their color indicates that a particular platform’s characteristic fits the expectations of the platform’s users, while the red color indicates a mismatch between the platform’s characteristic and the users’ expectations. An intermediate orange color has been added to indicate partial fitting.

Gap analysis

we present in this section a gap analysis that aims to evaluate the maturity of current solutions, while weighing their pros and cons.

Support of heterogeneous devices

Current status

  • Platorms assume smart objects to talk HTTP or require gateway

Expectations

  • Devices must be easily integrable to the IoT platform without a gateway
  • Unified resources and simplify usability

Identified gaps

  • Support of constrained devices
  • Ease of device registration and configuration
  • Naming and addressing schemes
  • Higher abstraction level

Problems

  • Heterogeneous interactions
  • Protocol standardization

Recommendations

  • Relying on standard protocols (e.g., CoAP, LwM2M, MQTT)
  • and data models (IPSO)

Data ownership

Current status

  • Mainly given to the end-user but with very simple privacy policies

Expectations

  • Full control given to the owner of the data
  • Local storage
  • Fine-grained data visibility model

Identified gaps

  • Manipulation of data in edge devices
  • Self-storage

Problems

  • Security of the data storage
  • Device constrains to store data and provide secure access control

Recommendations

  • Every IoT network must include a set of devices that can handle data locally

Data fusion & sharing

Current status

  • Nonuniform data sharing format
  • Sharing is performed via nonuniform REST API

Expectations

  • Uniform data format across multiple platforms
  • Pub/Sub mechanism and data catalogs
  • Edge analytics

Identified gaps

  • Data as a Service (DaaS) functionality is usually missing for 3rd parties
  • Data catalogs are missing
  • Data analytics is only available in cloud-based solutions

Problems

  • Complex identification system to access data
  • Fusion efficently data streams from multiple data catalogs
  • IoT devices have limited computing capabilities

Recommendations

  • Catalogs for DaaS
  • Uniform data model
  • Semantics indexes to ease the uniform process of data sharing and fusion
  • Cloudlet-like solution for edge analytics

Developper support

Current status

  • REST API to access the data or devices handled by the platform
  • Applications are for internal use rather than for sharing (except IFTTT)

Expectations

  • Use of a common API to ease the development of cross-platform applications
  • Domain Specific Language (DSL) dedicated to cross-platform application development

Identified gaps

  • Application sharing
  • Limited precense of SDKs and abscence of DSL
  • Higher abstraction level

Problems

  • Require standardization of application interactions dedicated to the IoT
  • IoT app store are missing

Recommendations

  • IoT platforms must provide SDKs and APIs that maximize the re-usability of the services provided by their platform

Ecosystem formation

Current status

  • Platforms provide useful building blocks, storage and runtime environment for application developers

Expectations

  • Platform easily expandable by the developers and offering them incentives to contribute
  • Local composition of services

Identified gaps

  • Low platform expandability
  • Limited monetizing possibilities
  • Limited support for cross-platform integration
  • Abstraction of services and applications models are not yet provided by IoT solutions

Problems

  • Silos of platform-specific solutions
  • User's using multiple platforms may not be able to aggregate the whole data into a single application

Recommendations

  • Financial incentives for developers shall be offered
  • A broker is needed to ease cross-platform integration
  • Models to contextually define IoT applications to simplify their discovery by the end-users

IoT marketplace

Current status

  • Limited applications sharing
  • Limited (usage-based) charging of the end users of these applications

Expectations

  • Use of a common API to ease the development of cross-platform applications
  • Domain Specific Language (DSL) dedicated to cross-platform application development

Identified gaps

  • Dedicated IoT data catalogs, IoT app store and IoT device store
  • Ability to advertise, deliver and charge for the use of applications and data
  • Validate applications against policies

Problems

  • An ecosystem of independent application developers, device manufacturers, and end-users all supporting the platform is needed for the demand for marketplace to appear and sustain

Recommendations

  • The marketplace functionality shall be provided by future IoT platforms

The national Finnish Internet of Things program perspective

Envisioned architecture with end-to-end interactions between users, smart devices, the platforms via the marketplaceOur experts evaluated the most important features that must be integrated to IoT platforms with regard to the gaps presented above. The features are grouped by four different viewpoints; (i) application provider viewpoint, (ii) data publisher viewpoint, (iii) platform provider viewpoint and lastly (iv) the customer viewpoint. The results of this evalutation has produced the following list of features in a descending order of importance

  1. Publishing applications: register and upload the applications, make applications discoverable and avail- able for external parties (Application provider viewpoint)
  2. Available description or detailed information about the application or the data on the marketplace (Customer viewpoint)
  3. Purchasing the right to use the application or the data (Customer viewpoint)
  4. Publishing data: make the data discoverable and available for external parties through predefined in- terfaces (Data publisher viewpoint)
  5. Gathering information about resources usage by customers, as well as summarizing it into accounting records, e.g., for the purpose of charging and billing (Platform provider viewpoint)
  6. Setting or modifying the access rights separately to different views or portions of the data in order to maximize reusability (Data publisher viewpoint)
  7. Gathering information about the sells and downloads of the applications (Application provider viewpoint)
  8. Searching for the applications based on type, pay- ment details, rating (Customer viewpoint)
  9. Registering, unregistering, uploading and validating an application (Platform provider viewpoint)
  10. Managing platform subscriptions of customers (create, read, update, delete) (Platform provider viewpoint)

This listing shows that eight out of the ten most important features selected by our experts are related to the IoT marketplace, thus comforting our view on the necessity of developing this type of platforms.

A more detailed article about our gap analysis of IoT platforms is available at http://arxiv.org/abs/1502.01181

Contact

Julien Mineraud, University of Helsinki, email: julien.mineraud@cs.helsinki.fi