12 IoT Platforms for Building IoT Projects
Want to learn more about the best IoT platforms for building your next project? Check out this post to learn more about the top 12 IoT platforms.
Join the DZone community and get the full member experience.
Join For FreeThe Internet of Things is one of the fastest growing industries. Connected devices are all around us — smart homes, cars, wearables, and so on. Gartner predicts that 95 percent of the electronic products will include IoT features. When approaching to IoT projects, there are several challenges we have to face.
An IoT platform offers several services that simplify the project development and a set of tools to remotely manage devices. Generally speaking, an IoT platform is a multi-layer technology that enables users to manage connected devices. Moreover, an IoT platform takes care of all the aspects related to the scalability and security.
Below is a list of the top IoT platforms in a random order. Some of these platforms have a free account and some have a premium account that enables other interesting features.
An IoT platform plays an important role in the IoT architecture. When building an IoT project or system, connected devices send data to cloud platforms. These platforms store data and use it to build charts. An IoT cloud platform is like a PaaS that provides useful services in IoT ecosystem. These services enable devices that connect to remote services.
Generally speaking, an IoT platform provides the following services:
- Data ingestion
- Data transformation
- Dashboard creation
- Rule management
- Device management
- Security services
- Platform integration
Data Integration enables developers to store data sent from several boards (like an Arduino or Raspberry); for example, it is possible to store values read from a sensor. This information can be visualized using a graph or analyzed with other tools.
Rule management is web-based programming logic that can be used to trigger some action when an event occurs. Using this kind of platform is possible when trying to implement “business logic” using just a web interface without knowing much about the board we are using for the project. Usually, the logic is like IF-THEN, for example, if an event occurs, then do this action. An event can be a signal read from a sensor, and the action can be an email or an SMS.
Platform integration is a set of “adapters” that implement specific protocols so that it is possible without writing a line of code mixed with different Internet services to make a chain of actions. For example, using Arduino with Ethernet shield is possible to send an alert via SMS when a value read from a sensor is higher than a threshold level.
Below is a list of the top IoT platforms in random order.
Top IoT Platform List
Temboo
This is a very interesting platform that provides services to integrate Arduino, Raspberry, and other platforms with different Internet services (like SMS, Email and so on). This platform uses choreos, which are connectors toward external services so that events in Arduino, like sensor signals, can be transformed into different kinds of events. Moreover, it provides logic, like IF-THEN. Moreover, Temboo supports M2M applications using MQTT, CoAP, and HTTP protocols. The main features provided by Temboo include:
- Code generation: This platform generates optimized code for several devices using many different languages, such as Java, C/C++, Python, and so on.
- Interoperability: Temboo provides a set of services named choreos that simplify the integration process with other cloud services.
- Data: Temboo stores and visualizes different kinds of data.
This video shows some of the features of Temboo:
This is the link to the platform: Temboo
Below are some IoT projects using Temboo:
How to integrate Arduino and Google using Temboo
How to integrate Arduino MKR1000 with Twitter using Temboo
Ubidots
Ubidots is another interesting IoT platform that provides several services. First of all, it supports several devices, such as Arduino, Raspberry, Particle, Espressif, Onion, and much more. Moreover, it has different kinds of services, ranging from device connectivity to data visualization:
- SDK/API Ubidots provides an SDK for different devices to simplify the integration process between the device itself and the platform. Moreover, it has several APIs that can be invoked to interact with this platform.
- Several protocols support, such as MQTT and HTTP
- Synthetic variables that apply math formulas on data
- Data storage
- Data visualization
This video shows the main features of this IoT platform:
This is the link to the platform: Ubidots
Below are IoT projects using Ubidots:
How to integrate Arduino and Android using Ubidots
How to build an Android Things app using Ubidots
How to build a smart plant system using Ubidots
myDevices
myDevices Cayenne is another IoT platform that has a rich set of features. The core of this platform is the data visualization. Using drag-and-drop, it is possible to create a dashboard to visualize data coming from remotely connected devices or control them. It uses widgets to visualize information. This platform supports several devices, such as Arduino, Raspberry, ESP, and so on. Moreover, myDevices Cayenne exposes a set of APIs to simplify the services integration and supports MQTT protocol. This platform can be divided into two main areas:
- A mobile app that controls remotely a device
- Dashboard
An interesting feature of this platform is the integration with LoRa, a technology used to create LPWAN to M2M.
This video shows this platform:
This is the link to the platform: myDevices Cayenne
Here are some IoT projects using myDevices:
How to build an IoT system using ESP8266 Cayenne and MQTT
ThingSpeak
This is an open, IoT platform with Matlab support. The core of this platform is the IoT analytics and data visualization. It provides real-time data visualization, and with the support of Matlab, it is possible to add data analysis and processing.
The main features provided by this IoT platform includes:
- Real-time sensor data visualization
- Data aggregation from third-party providers
- Schedule IoT analytics tasks to analyze data
- Event scheduling
- Run actions according to data acquired
This Internet of Things platform supports several devices, such as Arduino, Raspberry Pi, ESP, Particle, and so on.
This is the link to the platform: ThingSpeak
TheThings.io
TheThings.io is an IoT platform that simplifies the IoT solution development. Using this IoT platform, we can manage remotely the connected devices and it offers an interesting set of services:
- Cloud code management
- Data monitoring and visualization
- Analitycs
- AI
- Interoperability and integration
TheThings.io supports several devices, like Arduino, Raspberry Pi, ESP8266, and so on. Moreover, devices can connect to the cloud services provided by this IoT platform using several protocols, like MQTT, CoAP, HTTP, Websocket, etc.
This video explains this IoT platform:
This is the website link: TheThings.io
Some IoT projects using TheThings.io:
How to program Arduino to use IoT cloud platform to store temperature and humidity
Xively
Xively IoT platform is another interesting solution. Now, Xively is part of Google Cloud Platform. Anyway, there is a chance to try it using a developer account. Xively is an enterprise platform that helps to manage devices. At the device level, Xively plays an important role to manage the communication, security, and firmware update.
This video describes Xively:
This is the link of this platform: Xively
Some IoT projects using Xively
Arduino data logger using Xively
Kaa
Kaa is an open-source, IoT platform that provides several services. This platform helps developers to build complex IoT projects easily and fast. The main features provided by Kaa are:
- Device connectivity
- Device management
- Data collection
- Data processing and analysis
- Data visualization
- Command execution
Kaa supports several IoT protocols,like MQTT and CoAP.
This video explains what is Kaa:
This is the link to the platform: Kaa
Google Cloud IoT
Google Cloud IoT is one of the most interesting enterprise platforms. This IoT platform has a set of tools to manage connected devices and the date at the edge level or in the cloud. The connected device can use cloud pub/sub to publish the data. Moreover, we can apply BigQuery analysis or we can apply Machine learning on this data. Google Cloud IoT has a reference architecture that describes the role of each component that builds this platform. There are countless possibilities to explore using professional services. This platform provides all the services an IoT platform mush have starting from the security aspects.
This video of Google I/O 2018 describes this IoT platform:
This is the official website of Google Cloud IoT
Microsoft Azure IoT
Microsoft Azure IoT is another IoT platform. This is a professional platform with several services. It supports bi-directional communication between connected devices and the platform itself using IoT standard protocols. Moreover, it supports device authentication to address all the security aspects. Microsoft Azure IoT simplify the process of IoT project development addressing all the challenges we have to face during this process starting from the security aspects.
The video below describes this IoT platform:
This is the official website of Microsoft Azure IoT
IBM Watson IoT
This is another IoT platform for building IoT solutions. The services provided by IBM Watson IoT platform are:
- Device management: Using this service, it is possible to act remotely on the device such as rebooting or firmware update
- Responsive, scalability, connectivity: The platform uses industry standard protocol MQTT to exchange data
- Secure communication: Secure data exchange using MQQT and TLS
- Data lifecycle management
This video is an introduction to IBM Watson IoT:
The link is: IBM Watson IoT
Artik Cloud
Artik Cloud is an IoT platform developed by Samsung. This platform enables devices to connect each other and connect to cloud services. It has a set of services to rapidly connect devices to the cloud and start gathering data. Moreover, this IoT platform has a set of connectors that can be used to connect to third-party services. Like other platforms, it is possible to store data coming from connected devices and aggregate this information.
Artik Cloud provides an SDK to simplify the development process and a set of APIs that are ready to use.
This video introduces this IoT platform:
The link is: Artik Cloud
AWS IoT
AWS IoT is a cloud IoT platform managed by Amazon. AWS IoT offers a set of services to connect several devices and takes care of the security aspects. Using AWS IoT, we can gather data from connected devices and apply complex real-time actions and analytics processes.
AWS offers a wide set of services:
- Amazon FreeRTOS: This is an OS for microcontrollers that provide some services, such as connectivity, security, and easy programming
- AWS Greengrass: It is a software that enables to run local computation on edge devices
- AWS IoT Analytics: It enables us to run sophisticated analytics on gathered data
- AWS IoT device management: It simplifies the process of device management especially when there are thousands of connected devices
- AWS IoT Core: It is the core of the AWS IoT and enables connected devices to interact with cloud services easily and securely
This video is an introduction to AWS IoT:
The link to the AWS IoT platform is: AWS IoT
Published at DZone with permission of Francesco Azzola, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments