Choose Your IoT Platform With Care

30.05.2016 industrial internet , software , anssi rantamäki

When creating an IoT (Internet of Things) system, you have to pay attention to many details. One is choice of the right IoT platform. There are many IoT platforms, and they’re difficult to compare. They are in some ways very similar, but also very different and not directly comparable. 

“IoT platform” can mean many different things. It usually refers to an IoT application platform, in other words a software platform that collects data from various sensors and IoT devices. The collected data can then be analyzed and used in various applications. Such platforms are usually in the cloud. 

Five main platform groups

IoT platforms can be grouped into, for example, five main categories as illustrated in the figure below.

IoT HW platforms are typically devices, various kinds of microchip hybrid computer platforms with a sensor on top. They are typically platforms for prototypes or very small production series. Examples of HW platforms could be devices like Arduino, Raspberry Pi, Beaglebone, ESP8266, Spark Core.

Another group is the so-called proximal connectivity platforms, which refers to action happening nearby. For example, the thermometers and thermostats of the different rooms of a house can be wirelessly connected to a sensor network. Examples of this group are for instance Qualcomm AllJoyn, Intel IoTivity, Google Brillo and Thread.

The third group is the IoT infrastructure platforms, which are used to transfer data from sensors to the cloud. Examples here would be the likes of PubNub, Mocana, Robomq, RabbitMQ, Mosquitto.

The fourth group are the IoT data platforms, which are used to store, use, and analyze data. Examples of data platforms are Hadoop, Apache Storm, Spark Streaming, AWS Kinesis, Azure Stream Analytics.

Finally there are comprehensive IoT software platforms, in other words background platforms for general use offered by Amazon, IBM, and Microsoft, for example. 

This article will focus on this last group, the IoT comprehensive software platforms. 

Four building blocks 

In principle, an IoT system consists of four building blocks. 

  1. A device, in other words a source of data, a physical device, sensor, regulator, etc. 
  2. Data transfer systems and protocols
  3. Data management and storage, integration, and analysis
  4. Data presentation and use. This produces added value for the users. 

IoT comprehensive software platforms consist of the above building blocks 2 and 3. 

No platform as such provides ready-to-use applications, but the advantage of a comprehensive software platform is that it provides a variable selection of different tools for compiling applications. A single comprehensive software platform is usually sufficient for building an IoT system. The software platforms on the market usually provide all necessary services. In addition, a device platform or an existing device is required.  An adaptation of the application has to be implemented on top of the platform. 

Some things are better in some platforms than in others. One can also choose different parts from different platforms, but this option should be analyzed carefully to avoid future complications.

In choosing a software platform, you may have to compromise. You may have to choose it depending on the focus of your area of application and depending on from where you can get the best functions. There are no major price differences between platform providers, and they usually use the same criteria. So in practice, the competitiveness of different platforms doesn't depend on pricing. Processor time can be more expensive for one platform than another, but the situation can be the opposite with data storage.

It’s important to choose a platform that provides tools for doing quick tests. It’s best to always make a solution prototype and test whether it works on the platform. Your background and experiences can also influence the platform choice. If you have expertise in using Microsoft tools, Microsoft Azure can be the best choice. If you already use Amazon’s cloud platform, there may be contract-related reasons to use the same for IoT.

An important business aspect is continuity. Many new platforms have appeared in recent years, many of which are good, but there is no guarantee of how long they’ll be available. When starting a new business, it’s best to avoid the risk of a tool provider going out of business by using large and well-known providers like IBM, Amazon, and Microsoft.

Four service models

The different available service model options often confuse IoT users. In principle, you can buy a service in four different ways.

The first option is to do everything yourself by buying a computer and installing everything yourself. That way you control and own everything yourself, the server hardware, operating system, and software.

The second option is use of a virtual server (Internet as a Service, IaaS), where you rent the hardware but control and own everything else.

The third option additionally provides the operating system and application platform, and you’re only responsible for the application. This is called Platform as a Service, PaaS.

The fourth option, Software as a Service (SaaS), also provides all available applications. 

The two most important options for IoT are PaaS and SaaS. PaaS pricing is based on resource use, on how much you use processor capacity and the database. If you need to search the database often, you need fast access. This is typically rather expensive. A database for long-term storage, which is searched only seldom, is relatively inexpensive. Optimization of database use is important to ensure the best possible pricing and service.

When designing a system, it’s a good idea to plan how much and what kind of storage space you’ll need. The main benefit of PaaS and SaaS services is paying for actual use. There is no need for prior investment in the system; you only pay for actual platform use. Typical pricing criteria for PaaS services are use of processor capacity, memory, databases, and storage space.

Different kinds of storage space

It’s important to understand that IoT systems need three different kinds of storage space.

  1. A reliable and stable cache memory, used for storing sensor data before transferring it for use in applications, for example.
  2. A fast database for use by the applications.
  3. Long-term data storage.

It makes sense to optimize use of the different storage spaces according to your needs because this has a significant effect on the price of the service. You should plan how long you have to be able to quickly access the data needed by the applications and optimize the data amount you use accordingly. After data has been transferred to long-term storage, it’s not a good idea to retrieve it often. But this is where even terabytes of data can be stored for long periods of time. PaaS and SaaS services can be easily changed and increased, so they’re easy to scale up and down.

Differences between the platforms

