How to choose an IoT Platform?
IoT for beginners
How do you know if the water is being properly used or wasted in your company? Are your employees comfortable with the offices' temperature and light? How do you verify if the machines are not getting rusty by humidity or, even worse, if your products’ quality is not being compromised by that?
Basically, IoT (Internet of Things) can be the answer to these and other common questions, making your life easier and your work more productive. Internet of Things is a popular concept nowadays. The objective is to connect any kind of objects or "things" to the internet and send information from the physical world without any human interaction required. Then, all this information is stored, processed, and analysed, enabling data driven decisions, performance, or action, all of this right from the cloud.
Based on IoT, water waste could be avoided by monitoring its daily use, temperature and light could be regulated in an intelligent way, your car could schedule maintenance service by itself, and maybe even drive itself to the technician. Briefly, IoT means savings, efficiency, productivity and comfort; it’s a technological revolution becoming a reality that you can easily access today.
The versatility of IoT allows you to deliver solutions on many verticals, such industry 4.0, healthcare, agriculture, logistic, retail, or smart homes and cities. It can be used to address relevant problems, including industrial accidents prevention, minimizing natural disasters impact, or verifying a product’s quality.
IoT is an unstoppable reality changing the way things get done, both in the industry and at home. Every day, there are more devices connected and more people and industries developing their own IoT solutions, with the help of platforms working to make it easier and more fun.
What is an IoT Platform?
An IoT system can be split in 4 main layers: hardware, connectivity, processing, and application.
- Hardware: Devices with sensors that collect information from their environment.
- Connectivity: Communication infrastructure used to broker information between the hardware and the cloud through different types of protocols.
- Processing: Once the data is in the cloud, it needs to be analyzed to extract valuable information.
- Application: The user interface that allows the end user to visualize and act upon the collected data.
As an example, let’s say your IoT solution aims to regulate the temperature in your company to increase the productivity of your team. First, you would install temperature sensors in each office; at this point, you have the hardware layer of the IoT system. But to build a value-adding solution, you want to build all the way up to the application layer. This layer implies the development of a software system, thereby increasing the complexity, time, effort, and overall cost of the IoT solution.
IoT platforms are designed to do all this additional work on your behalf, by allowing you to integrate your physical devices in a friendly and efficient way through a simple, intuitive, and secure user interface. Also, IoT platforms allow you to create applications based on specific needs by using tools that facilitate the user's interaction with the system and enabling it to take advantage of the data.
How to choose an IoT Platform?
With so many IoT layers and vendors, it can be difficult to navigate the IoT ecosystem. Even though there seems to be plenty IoT platforms available in the market, you want to focus on those that don’t limit themselves to managing your device fleet but give you the “Application layer”, where you can present the data to end-users. The final choice will, of course, depend on your particular requirements, but here are some general criteria for you to consider
- Basic functionalities: There are basic operating features that all IoT platforms should offer:
- Data storing and visualization.
- Data analysis and processing tools.
- Events configuration.
- Control and ownership of the data.
Data storage and visualization are key to building an efficient IoT solution. Monitoring the historical behavior of a variable gives you full control of your data and allows you to spot possible trends or misbehavior in your devices.
For example, you're monitoring the temperature of a machine in constant operation and you spot a daily increase of 4°C in the temperature over the last week, going from 40°C to 68°C. You would be able to notice this abnormal behavior and service the machine, avoiding potential damages that could translate into time and money waste.
The tools for analyzing and processing data are essential to extract valuable information from raw data. Through these tools, you can identify and analyze anomalies, trends, or specific behaviors in the variables. These tools can range from simple operations to more complex mathematical calculations, including regression algorithms, forecasting, or anomaly detection.
On the other hand, events are key to making data driven decisions and automating processes based on a variable’s behavior. Suppose your solution monitors a water tank to prevent its level from going below a certain value. But let's be honest; what's the point of remote monitoring 24/7 if a person constantly needs to check the water tank level? That's why event alerts, triggered based on data values, are needed to make the solution work for us, instead of us working for the solution.
Last but not least, it’s important to verify you have complete control and ownership of the data. Data should be available only for you, and only you can manage it, guaranteeing its privacy.
- Reliability: This refers to the platform's uptime, including web interface, real-time and API availability, as well as data accessibility and other services. Most of today’s standards expectations are above 99.5%, which ensures not only a straightforward workflow but also increases project success rate.
- Flexibility: Oftentimes, the term “IoT Platform” is used to describe a web monitoring tool of a proprietary hardware provider. However, we believe this is incorrect. A real platform, by definition, is a place where 3rd party components can be used to create innovative solutions. The more diversity in terms of protocols, devices, and plugins supported by the IoT platform, the greater the possibilities to achieve your project’s success, both today and in the future.
- Scalability: This item refers to the platform’s ability to manage thousands of devices and millions of datapoints securely and smoothly without compromising performance or requiring tons of hours.
- Customization: Most innovative IoT Platforms provide their users with a way to customize and white-label their application as the user sees fit to fulfill specific requirements.
- Security: This is one of the most important aspects to look for in an IoT platform, no questions asked. Nevertheless, security depends on both sides, the IoT platform provider and you as the architect of your IoT solution. Make sure your IoT platform provider supports API authentication methods complying with standard practices and stored data doesn’t get modified arbitrarily, that is, reliable databases. Also, make sure their APIs support encrypted traffic, such as TLS or SSL, through secure protocols.
- Application examples: One aspect often overlooked is the availability of examples, in the forms of tutorials and code. Having immediate access to use cases similar to what you have in mind will allow you to determine whether the IoT platform fulfills your requirements or not.
- Pricing model: IoT typically starts with a prototype, then a proof of concept at a customer’s site, and then gradually scales to thousands of units. An IoT platform with a flexible pricing model will allow you to have reasonable costs throughout the lifecycle of your IoT application. Additionally, check for transparency; no one likes to be surprised with unmentioned fees.
- Customer success: Even though your devices will be the ones interfacing with your IoT platform, you as a person will also be interfacing with the team behind the platform. Look for teams that engage in fruitful conversations, documentation, and support that ultimately help you succeed.
- Experience: Experience and know-how speaks for itself, so having access to use cases strengthens trust and helps make the right choice. For example, metrics such number of clients, operating time, changes, and improvements in the last few months or use cases gone to production using the platform, just to name a few, speaks well of the platform and provides good insights in regard to its dedication, responsibility, and quality of services.
In sum, IoT is a mix of ingredients that ultimately translates into a complex concept. IoT platforms are officially a market category, with a number of mature products to help you make your IoT journey simpler. IoT platforms are powerful tools, essential for IoT and data driven solutions, connecting all the elements of an IoT system and, at the same time, providing means and tools for the user to interact with it.
At the end, IoT platforms offer two main advantages when it comes to IoT solutions development: ability for users to implement their solutions using different built-in features and circumventing some of the implicit technical challenges and, more importantly, avoiding the need to hire specialized staff in software development to build a proprietary platform from scratch, saving time, money, and maintenance efforts to launch a production-ready solution.