By Jason Shepherd, LF Edge Governing Board member and IoT and Edge Computing CTO, Dell Technologies
Founded in 1996, Technotects is an IoT technology consulting firm with broad domain expertise in industrial use cases. When one of their industrial equipment OEM customers independently realized the power of the EdgeX Foundry framework, Technotects planned and executed a Proof-of-Concept (PoC) with one of their customer’s typical process skid use cases.
This blog walks through the successful PoC, including what the solution entailed and Technotects’ experience working with the EdgeX platform. We’re seeing more and more of these types of real-world applications go public in the community on the heels of the EdgeX Foundry “1.0” Edinburgh release.
The use case
The use case for the PoC is monitoring sensor and pump information from a process skid used in a variety of applications, including agricultural, flavors and fragrances, pharmaceutical, petro-chem and food/beverage industries. Technotects’ goal of the effort was to prove that the EdgeX Foundry platform, combined with commercial value-add from the ecosystem, can provide an Internet of Things (IoT) solution stack that can address the unique interoperability challenges that industrial applications present, such as a mix of connectivity protocols and near real-time I/O processing, all while giving them the freedom of choice by being decoupled from proprietary, single-vendor solutions. In turn, this would allow their customers to improve their overall solution architectures, reduce runtime royalties and accelerate their time-to-market.
Technotects’ initial interest in EdgeX Foundry was the flexibility offered by the open ecosystem and the potential of reducing excessive runtime licensing fees per deployed host node, based on the combination of a proprietary edge application framework, edge historian and both southbound and northbound connectivity. In addition, they were attracted to the ability to make build-or-buy decisions with EdgeX without being locked into any specific choice for connectivity or applications value-add services.
The PoC basics
For the PoC, Technotects leveraged a Dell Edge Gateway 3002, Photon OS and VMware Pulse IoT Center, Edge Xpert from IOTech, RedisEdge from Redis Labs, Project Iris from RSA Labs, both AWS and Azure cloud platforms (hosting Redis for data backup) and a custom-built edge management console. Refer to the figure below for a block diagram of the setup and read on for more detail on how the effort came together.
Solution deep dive
For the EdgeX foundation of the stack, Technotects chose to work with IOTech’s Edge Xpert offering – a commercially-supported variant of the open source code that is available from the project GitHub within the Linux Foundation. Their use of Edge Xpert enabled them to focus on the integration with their customer’s preferred value-add software components rather than dealing with the open source code. They found IOTech’s documentation to be clear and the initial installation to be quick and straightforward – benefits when using a commercial variant that has additional hardening and packaging. Of course, using a commercially-supported variant versus simply downloading the open source code is a matter of personal preference.
EdgeX is completely neutral to OS, underlying hardware, protocol and programming language, and for this PoC, Technotects chose to leverage the Dell Edge Gateway 3002 and both Ubuntu from Canonical and Photon OS. Photon OS is an open source, container-optimized Linux distribution that has been nested within VMware’s vSphere offering for some time. Technotects was able to run their console, communication drivers, Edge Xpert and all the other referenced value-add software components in Docker containers in both operating systems, all without issue. They find that having the flexibility to deploy on any combination of hardware (x86 or ARM) and operating systems (Linux or Windows) in the field depending on customer need is valuable.
For southbound connectivity, Technotects leveraged a hybrid model. The process skids leverage a programmable logic controller for process control and for this PoC, Technotects used a commercially available Ethernet/IP driver to communicate with it. In turn, they connected this off-the-shelf, licensed driver package into the OPC-UA Device Service native to EdgeX. To connect to other devices on the skid, Technotects used the Modbus TCP protocol from IOTech’s Edge Xpert offer, written using the native EdgeX Device Service SDK. With the plug-in Device Service model, any combination of devices and protocols can be readily added in the future as needs evolve.
The solution architecture is a great example of both 1) how existing connectivity stacks can be used alongside native EdgeX Device Services in a hybrid model and 2) that in the EdgeX model, even connectivity written with the open EdgeX Device Service SDK can be monetized. Commercially-supported variants of EdgeX Device Services are likely to be attractive to end users with mission-critical use cases that involve bespoke and/or proprietary protocols in that support for this southbound connectivity often requires institutional knowledge gleaned from reverse engineering.
Meanwhile, end users can benefit from a growing number of open source Device Service options available within the community and increasingly Device Services that are supported by sensor makers for greenfield applications, coming with the sensor just like a keyboard comes with a driver for a PC. (Side note: There are numerous additional opportunities in development in the EdgeX ecosystem, although I must be sensitive to NDAs until they’re made publicly available). Net-net, the value of the open, vendor-neutral EdgeX ecosystem is in providing developers and end users with choices based on whatever is most valuable for their business.
Technotects leveraged VMware’s Pulse IoT Center to manage and monitor the underlying gateway hardware, OS and the EdgeX application framework above. VMware Pulse is a massively scalable, platform and application-independent solution for onboarding, managing, securing and monitoring IoT devices and gateways. System update campaigns can be applied in bulk and admins are alerted to any issues with their devices deployed out in the field, all in real-time. While VMware Pulse can be used standalone with its embedded device agent, it’s especially powerful when used in concert with the EdgeX framework. Any preferred console to manage applications and the underlying host system can be used with the EdgeX framework, with application-level functionality being enhanced by taking advantage of the EdgeX System Management Agent (SMA).
Technotects found the northbound connectivity to both Azure and AWS available in IOTech’s Edge Xpert to be very easy to configure. This highlights a key benefit of the EdgeX framework – decoupling investments in southbound data ingestion from any given cloud to enable choice over the long term, including realizing true-multitenancy from the edge. With the addition of support for multiple application services in the recent 1.0 Edinburgh release, data related to infrastructure monitoring and management can be sent to their management console of choice (in this case VMware’s Pulse IoT Center), whereas data related to the process for data analytics and taking action can be sent to any combination of on-prem or cloud-based application stacks of choice.
For local data persistence, Technotects chose RedisEdge over the MongoDB reference database that has been the baseline in the project until the recent 1.0 Edinburgh release. Technotects found it very easy to replace MongoDB with RedisEdge with no functionality differences, thanks to the work of Redis Labs in terms of making it an available plug-in within the EdgeX ecosystem. This is yet another example of how EdgeX is truly open and vendor-neutral, enabling users to leverage any enhancing functionality of their choice.
Finally, the PoC explored RSA Labs’ Project Iris active threat monitoring solution. Iris is a container that plugs into the EdgeX framework (and any other stack that supports containers) to profile baseline behavior for the stack and connected devices and then uses machine learning to detect anomalies. In turn Iris create alerts linked back to RSA’s popular Netwitness offering.
In closing, Technotects found EdgeX Foundry easy to work with and was able to successfully replicate their customer’s use case for process skid monitoring by leveraging the commercially supported framework from IOTech and value-add from Canonical, Dell, Redis, RSA and VMware. The flexibility to simply plug value-add into the open, vendor-neutral EdgeX foundation will provide both Technotects and their customers with more options in the future and help mitigate lock-in to proprietary edge platforms.
The EdgeX project has matured over the past two years to the current 1.0 state, and if you’re one of the thousands of end users that has been quietly prototyping with the platform, we welcome you to come forward and share your story on the project website through a blog or simple testimonial statement. The more people that come forward to share their success stories, the faster EdgeX will become the de-facto standard interoperability framework for the IoT Edge and the more we can all focus on innovation rather than reinvention!
Thank you for your time, and now’s your time to download the code or contact any of the providers in the ecosystem and build something great! Perhaps, as many have, even start your own business model around the EdgeX framework – just think of what Android did for scaling out an application and services ecosystem for mobile devices.
f you have questions or comments, visit the EdgeX Foundry Slack Channel and share your thoughts in the #community channel. Or, join the LF Edge Slack Channel and share your thoughts in the #EdgeX channel.