IoT software platforms are very similar in terms of their technology and architecture. The differences are more in what they emphasize and in what the service provider considers important. For example, IBM’s platform is largely based on analytics whereas Microsoft’s Azure emphasizes remote services and parallel services and their integration. Amazon’s service is the most traditional cloud service. ThingWorx and Cumulocity services on the other hand have good tools for getting started quickly. Their strengths are in visualization and user interface creation. If your needs are heavy in analytics, IBM is a good choice. If the biggest need is data, it’s better to go to Amazon.

Choosing the platform

Many factors affect the choice of an IoT software platform.

  1. Fast prototyping.
    IoT in practice means new business activity models. It’s necessary to be able to try them out quickly and determine which models work. All the platforms mentioned in this article are good for fast prototyping. The best is perhaps IBM’s Watson because it doesn’t require any outside tools or programming. There is also no limit on the evaluation time (only the data amounts). At the other extreme is Azure, which requires the use of the Visual Studio tools. That’s no problem if these tools are already in use anyhow.
  2. Tools
    Different platforms provide support for different programming languages. If one of these is your organization’s forte, make sure that it’s supported on the platform you’re interested in.
  3. Continuity
    There are hundreds of new businesses in the world creating IoT platforms. Some may be very innovative, but it can be risky to base your business on one of them. It makes sense to use large and well-known providers like IBM, Amazon, and Microsoft. They are the winners in the long run. Small startups die or are bought up by one of these big companies.
  4. Vendor lock-in
    Each platform implements the services in its own way, and these are not compatible with other platforms. Moving services from one platform to another probably works best between platforms based on Cloud Foundry, for example IBM Watson and GE Predix.
  5. Hosting model
    If it is essential for your IoT application that data is stored in specific geographical areas or on otherwise precisely defined servers, you should check the IoT platform’s hosting model and the locations of its data centers. IBM, for example, offers a cloud-in-a-box model with which all IBM’s PaaS services can be put on your own server.

You can of course also combine different services and providers. For example, if your application is closely connected with Microsoft systems and requires storing large amounts of data and doing cognitive analysis of the data, Azure can be seamlessly integrated with existing Microsoft Enterprise applications. Amazon’s AWS offers the powerful big-data service Kinesis, and IBM the unique analytics of Watson.

About the author

Anssi Rantamäki is an Inudstrial Internet professional with more than 15 years of experience in demanding IT development projects.

For more information please contat Tomi Kyllönen at +358 40 848 6116 or


Latest articles

  • Ekahau Sidekick – measurement powerhouse for Wi-Fi professionals 11.01.2018 wireless , laboratory , electronics , product certification

    World’s first all-in-one Wi-Fi network diagnostics and measurement device facilitates Wi-Fi network testing, validation, documentation and troubleshooting. Ekahau Sidekick covers both 2,4 and 5 gigahertz and standards 802.11 a/b/g/n/ac up to -95dBm sensitivity.

  • Industrial internet increases requirements for antennas 28.12.2017 industrial internet , wireless , laboratory , electronics

    Wireless devices are becoming more common due to industrial internet. The antenna performance is often characterized by three parameters: efficiency, gain and selectivity...

  • Less prototyping rounds and EMC challenges with simulation 29.12.2017 wireless , production testing , laboratory , electronics

    Simulation speeds up design and helps improve the end product quality. Simulation suits nicely for example for antenna design, for analysing EMC, RF interoperability, shielding effectiveness and radiating fields. It can also be used to review the current layout, design and mechanics.

  • Product certification – case Asqella 17.12.2015 testing , laboratory , product certification

    Nowadays more and more products contain electronics and maybe some kind of wireless technology. People do not always realize that all electronic device must be certified, in other words checked, tested, and approved, before the sales of the product can start.

  • NB-IoT Breakfast 27.9.2017 27.09.2017 industrial internet , wireless , telecom , electronics

    Great NB-IoT session today, with speakers from Ericsson, DNA, u-blox and F-Secure. Some pictures and the presentation materials available here...

  • Satel enhances product development 13.06.2017 testing , wireless , software , agile , continuous integration

    Salo-based Satel develops and manufactures radio modems and other wireless communications systems. Satel’s mission critical wireless data connections are in use within over 70 countries.

  • Powering up testing – getting a grip on software projects 05.05.2017 testing , agile , continuous integration

    Well designed and correctly carried out testing and testing automation help to keep projects on schedule. The maintainability and control of the system is improved, and even the product's life cycle can be extended. The engineers at Etteplan have had good experiences with the Jenkins and Robot Framework systems.

  • Toroidion super car: a challenge for power electronics 16.06.2017 electronics , power electronics , motor control

    ”Electronics is all about signals, power electronics is all about energy. Power electronics is built on switches”, summarizes Heikki Mentula. He has got over 20 years of experience in designing power electronics.

  • Electric super car Toroidion is Finnish design 16.06.2017 power electronics , motor control

    Pasi Pennanen tells us about Toroidion, the ideas behind the 1MW Concept electric super car and his future insights. We got to meet him at his Finnish office in May. First, we ask him to tell us about his career as a designer for well-known car brands...

  • Quality assurance with vibration measurements - case Sampo-Rosenlew 14.06.2017 test systems , industrial , production testing

    Vibration measurement system improves the quality assurance within the assembly of Sampo-Rosenlew harvesters. Faulty parts are exposed at the factory, before delivering the harvester to the customer.