Supporting Software Updates With Open Source IoT
Kynetics is a Software Development Company with offices in California and Italy. It was founded in 2006 and specializes in embedded and server-side technologies. Kynetics provides tools and services that feature an integrated and consistent Internet of Things (IoT) development software pipeline. The company provides software as a service (SaaS) that is reliable and resilient, built utilizing open source technologies to deploy software updates to IoT devices, along with a recovery system for safe measure.
The decision for Kynetics to use open source technologies was mainly driven by the licensing model, but they also wanted to build their solution on a solid foundation from the start. Many great companies and developers from various industries contribute to open source. This means that a very good infrastructure has been created and the technologies have been used and tested by others. “Today it is too expensive, resource intensive, and time consuming to start something from scratch. It just makes sense to base your technology on open source,” says co-founder and CEO Nicola La Gloria.
The Kynetics team wanted to give back to the open source community after many years of leveraging it to create their technologies. That’s why they co-founded warpx.io (www.warpx.io), a community that supports the Warp board reference design. Warp is an open source platform that is designed for wearables, sensors, and IoT devices. It’s a small form-factor embedded system that can be directly integrated into a final design. If it wasn’t clear by now, La Gloria confirms it by saying, “The Kynetics team fully believes that IoT must be transparent, secure, and open.”
Using Eclipse IoT Technology
Currently, the core focus at Kynetics is to provide a platform for remote software updates. They see an advantage in using the set of Eclipse IoT projects in their technologies because of the Eclipse Foundation’s reputation and its professional approach to project governance, quality standards, and licensing.
Kynetics now uses various Eclipse IoT projects, including
- Eclipse Mosquitto and Eclipse Paho for machine-to-machine (M2M) communication
- Eclipse Kura, Eclipse Kapua, and Eclipse Equinox for software provisioning and management
- Eclipse Kura and Eclipse hawkBit for embedded gateway services implementation
- Eclipse Hono for device to cloud data management
Eclipse hawkBit is a great backend for software updates. It bridges the gap between the device and provisioning system by interpreting the rollout use cases efficiently and adding value to the process by managing arbitrary device data and tagging. This can all easily be deployed thanks to hawkBit’s Docker packaging.
The Kynetics team started using hawkBit because they integrate SWUpdate — a Linux update project aiming to provide a safe and efficient way to update embedded systems — into Warp, their open source wearable platform.
Another advantage identified by the Kynetics team is the fact that hawkBit is written with Spring Boot, which made using hawkBit technology a no-brainer for their team. Kynetics already uses Spring Boot internally and externally, as well as in their Edge IoT platform. Edge IoT is a lightweight IoT middleware that connects embedded devices, gathers data, and provides application interfaces to a device management platform.
For all these reasons, Kynetics was able to extend hawkBit even further to meet their company’s needs and to include multi-tenant environment support. By leveraging their embedded software and backend systems experience along with Eclipse hawkBit, they created a remote software rollout platform called Update Factory (https://www.kynetics.com/update-factory). The platform’s functionality includes triggers for groups of devices to perform an update and an image repository, as well as basic reporting and monitoring capabilities. The platform features an “Android-like” single copy device-recovery system, which is robust if something goes awry during the update (for example, if the device is unplugged and the update fails halfway through because it runs out of battery), and is integrated with the hawkBit API.
Open IoT Technology and the Future
“The Eclipse Foundation [puts] forth great effort to provide open source contributions in the IoT space, which translates to vitality and enthusiasm. This is very important to us,” says La Gloria. Before relying on any technology, developers and companies need to know that they are architected and written with quality, long life, and maintenance in mind. Only then can they use a technology for production products with minimal risk. An umbrella like the Eclipse Foundation makes the evaluation and selection process straightforward. Even if the initial project contributor decides to move on, the project remains open and in the hands of the Foundation. In other words, it can still be used, contributed to, and improved.
Various industries now realize that IoT is and will remain indispensable to the success of their business. It’s also slowly becoming apparent to them that IoT must be transparent, secure, and open. That’s one of the reasons why Kynetics chose Eclipse IoT. Eclipse IoT is one of the drivers of the open source IoT initiative. It will influence and play an important role in the future of software across many industries. When all is said and done, companies that use open source IoT technology today will have the competitive advantage in the future.