A few months ago, my colleague Malini Bhandaru and I described how we created a proof of concept for automotive IoT. Our main interest in that project had been to build a simple but effective IoT application from scratch – both to show it was possible and to aid our understanding of how open source IoT frameworks might develop in the future for other edge applications. We’ve since been supporting that development in part through contributions to EdgeX Foundry, the Linux Foundation-hosted project that is building a common open source platform for IoT edge computing.
As a natural follow up to our first IoT proof of concept, we wanted to see if we could now build an IoT application using the EdgeX Foundry architecture. We’ve just completed that work, and I shared details about it at The Linux Foundation’s Open Source Summit North America in San Diego. My talk, “Easy as a pi: EdgeX on Raspberry Pi for Automotive IoT,” was part of the conference’s Open IoT track.
Our task was to build essentially the same automotive IoT app as we had before but now do it in EdgeX. Working with EdgeX software allowed us to build the app both faster and with more reliability, two key benefits when discussing edge devices. Once again, the single app was designed to serve three real-life IoT use cases. Auto insurers could, for example, utilize artificial intelligence to analyze big data and more accurately adjust insurance premiums. City planners could use real-time data from both vehicles and other IoT sensors to guide traffic flows in smart cities of the future. And individuals themselves could learn about their driving habits to improve fuel consumption or engage in predictive maintenance. Notably, and similar to our last experiment, we were not interested in sending directions back to the automobile as one might be if they were developing autonomous vehicles systems. There’s more than enough to learn from developing a highly mobile open source data delivery system for the network edge.
This time, we used a GPS device plugged into a Raspberry Pi board running EdgeX Foundry. We then wrote a device service that would gather data from the GPS device, format it and export that sensor data into EdgeX Foundry, from where it could be exported up to the cloud to take advantage of greater processing power.
It’s a pretty simple set up, but it illustrates how EdgeX Foundry’s increasingly rich ecosystem of plugins make it easy to both develop and scale real-world IoT applications. It also shows the promise of open source for connected devices and IoT technology across use cases.
In my talk, I describe our build process and the factors that come into play when you create a full stack EdgeX-based application. I hope it will help demonstrate that EdgeX software is ready to support fully functional open source IoT applications and perhaps inspire others to experiment with building their own open source IoT solution. Who knows? It may even spark some interest in the broader automotive industry as well
For developers who were unable to attend Open Source Summit, you can find my project’s source code on GitHub.
Stay tuned to the Open Source Blog and follow us on Twitter (@vmwopensource) for updates leading up to the summit.