“Starting an Internet of Things (IoT) project is a daunting task. You may know what your final product or service needs to do (or you may not), but you don’t always know the best way to get there. So you start – you design a prototype, you source components, you build the code, you test, you discover that the solution you thought you just had simply wasn’t right – the connection technology you chose didn’t work as well as you needed it . So you start over.
Author: Ashish Syal
Starting an Internet of Things (IoT) project is a daunting task. You may know what your final product or service needs to do (or you may not), but you don’t always know the best way to get there. So you start – you design a prototype, you source components, you build the code, you test, you discover that the solution you thought you just had simply wasn’t right – the connection technology you chose didn’t work as well as you needed it . So you start over.
This is where the problem lies. Because of one component of the prototype, you have to start all over again because your next choice requires completely different connectors, different hardware, and different code.
Or maybe you find yourself with a different problem. You launched your product and it was very successful. So successful, in fact, that your sales team is handling inquiries from markets you didn’t even think about when you were developing. Unfortunately, your product is not designed to work on these networks or under these conditions, and to accommodate the new requirements, you will need to redesign the entire design, significantly reducing your return on investment and possibly even forcing you to miss out on your opportunity Window.
These problems, while vastly different, share the same underlying cause. While there are many commonalities between IoT solutions across different applications – such as the need for wireless connectivity, the need for communication between devices and back-end systems, the collection and interpretation of data – the proliferation of siloed and proprietary systems makes development And building these solutions is more complex and time-consuming than it needs to be. They also complicate open communication flows between disparate systems, making them less useful than expected and hindering future innovation.
While the challenges are certainly enormous in a fast-moving, fragmented industry, there are solutions available if we are willing to collaborate.
One of the ways that interoperability challenges can be alleviated is by establishing and using standards. Thoughtful and collaborative standardization improves choice and flexibility – developers can use equipment from multiple vendors to customize solutions to their specific needs, so they can be more innovative in building their solutions and cost-effective.
Standards are needed across the system, and the industry is addressing these issues in a number of ways. For example, industry standards organizations such as industry stakeholder alliance oneM2M have developed technical specifications to meet the need for a common M2M service layer that can be embedded in a variety of hardware and software and rely on connecting various devices to M2M applications server. The group has published the oneM2M version 1 specification, which can be downloaded from www.onem2m.org.
Another complementary approach to standards development is to publish designs and specifications developed by industry ecosystem participants to the open source community as open hardware and interface standards adopted by others. This approach has grown in popularity recently, with open hardware reference designs and open interface standards becoming more readily available and major industry players collaborating to support them.
Some of the examples above are Arduino, Raspberry Pi, and Beaglebone, which are very popular for rapid prototyping. Another example is the recently introduced mangOH Open Hardware Reference Design, an open source design built for cellular connectivity. It leverages other open hardware platforms, such as Arduino, and industrial-grade IoT connectors that have been released as open standards.
mangOH is truly open source. This means that the design (BOM, schematics, Gerbers, test documentation) is released in the public domain. Free to copy and modify under a Creative Commons license. End users can use it as-is to build industrial products or modify it as needed.
Figure 1: The mangOH open hardware reference design with an open standard for IoT connectors.
Such platforms enable developers with limited hardware, wireless or low-level software expertise to develop applications in days rather than months. When executed properly, these can significantly reduce the time and effort from paper prototypes to production by ensuring that various connectors and sensors work together automatically without coding. With industrial-grade specifications, these next-generation platforms enable not only rapid prototyping, but also rapid industrialization of IoT applications as they can go directly from prototype to production.
As the community grows, each contribution leads to the next, innovation accelerates, barriers to entry lower, interoperability becomes easier, and everyone wins.
On the software side, it can be very helpful to use widely supported open source software application frameworks and development environments such as Linux-based. When you use a proprietary solution, support for its development framework is up to the original vendor, whose agenda may not align with your needs. Open source solutions provide a broader development community that can help ensure that you can still find development resources and support five years later, regardless of the status of your original solution provider, protecting your time on solution development and investment.
Figure 2: The Legato Embedded Platform combines an application framework and integrated development environment with a commercially supported Linux distribution,
for long-term viability and support.
Open source application frameworks also provide a wealth of resources, including online code repositories and developer communities, that give IoT application developers a head start in bringing products to market. One example is the Legato Embedded Platform, developed by Sierra Wireless and released last year, which is free to download, can be embedded into any application processor, and simplifies the development of IoT applications.
There are other advantages to using open source software. For example, a broader developer base working with code leads to greater scrutiny, which may lead to more secure solutions. It also allows IoT application developers to customize the code to meet their specific security requirements.
One of the initial hurdles to overcome when developing IoT applications is that driver development and integration can be difficult, and software people with the right skills are not so easy to find. With open source platforms such as Legato, these drivers are natively integrated, thus greatly reducing the amount of development effort required.
In the open source developer community, there is also a need to move beyond developing device drivers to developing more complete applications that can be used to build solutions and reuse them. IoT developers can choose to create an application and share it through repositories such as Github, or leverage applications developed by others to build something new.
No one can imagine all possible applications of IoT technology. We are committed to a standards-based open source strategy because we believe it will drive IoT innovation as it has in many other areas of technology development, making it easier for developers to bring their applications to market faster. It gives developers more flexibility to port their applications and even parts of their code from one device to another, one generation to the next. This makes it easier to justify development investments and reduces the time and effort required, especially as the developer ecosystem expands.
Most importantly, the use of open source software, open hardware standards and specifications, and industry support for standardization efforts are critical for interoperability, enabling faster prototyping, and laying the foundation for true innovation.