How to Choose an IoT Platform
By: Kenny Fok
Date: July 7, 2021
What is an IoT platform?
An IoT platform manages connectivity of the devices and allows developers to build new mobile software applications. It facilitates the collection of data from devices and enables business transformation. It connects different components, ensuring uninterrupted flow of communication between the devices. Now that we have a basic understanding of what an IoT platform is and how it functions. How then, do you choose the platform?
Choosing the right IoT platform is a complex task. Whether you're a IoT hobbyist, experienced developer, or senior executive, the landscape is massive and confusing. If you are planning to bring a new IoT product to market, choosing the platform you want to go with is one of the most critical components in outlining your plan. Once a decision is made on your IoT Platform, it becomes increasingly difficult, not to mention expensive, to change course. Ultimately, it can make or break a users experience with your product. This article will provide you the basic criteria necessary for how you should evaluate and choose IoT platforms based off your needs.
Complete or Partially Complete
We'll start by listing the differences you can expect between partial and complete IoT platforms. There are many "IoT Platforms" in the industry, but most of them are only providing a subset of what is required for commercial IoT devices. For example, Amazon AWS IoT is advertised as an "IoT Platform", however it is missing the IoT-Device component. These are things you don't want to find out later. Your deadlines and cost can start growing rapidly from unforeseen complications. This we always recommend to seek out advice form experienced IoT professionals before choosing. There are many pieces to getting an IoT product to market and you can leverage an experienced IoT engineering firm like eSmart to help you navigate the best course to delivering a fast an reliable IoT product. Here are some of the basic points to consider with choosing a complete or partially complete IoT platform:
- Faster time to market - A complete IoT platform helps to eliminate integration efforts and expedite time-to-market.
- Possible lower initial cost, but higher long term cost
- Can be more stable out-of-the-box, particularly during the beginning phases
- Requires an in-house team of engineers or a team of contract engineers to assist
- Can be more expensive to start, but cheaper in the long term
- Virtually unlimited customization
- Can have stability issues depending on the team of engineers. Always seek out qualified experienced people in the IoT space
Open Source or Proprietary
Open source vs proprietary, which is better? Open source is software for which the original source code is made freely available and may be redistributed and modified. Proprietary is software that legally remains the property of the organization, group, or individual who created it. Both can be very viable solutions. However, you should know what you are getting into with each. Let's look at some of the pros and cons.
- Can accelerate development timeline, if there are many active participants in the open source community
- You have full control of the platform
- Labor intensive to keep track of "the stable" version with many participants
- Usually requires a larger team
- Can be unpredictable and unreliable
- No dedicated support, but on the flip side, could yield faster solutions in some cases - depending on community support.
- Offers finer control over the quality of the platform with a faster turn around time
- Usually has greater stability
- Can find proprietary companies that offer a SDK, which dramatically decreases time to market with reduced effort
- You may no, or very little, control over the platform (this is dependent upon on the company that owns the platform)
- Can include expensive license or maintenance fees
- Possible fines or penalties if agreement is violated
Generic or Customized
The next thing to consider when choosing the right IoT platform is "Generic" or "Customized." If cost is your top priority and you do not care whether there are similar products like yours, a Generic Platform is the way to go.
- It's the most cost-effective option
- The IoT platform is already built and easily integrated
- A generic platform can also speed your time to market
- Has off-the-shelf IoT products with limited customization such as having your company name on the app(s)
- User interface and IoT workflow are pretty much locked down
- Any change request (bug fix or enhancement) is likely to be time-consuming as the provider needs to evaluate the impact of all their customers
If you have a long-term IoT product(s) portfolio plan, it's recommended to go with a customized platform. The initial cost will pay off in the long run and you will have your unique IoT product line. A customized platform:
- Allows you to build a unique IoT product(s) based on your requirements
- Engineering services will work with you to customize their platform to meet your requirements
- It's the least cost-effective option
- Will require significant time to test and prototype
- Increases your time to market
IoT Software and Protocol Design
With so many components in an IoT platform, many focus on the hardware, chipset, and chipset BSP. As techies ourselves, it's easy to get too focused on having the latest chips, features, and specs. While they can be important, the IoT Software and the IoT protocol design play the most crucial role in the platform. Not too mention it's not usually advisable, as a new company, to start with the newest unproven tech. In most cases, it's advisable to use proven technology and leave the cutting edge stuff too larger companies that can absorb the cost and risk involved with using the latest offerings.
Once you have an idea on the IoT platform offerings you'd like to go with, you are going to want to test it out. You wouldn't want to go with an expensive IoT solution without giving it a test drive first. Any IoT Platform offering worth it's salt is going to have a way of testing it out and evaluate for your product needs. At we have many IoT options and devices for you to evaluate.
Here are a few IoT operational concerns to keep in mind when testing IoT software and protocol design play:
- Make sure the device onboards successfully (getting IoT device to connect to Internet fast and reliably every time)
- Make sure the device has a low fail rate when onboarding. Be sure the device is tested with both 2.4GHz and 5GHz WiFi networks.
- Determine the BSP (board support package used for standard onboarding) IoT device software is at a consumer quality level
- Determine that the response time of the IoT operation is speedy
- Be aware that, depending upon design, customizing UI and features for apps may take an extended period time
- Make sure the design is modularized for easily integrating additional features or components
Building an IoT product is very complex. By outsourcing non-core areas of your product to an IoT platform, you'll reduce risk, minimize cost, improve quality, and accelerate your time to market. It is highly recommended to get a demo unit from the IoT platform provider and test it out yourself and also to evaluate the IoT platform design (e.g., making it has SDKs in their design). Though it can be very challenging looking for the right IoT platform suited to your needs, we hope this information helped you in your search. If you have any questions, feel free to reach out to us!