BT

MODE: An IoT Platform for Managing Smart Devices

| by Abel Avram Follow 12 Followers on May 14, 2015. Estimated reading time: 2 minutes |

MODE is an IoT platform deployed in the cloud and providing support for registration, management and control of smart devices.

MODE operates with the following concepts:

  • Device. A smart hardware product with its own unique identifier.
  • Device Class. All identical devices belong to the same class and can be managed or configured as a group.
  • User. A person who owns one or more devices and has the right to control them.
  • Home. A collection of devices controlled by one or multiple users.
  • User Agent. A mobile or web application used to control devices.
  • Smart Module. A server application implementing device-related functionality.
  • Commands. A user agent can send commands to a device or a smart module. Also, a smart module can command a device.
  • Events. Devices generate events which can be received by a smart module or a user agent which execute some operation upon reception.

The MODE platform manages devices, authenticates users and glues all of these to work together. Devices can be set up directly by the manufacturer or by the user to connect to MODE. After that, the device opens a WebSocket connection to MODE, sending events if any and waiting for commands coming from the user agent or the smart module. The later can be used to collect and analyze data on devices and perform various automated tasks. These smart modules can run on premises, in the cloud or hosted by MODE.

Communication between devices, user agents, smart modules and MODE is done through an encrypted RESTful API using JSON. The following shows how to send a command to a device:

PUT /devices/{deviceId}/command
{
    "action": "sprinkler-on",
    "parameters": {
        "zone": 2,
        "duration": 120
    }
}

We asked Gaku Ueda, CEO and cofounder of MODE Inc., about supporting other protocols besides WebSocket:

GU: Yes, definitely! It's very easy to add a new protocol for device connectivity to MODE.  We'd like to hear from developers about their favorite protocols.  We are here to work with developers to solve real world problems.

MQTT and CoAP are the common ones.  We can implement these if developers want.

Regarding the security of communications, Ueda said:

GU: We will offer only SSL-ed APIs for production mode.  All the communication needs to be encrypted.

That being said, we hear lots of desire to prototype IoT products using Arduino and other low-end microcontrollers.  Arduino can't do SSL communication and we open up non-secure version of APIs for prototyping.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

IOT platform by Joshua Simi

Great content about IOT platform and describe the detail structure about IOT. Here you can find more detail about IOT platform exosite.com/iot-platform/

Anythings - Internet of Things Search Engine by Quentin Del

Build Your Smart Ecosystem with anythings.co
Anythings is an Internet of Things search engine that references any smart devices.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

2 Discuss
BT