Skip to content

pankeshpatel/IoTSuite

Repository files navigation

IoTSuite - A Toolkit for Prototyping Internet of Things Applications

IoTSuite is a suite of tools for developing Internet of Things applications. The main aim is of this toolkit is to reduce development efforts at various stages of application development. For this, It consists of the following components to aid developers:

  • A compiler parses the high-level specification and supports the application development phase by producing programming framework that reduces development effort in specifying the details of components of an IoT application.

  • A deployment module is supported by mapper and linker modules. They together support the deployment phase by producing device-specific code to result in a distributed system collaboratively hosted by individual devices.

  • A runtime system, which leverages existing middleware platforms and responsible for a distributed execution of an IoT application.

The current version of IoTSuite supports several IoT technologies such as Android, Raspberry PI, Arduino, and JavaSE-enabled devices, Messaging protocols such as MQTT, CoAP, WebSocket, Server technologies such as Node.js, Relational database such as MySQL, and Microsoft Azure Cloud services.

Getting Started

We provide IoTSuite in two versions:

  • Developer version: The aim of this version is to let developers to extend IoTSuite with additional use cases. Therefore, we provide command-line interface and expose source code. We highly recommend to use this version for research and experiment purposes.

    For setup developer version - refer our wiki pages

  • User version: The aim of this version is to let users to develop IoT applications. Therefore, we provide editors (with Error checking, Syntax coloring and highlighting, Code folding, Outline/structured view etc.) as an interface to develop IoT. The interface hides internal details from the users and let users to focus on IoT application development.

    To install user version - refer our wiki pages

Examples

using IoTSuite, many innovative class of IoT applications can be developed including from typical

  • Sense-Compute-Control (E.g., Regulating Temperature using heater and temperature sensor)
  • Personalized HAVAC involving cloud/non-cloud based database services
  • Involving user using Mobile Application (E.g., Notifying to users when fire is detected)
  • Real-time data Visualization on DashBoard

We have been working on the above mentioned class of applications, available in Examples folders here

Authors

  • Pankesh Patel - Home
  • Saurabh Chauhan - Home

See also the list of contributors who participated in this project.

Up-to-date information on publications on IoTSuite is available at Google Scholar Page.

License

GNU GPL v2.0, check LICENSE.txt

About

A toolkit for prototyping Internet of Things Applications

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published