Category

Blog

LF Edge in 2020: Looking back and Revving forward

By Akraino Edge Stack, Baetyl, Blog, EdgeX Foundry, Fledge, Home Edge, Open Glossary of Edge Computing, Project EVE

Written by Melissa Evers-Hood, LF Edge Governing Board Chair 

Dear Community,

Happy New Year! As we kick off 2020, I wanted to send a note of thanks and recognition to each of you for a wonderful 2019, which marked several meaningful accomplishments for this organization.  LF Edge was launched in Jan 2019 with an aim to unify the edge communities across IOT, Telco, Enterprise and Cloud providing aligned open source edge frameworks for Infrastructure and Applications.

Our accomplishments include:

  • EdgeX Foundry has blossomed this year in participation, downloads, and use cases. EdgeX, as folks commonly call it, also graduated to Impact project stage and surpassed 1.5 million container downloads in 2019.
  • Akraino, which also reached Impact stage this year, is preparing for it’s second release with 5 new blueprints for R2, with updates to 9 of the existing 10 R1 blueprints already released. Most notably, its broadening its blueprint profile to include new blueprints for Connected Vehicles and AR/VR, truly becoming a viable framework across edge applications.
  • At the Growth Stage, Open Glossary provides common terminology and ecosystem mapping for the complex Edge environment. In 2019, the Glossary Project shipped 0 of the Glossary, which was integrated into the 2020 State of the Edge Report. The Glossary Project began the process of helping to standardize terminology across all LF Edge projects, and also launched the LF Edge Landscape Project: https://landscape.lfedge.org/.
  • Also at the Growth Stage, Project Eve allows cloud-native development practices in IOT and edge applications. EVE’s most recent release, 4.5.1 (which was gifted on December 25, 2019), provides a brand new initramfs based installer, ACRN tech preview, and ARM/HiKey support.
  • The Home Edge project, targeted to enable a home edge computing framework, announced their Baobab release in November. The Home Edge Project has initiated cross-project collaboration with EdgeX Foundry (secure data storage) and Project EVE (containerized OS).
  • We also added 2 additional projects this year.
    • Baetyl which provides an open source edge computing platform.
    • Fledge which is an open source framework and community for the industrial edge focused on critical operations, predictive maintenance, situational awareness and safety. Fledge has recently begun cross-project collaboration with Project EVE and Akraino, with more information available here.
  • Our reach has broadened with 9k articles, almost 50k new users, and 6.7M social media impressions.

I am excited about the work ahead in 2020, especially as we celebrate our one year anniversary this month. We laid the foundation last year – offered a solution to unite the various edge communities – and now, with your support and contributions, we’re ready to move to the next phase.

LF Edge is co-hosting Open Networking & Edge Summit in April and our teams are working hard on several cross-project demos and solutions. We’re planning meetups and other F2F opportunities at the show, so this conference will be a must.

Our focus as a community will be to continue to expand our developers and end users.  We will do this through having agile communities, that collaborate openly, create secure, updateable, production ready code, and work together as one. We also expect that there will be new projects to join and integrate.  As we walk into this bright future, working as a unified body will demonstrate that the fastest path to Edge products is through LF Edge.

I look forward to working with each of you in ‘20 and seeing you in Los Angeles this April at ONES!

Melissa

EdgeX Foundry Launches China Project

By Blog, EdgeX Foundry

Written by Gavin Lu, LF Edge member, EdgeX Foundry China Project Lead and R&D Director in the VMware Office of the CTO

LF Edge’s EdgeX Foundry recently launched a China Project, which includes but is not  limited to evangelism, engineering and marketing of EdgeX features, use cases, productions and solutions. Everyone is welcome, and all presentations and notes will be openly posted on the Wiki.

To kick it off, VMware recently hosted an EdgeX Foundry Meetup and a China Project F2F.  During the EdgeX Foundry meetup, eight speakers presented topics to about 100 attendees from Arm, China Telecom, China Mobile, China Unicom, ZTE, Redhat, Oracle, Wind River, Siemens, Advantech, SAIC, Suning, Yonyou, Oppo, Unigroup, GIT, BUPT, and a few universities and startups.

  • Alan Ren, MSD of VMware China R&D, welcomed attendees and presented the agenda
  • Xuan Yang, Director of LF China: “Using Open Source: Building an Enterprise IoT Platform Based on Linux Foundation Open Source Projects
  • Gavin Lu, R&D Director of VMware: “The Development History, Status Quo, and Future of EdgeX Foundry China Community”
  • Melvin Sun, Sr. BD Manager of Intel IoT: “Intel Open Retail Initiative.”
  • Rocky Jin, Product VP of EMQ: “Kuiper-open source edge real-time streaming data analysis framework”
  • Haihua Chen, WayClouds CEO: “EdgeX Foundry-based AIoT Cloud Native Edge Computing Platform”
  • Xinghui Yong, Architect of JD Retail: “Application of EdgeX in JD Star Retail IoT Platform”
  • Xiaojing Xu, Architect of Thundersoft: “Thoughts during the implementation of edge computing”
  • Henry Zeng, Principle PM of AI Platform, Microsoft Aisa Engineering Institute: “Application of High-Performance Modeling Based on ONNX Runtime in Edge AI”

The Workshop

As part of the meetup, VMware also hosted a workshop, which provided a hands on opportunity to new comers or entry level developers to EdgeX Foundry, and provide an easy experience of edge application in full life cycles, from dev, test to package, publish, deploy, monitor. Another part of the workshop is to show how ML inference could be conducted easily by a set of common Rest API service support heterogenous hardware accelerators.

VMware provided full support for IT infrastructure, toolkits, application management platform and ML inference services based on our innovation projects around EdgeX Foundry. Around 55 people registered for the workshop and most attendees finished all tasks as planned.

F2F Meetup

In a smaller group of about 20 pre-registered people, VMware hosted the first China Project face-to-face meeting to prepare the 2020 plan. Sixteen representatives from 12 companies joined the discussion, including thought leaders from the Linux Foundation, VMware, Intel, Dell, JD, H3C, China Mobile, Thundersoft, EMQ, Wayclouds, Zilliz, and OriginalTek, etc.

Melvin Sun from Intel introduced the idea of China’s first EdgeX Foundry Hackathon, which triggered an engaging discussion about the date, venue, form, topics, collaboration approach, teaming topics, etc. The event is still in the planning phase, though we are hoping to host the hackathon in March.

Gavin Lu from VMware introduced the high level idea about China Project and a draft proposal on what could be done in next year. The draft plan of China Project in 2020 could be roughly divided into three categories:

  • Evangelism
    • User/solution list: List all EdgeX Foundry users and relative solutions in China project wiki page, to encourage and advocate its usage.
    • Webinars: Keep (increase if necessary) the bi-monthly frequency, focus more on EdgeX app developers, in code level and architecture analysis.
    • Meetups: Plan for quarterly, or increase instances on specific industries, focus on architecture, functions, solutions and product integration.
    • Workshops: Host yearly or bi-annual, entry level code training, provide hands-on experience on EdgeX Foundry app development.
    • Hackathons: Leverage yearly or bi-annual, advanced code camp, focus on new features, projects, solutions, with sponsorship and awards.
  • Collaboration
    • Internal
      • Solutions: focus on mature industries, like retails, manufacturing, energy, cities/campus.
        • Summarize use cases and customer requirements
        • Define reference architecture models and implementations
      • Test bed/certificate: focus on edge devices, OEM vendors and e2e solutions
        • Facilitate advanced developers and distribute dev kits
        • Develop and deploy test beds to validate solutions
    • External
      • Enhance collaboration with other relative industry organizations, e.g. CAAI, AII & ECC.
      • Active discussion with telco carriers on use cases of integration with 5G, MEC and Industrial IoT
      • Build partnership with developer communities, like Go-lang community
  • Contribution
    • Encourage and assistant direct code contribution to EdgeX code repos
      • Provide help to interesting organizations, on code review, bridging connections, communications etc.
    • Organize translation of English docs to Chinese, or write tech posts in Chinese directly.

We have to build sub-teams to execute action items accordingly. With volunteering from representatives, industry sub teams were built with team leaders as following:

  • Retail: Intel*, JD, Thundersoft, WayClouds, Dell, Zilliz, China Mobile
  • Manufacturing: H3C*, Quarkdata, Dell, Thundersoft, Intel, China Mobile
  • Energy: WayClouds*, Quarkdata, Dell, H3C, EMQ, China Mobile
  • Cities/Campus: Intel*, Zilliz, Dell, EMQ, China Mobile
  • Transportation: OriginalTek, China Mobile

Companies with * is the team lead of that industry sub-team. Due to limited members in transportation sub-team, there is no team leader yet there. All sub teams welcome new companies to join.

As for the core team, besides VMware, all industry team leaders join, i.e. Intel, H3C, WayClouds. To ensure daily work and communication, Intel is nominated as co-maintainer for China Project.

The China project core team and all industry sub-teams will conduct discussions separately, actively attract more companies to join, and produce annual plan and action items within two months.

For more information, stay tuned to the EdgeX Foundry China Project Wiki: https://wiki.edgexfoundry.org/display/FA/China+Project. All updates will be posted there.

My ‘First’ and the ‘First’ EdgeX Open Hackathon – Infinite Possibilities

By Blog, EdgeX Foundry

Written by Sangeeta Ghangam, Platform Architect in the Retail-Banking-Hospitality-Education (RBHE) Division, Internet of Things Group, Intel

On October 7-8, 2019, I participated in the first LF Edge EdgeX Open Hackathon focused on Retail use cases. I had some exposure to EdgeX Foundry before the hackathon but it definitely did not prepare me for the experience that lay ahead. I normally prefer planning my work travel & technical sessions to the point where I know exactly what’s on the agenda, what needs to be done prior to the session and how it can all come together. However, this time around, I had no clue what we were going to do and how we were going to do it. I knew a few of my colleagues were on the team but we don’t work together on most of the projects so it was difficult to know who would do what, plus we had one of our customers/partner (Intuiface) on the team as well. To top it all, pre-work was allowed but, unfortunately, we didn’t get a chance to do any before hand.

Sounds like a disaster waiting to happen, right?! But it was a perfect way to experience the hackathon. The objective of the EdgeX Open was to introduce the EdgeX Foundry infrastructure to the participants – a mix of folks from all backgrounds and expertise, for feedback both technical and from a go-to-market perspective. On the first day,  we were told about all the different software and hardware tools available for the participants – from compute systems to sensors to cameras and retail products.  We also learned more about the EdgeX Edinburgh release, which was a significant milestone for the software, available as a docker or a snap package. We spent the first 2 hours after the initial presentations just fiddling with all these different options – install EdgeX, rummage through the sensors etc. Finally, we found a camera we thought we could use in addition to the bonus camera that was setup as a mock check-out lane. Now that we got comfortable with the tools we needed a use case or a problem to provide solution for. We considered the topics or themes which were part of the hackathon, the wildcard appealed the most. And a “real” problem surfaced as well – customer friendly checkout in the age of automated & self-checkout?

At some point or another, we have all experienced frustration as we tried to self-checkout quickly resulting in delays, waiting for help, etc. We figured we could use the sensors and camera to gather data, feed it to EdgeX and generate insights that a store associate can use to provide assistance where needed. We decided to split the solution over 3 systems –  one running EdgeX, one running analytics over Intel Openvino and another running the dashboard (for the store associate) and use the following list of sensors:

  • 2 Cameras – One at our desk and the bonus camera representing the mock check-out lane
  • Nexmosphere sensor kit consisting of RFID sensors and LED sensors. We planned to use the RFID sensor to track the product at checkout and the LED sensors to provide a visual status of checkout lane to the store associate.

The multi-system and multi-sensor setup mirrors what is typically found in Retail Stores today which is where EdgeX infrastructure can work as a data highway. We split the work on the 3 systems amongst the 5 team members and started in earnest around mid-afternoon on the first day. I remember we finished 70% of the work on the first day and about 30% on the second.

We had several learnings along the way as we experienced the different software and hardware pieces:

  1. There is more than one way to install EdgeX on the target system via containers or snaps. Since we were comfortable with containers, we used the same and did not run into any significant issues during setup.
  2. We ran into some hurdles while using Ubuntu 18.04 for Intel Openvino installation. Turned out Ubuntu 18.04 changes how the mirror sites work for downloading dependencies, reinstating these settings seemed to help.
  3. It was difficult to make changes to the device profile in EdgeX to add additional variables for the new sensors we wanted to add to the system. It required multiple re-installs of the EdgeX system, I believe this is a known issue and only way to work around this is to purge the database and/or re-install.
  4. We also wanted to showcase remote management using Intel vPRO but ran into issues trying to use the snap version of the software.

We were able to work through items 1, 2 and 3 with help from the expert team from Intel but had to abandon item 4. The final solution looked like the following:

We had System 1 running camera analytics using Openvino such that any negative emotions detected in the customer were triggering a ‘1’ to the EdgeX  MQTT device service. We added two additional device services to receive product information via the bonus camera setup (this was the surprise element in the hackathon and had bonus points if included in the solution) and the RFID sensor. The dashboard created using Intuiface REST API tools enabled a real time view of the sensors. Depending on the product and the customer emotion analysis it would provide real time chart of the check out lane. If the customer exceeded ‘x’ amount of time with neutral, disgust or anger (any negative emotion), the software on system 1 would change the data from ‘0’ to ‘1’ to the MQTT device service. The custom software we wrote to extend the device and cloud services sent this data to the Nexmosphere sensor management software so the LED’s would turn ON. Given the real time chart and the LED status, the store associate can offer to help the customer before being called to help.

On day 2, we explained our motivation behind the work to the judging team ahead of the formal presentation. It was great to hear their questions and understand their perspective, we did not realize we ended up creating a solution that could support multiple use cases. I remember we titled the work and selected the use case ‘Enhanced Customer Experience during Checkout’.

Throughout this flurry of activity, we had opportunities to network with other teams, look at some of the cool work they were doing. We also interacted with the experts from LF Edge member companies like Intel, Dell and Canonical, which gave us first hand opportunity to provide feedback towards the next revision of EdgeX. The hackathon was very well organized, had great food and even included a live music jam session on day 1!

Although it was a new venue and a new team, it all came together in the end. Team Intel/Intuiface won second place!

Stay tuned here for more details about the next EdgeX Open Hackathon! If you missed the EdgeX Open, click here to watch the video from the event.

LF Edge Member Spotlight: IOTech Systems

By Blog, EdgeX Foundry

The LF Edge community is comprised of a diverse set of member companies that represent the IoT, Enterprise, Cloud and Telco Edge. The Member Spotlight blog series highlights these members and how they are contributing to and leveraging open source edge solutions. Today, we sat down with Andy Foster, Product Director, at IOTech Systems to discuss the importance of a growing ecosystem, their IoT framework, the impact LF Edge has made and what the future holds for the company.

Can you tell us a little about your organization?

IOTech’s vision is to build and deploy the pervasive secure, open IoT software platform for edge environments that helps drive innovation, global adoption, market velocity and scale.

The company is leveraging an open source strategy based on the LF Edge’s EdgeX Foundry project to accelerate growth of a global partner ecosystem and dramatically increase deployment velocity of IoT systems by reducing custom systems integration. The EdgeX project is aligned around a common goal – the simplification and standardization of the foundation for edge computing architectures in the IoT market.

IOTech is supporting the rapidly growing EdgeX global developer community and partner ecosystem by providing a fully commercialized version of the EdgeX called Edge Xpert.

This licensed offering comes bundled with a range of industrial grade connectors to popular North and Southbound and is available on multiple hardware and OS combinations with regular software upgrades and different support and maintenance service level options. Complementary professional service offerings include training, pilot project support, accelerated product extensions and third party product integrations.

Additionally, IOTech has extended  EdgeX with its recently announced Edge XRT, the first “hard” real-time edge IoT platform.

Edge XRT is designed to meet the needs of industrial edge applications faced with one or more of the following key challenges: deployable on ultra-low footprint embedded edge nodes; latency and response times measured in microseconds; requirement for predictable real-time processing and execution.

Why is your organization adopting an open source approach?

IOTech’s core business execution strategy is to support an open source business model. We believe that this is the only model that can realistically facilitate rapid global scale out of this technology in the window of opportunity that exists, both in terms of removal of barriers to development, deployment and Time to Market (TTM) for new products and services. IoT is also fundamentally about managing heterogeneity we believe that the market is demanding an ‘open’ versus proprietary approach at the platform level, our customers ultimately want choice of best of breed, not to be tied to one vendor’s solution.

Why did you join LF Edge and what sort of impact do you think LF Edge has on the edge, networking, and IoT industries?

We believe that the best way to address market fragmentation and drive edge technology adoption is through industry collaboration and an open architecture approach. LF Edge is creating an ecosystem of companies focused on addressing the key challenges faced by the next generation of edge systems.

LF Edge membership is growing rapidly and includes a broad spectrum of companies from major international technology leaders to new startups. The breadth of membership and expertise is helping to ensure a cross-industry approach, with organizations working collaboratively to solve a common set of edge related problems. By avoiding duplication while at the same time ensuring interoperability and re-use across LF Edge projects is key to speeding time to market and reducing the implementation risk of new edge technologies. 

What do you see as the top benefits of being part of the LF Edge community?

Firstly, by collaborating with other organizations on the development new open source edge technologies allows companies to pool resources and leverage the collective expertise of many of the world’s leading technology providers. For IOTech, this has the significant benefit of enabling us to bring new products to market more quickly and share the costs of developing these solutions.

Secondly, LF Edge is helping to shape the future direction of edge computing and being part of the ecosystem gives IOTech the ability to help influence that direction, something that is much more difficult to do if we were not a member. It also gives us much better visibility into the where the industry and market is moving with respect to edge computing technologies, as well as access to some of the best brains driving this change.

Finally, being part of growing LF Edge  ecosystem provides IOTech with many commercial opportunities to partner with other member companies to collaborate on new projects and drive business growth.

What sort of contributions has your team made to the community, ecosystem through LF Edge participation? 

IOTech are one of the founder members of the EdgeX Foundry project and have been actively participating in the project at various different levels from it’s inception. We have made significant contributions in terms of technical leadership and code contributions within the project. Members of the IOTech team currently hold the following leadership positions within EdgeX:

  • Keith Steele, TSC Chair and LF Edge Board Member
  • Jim White, TSC Vice Chair
  • Iain Anderson, Device Service WG Chair
  • Robin Chatterjee, Test/QA WG Chair

We have leveraged our expertise in OT systems to work extensively on EdgeX’s Device Service layer. This work includes the development of SDKs in Go and C and the implementation of a number of protocol specific Device Services including Modbus, BACnet, OPC UA, MQTT and Virtual.

As TSC Vice chair and original EdgeX architect, Jim White has been active across all of the project’s WGs, providing technical leadership and support to the EdgeX teams.  For almost three years Keith Steele has been Chair of the TSC, helping to coordinate the projects direction and actively promote its goals and objectives within the EdgeX ecosystem and wider industry.

In addition to IOTech’s contributions to EdgeX Foundry we are also participating other complementary LF Edge projects such as the Akraino Time-Critical Edge Compute project where our EdgeX experience can be shared within the wider LF Edge ecosystems.

What do you think sets LF Edge apart from other industry alliances?

Put simply delivery focus! Other bodies are focused on producing guidelines and possibly new edge standards, whereas LF Edge’s objective is to produce open source solutions that can be deployed in real system or proven blueprints that can be used to support real edge use cases. 

How will  LF Edge help your business?

Firstly, the collaborative development that is inherent in a open source project is allowing  IOTech to leverage a far larger pool of development resources than is currently possible on our own. This is helping us to bring new edge solutions to market more quickly.

Working within an ecosystem of the world’s leading-edge technology companies ensures that the technologies that we develop are addressing the real needs of industry. It provides our customers with the reassurance that our products were developed with broad industry support, helping reinforce the importance of openness and choice.

Finally, from a marketing perspective the profile of LF Edge generates a lot of attention in our target markets and the efforts of the LF marketing team provides member companies with lots of opportunities to complement their own marketing programs and also share costs, for example by attending key industry tradeshows as a co-sponsor on the LF Edge booth.

What advice would you give to someone considering joining LF Edge? 

From IOTech’s perspective we’ve hopefully outlined the key benefits of joining LF Edge. We also think that these benefits will apply to most organizations. Our recommendation is to join, embrace collaboration and most importantly get involved. Your return on investment will be multiplied depending the effort you apply and the projects that you support. Where else can a company leverage the combined expertise in edge computing and resources of the LF Edge ecosystem, especially when combined with the many commercial opportunities for collaboration and partnering.

 

Node-RED and EdgeX Foundry

By Blog, EdgeX Foundry

Written by Odysseas Lamtizidis, EdgeX Foundry Technical Community Member

In this post we will be looking into the integration of two fundamental Open Source platforms for the Internet of Things.

The first being Linux Foundation’s EdgeX Foundry platform as the backbone of our system and Node-RED which will be used to simulate a Device Service.

But first things, first. What is Node-RED?

As we read from their website:

Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways.

It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click.

Node-RED thus is an event-driven flow-based programming platform that is built on Node.js, leveraging it’s lightweight nature and extensive scalability to create applications mainly for the Internet of Things.

A flow-based programming language is a language where the application functionality is expressed as a series of black-boxes that are connected, creating a chain where the output of a box is the input of the next one. Each box receives a message, performs a certain functionality on it and then forwards it to the output and the next box.

Node-RED has various ready nodes (boxes), from creating http resources to converting the message to JSON or running an arbitrary user-defined javascript functions. Below we see an example of a flow as seen from the web editor.

Image X shows a flow in the node-RED web editor, where multiple nodes are defined and connected to create a certain application logic. The flows start with an MQTT listen node which will be triggered whenever an MQTT message is broadcasted in a certain topic.

The project was started from IBM’s Emerging Technology Services group and has a vivid community. You can find more information on the site and in the forums.

EdgeX Integration

As mentioned above, we will be using Node-RED as a custom device service, replacing the standard EdgeX Foundry device-sdk-go library which is used to develop custom device services.

A device-service is a “service” that defines and controls an array of IoT devices, but following the EdgeX micro-services architecture, a device-service as seen from the EdgeX system, is in essence a RESTful API.

Thus, by following the device-service specifications document, one can easily create the appropriate flows in Node-RED so that:

  1. The device-service properly registers itself to EdgeX
  2. The device-service has the necessary API resources according to the device-service spec
  3. The device-service performs arbitrary functionality to manage it’s devices

In our use-case implementation, we will be using Node-RED to introduce a proof-of-concept integration of a Lora-device, using the ChirpstStack (aka Loraserver) network stack and their application-level server. In essence, since the application server can not be directly integrated into EdgeX (different API structure), we will be using Node-RED service as a middleware, translating the EdgeX commands/API calls to Chirpstack’s application server and vice-versa.

Image XX illustrates the high-level architecture of the device service system we described, showcasing the use of Node-RED as a middleware for the 2 distinct RESTful APIs. The image is taken from an original work, please see #More Information.

Node-RED introduction

The development of an application in Node-RED is fairly simple, the user installs Node-RED using a deployment of choice (npm, docker, etc.), as detailed in the docs, and then access the web-editor at http://localhost:1880. The user then proceeds to select nodes and connect one to another. There are a handful of tutorials on the node-RED docs for the user to grab the gist of the platform, the learning curve is truly small.

After creating the flow, the user simply clicks “deploy” and the flow is activated by Node-RED. Node-RED is fairly customisable, enabling the change various aspects of the application, using the settings.js file. We invite the user to explore the documentation and the node-RED forum so as to gain better understanding of the capabilities of the platform.

An important aspect that is worth mentioning is the variable (context) storage mechanism (Context Store). The variables (flow, global) are normally stored in memory but in order to achieve persistency even at the event of a reboot, the user should enable the file-storage, as indicated in the docs. This will save the variables every X seconds in a JSON file, performing checkpoints of persistency. The interval can be reduced, but it can have an impact on performance, especially if we use a flash-storage (such as an sd card) which in the long-term will greatly stress the card.

EdgeX Foundry Registration

In order for the device-service to register with EdgeX, it simply has to perform a series of API calls to the EdgeX core-services, namely to core-data and to core-metadata, according to the EdgeX API walkthrough that is available at the EdgeX docs.

Disclaimer: Please note that the docs are somewhat outdated and the device addressable is no longer needed, the device resource is defined at the provisioning phase.

X2

The reference flow is shown in image X2. The main building blocks are the HTTP REQUEST node and FUNCTION node. For ease of use, for each http request, we define every attribute of the request (body, url) at the function node that proceeds each HTTP REQUEST node. This enables complete customisation and easy debugging for each node. For increased ease-of-use, we defined the majority of the bodies in a function at the start of the flow so we can easily modify common parts (like device name).

The bodies can either be saves as different attributes of the msg object or as flow variables that are loaded before each HTTP REQUEST node. The first is more memory efficient.

After a successful registration, a special flag is saved that is checked at the start of the flow so in the case of a service restart, the device-service will know not to repeat the registration. Moreover, the use-case flow lacks advance flow control mechanisms that will pause the registration in case of an error or controls that enable the device-service to restart registration from the last successful step.

At the moment, the PoC flow we simply restart from the start in case of restart. This is acceptable as EdgeX will simply ignore duplicate objects.

Regarding chirpstack, the registration subflow starts at the end of the EdgeX Registration flow. At some point in the registration, an endpoint is defined so that the Chirpstack application server makes an HTTP request at the Node-RED API endpoint, each time a value is received from the LoRa device. Node-RED receives that value and transforms the request to an EdgeX appropriate format in order to forward it to EdgeX-core-data service.

Device-service API resources

The PoC chooses to implement a subset of the available API specification and doesn’t support the addition of more than one device under the device service. The API conforms to the device specification where the reader can read in-detail the description of each resource.

The API structure is shown in image X1. Note that according to the EdgeX specs, the commands are issued to the device service using a this url structure: device/<device_id>/<command_name>, where device_id is generated at the device provisioning phase, while the command_name is defined at the device profile.

In order to support this structure, the API endpoint is set to listen for any url with the structure device/:variable_1/:variable2, and then proceeds to check the variables at the FUNCTION node that supersedes the HTTP endpoint node. Thus, the user can create a single endpoint to receive all the requests with the above structure and then differentiate depending on the variables.

Finally, the /health endpoint is used by the consul service registry. The user could implement a flow logic where errors are caught and saved into a flow or global variable so they can be used to generated the appropriate error code and message when the /health endpoint is used by consul. The PoC does not implements such a logic and the device-service is set to always as healthy in Consul.

Moreover, a command is defined, that simply returns the last read value from the lora-device.

Arbitrary Functionality

We could enable any kind of functionality, from running arbitrary shell commands on the system or entire program logic in FUNCTION nodes. In this PoC the device-service simply works as a middleware.

More Information:

The source-code for the above blog-post can be found on Github, it is part of a larger project where all the platforms that are described are presented in depth (such as ChirpStack aka Loraserver). The project’s document can be found on ResearchGate.

To learn more about EdgeX Foundry, visit the website or wiki.  Or, you can join the conversation and ask questions on our Slack channel.

This blog originally ran on Odysseas’ blog on Notion. You can view the original here

Working towards moving the industry forward together

By Akraino, Akraino Edge Stack, Blog

By Alex Reznik, Chair of MEC ISG, HPE Distinguished Technologist and LF Edge member

This content original ran on the ETSI blog.

Quite some time has passed since my last blog entry, and while I thought about a new blog a number of times, a good topic – i.e. one which is appropriate for discussion in a short, informal and public format – just did not seem to present itself. That’s not for the lack of interest or activity in MEC. 2019 is shaping up to be a critical year in which many operators are now public about their plans for edge computing, initial deployments are appearing and, as expected, holes in what the industry has been working on are beginning to be found (witness the much publicized and excellent Telefonica presentation at last month’s Edge Compute Congress). It’s just that it’s hard to blog about on-going work, even when it is very active, much less about internal efforts of various players in MEC. After all, what would that look like “this is hard and we are working hard on it…”

Nevertheless, the time has come. Those of you who follow my random MEC thoughts on a semi-regular basis might recall the subject of that last post ages ago (I mean in February): the need for both a vibrant Open Source community and Standards development in a space like MEC; and how the two are complimentary in that the focus is, by definition, on complimentary problems. And, if you don’t follow me religiously, here is the link: https://www.etsi.org/newsroom/blogs/entry/do-we-still-need-standards-in-the-age-of-open-source, grab a coffee, tea, a…. whatever … and read up!

In a significant way, that post was in part a response to comments and questions like: “There is a lot of confusion in the market, what’s up with ETSI and Akraino and EdgeXFoundry. You guys all seem to compete.” To that, the post provides a rather direct answer of “no we do not – we address different needs.” However, these related questions often followed: “OK, but how well DO YOU actually work together?” To date, one failing of the various players in MEC space has been the lack of a more convincing answer than “well, we all talk and we are all aware of each other.

That’s now changed in a very significant way. On the heels of a formal cooperation agreement between ETSI and LF Edge (see, e.g. https://www.linuxfoundation.org/press-release/2019/04/etsi-and-the-linux-foundation-sign-memorandum-of-understanding-enabling-industry-standards-and-open-source-collaboration/), the MEC ISG within ETSI and LF Edge’e Akraino project have been working towards moving the industry forward together. The first fruit of this labor is about to ripen – an Akraino Mini-Hackathon, endorsed by ETSI, to be held in San Diego the day before KubeCon.

This event was designed to highlight the work Akraino is doing in putting forward solutions which take advantage of ETSI’s Standards, and to allow developers an experience in developing for MEC. The most notable thing about this Hackathon is the model of cooperation – Akraino (and Open Source community) provides implementations to the industry, while the use of ETSI MEC (Standards Org.) standards ensures interoperability across other standards-compliant implementations.

So… that’s it then. We have arrived at a working, standardized solution for MEC, right??? Well, no. If you are looking for that, the mini-hackathon will sorely disappoint you. However, it is a step – an important first step in a growing cooperation between two organizations which should be, over time delivering those operational, standardized components for MEC. The work ahead of ETSI MEC and Akraino is significant, and much of it will lack opportunities for fanfare – as work in our industry often does. Still, there will be more coming from our two organization, so stay tuned…

EdgeX Foundry F2F: Sun, Community and Code

By Blog, EdgeX Foundry

By Jim White, Co-Chair of the EdgeX Foundry Technical Steering Committee and CTO of IOTech Systems

Earlier this month, the EdgeX Foundry Technical Steering Committee (TSC) met in Phoenix, Arizona to finalize our Fuji release (due out at the end of this week – November 15th) and scope the effort of our next release – code named Geneva – that we expect to release in the spring of 2020.  While officially this was a TSC meeting, we are an open project and always invite our developer community to participate in the discussions and planning effort whenever possible.

Hosted by Intel in downtown Phoenix, this season’s meeting was attended by more than 60 people in person and another dozen on line – our largest meeting yet.  Intel did a fabulous job of providing a great meeting space and allowing the community to enjoy the surrounds of the Phoenix area.  If they were responsible for the picture-perfect weather, they couldn’t have made it any nicer!  80 degrees and sunny each day.

Fuji is the community’s fifth release of EdgeX and a minor dot release (version 1.1) to our 1.0 Edinburgh release launched this past spring.  We have developed a well-established cadence that is two years in the making.  We have two releases a year (spring and fall) with the planning of the next release right on the heels of completed release.

If you are wondering what is in Fuji that is about to be released, the highlights of this release include:

  • New and improved security services – fully integrated with existing micro services (API Gateway, secure storage)
  • Application services and application functions SDK as full replacements for older export services (we expect to deprecate the export services with the next release)
  • System management improvements to include ability to set configuration
  • Improved testing and quality assurance procedures and tools
  • Addition of an many more device services (actually to be released independently in mid-December with the device service SDK release).

The fact that Fuji is a dot release on top of our 1.0 release is an important.  As the project matures and stabilizes, more companies are building products on top of EdgeX and the community wanted to provide them with affirmation that EdgeX is fit for purpose without changing everything each release – while still adding new features in a way that supports backward compatibility.  Companies like IOTech, Beechwoods, RSA and others (see https://www.edgexfoundry.org/edgex-in-market/) continue to leverage EdgeX and need the stability in order to avoid lots of thrashing each six months.  ObjectBox is releasing their version of core EdgeX services (replacements for the EdgeX reference implementation of these services) that incorporate their embedded database with Fuji this month to coincide with the EdgeX release.  These are prime examples of the community that now rely on EdgeX Foundry.

Looking ahead – what’s in the Geneva release?  Based on our planning this past week, Geneva will be version 2.0 – a major release.  It will include many new features and some changes.  Specifically, the Geneva release will feature:

  • Automatic and dynamic device/sensor provisioning and on-boarding – allowing for more zero touch deployments
  • Interoperability testing – allowing the community and users to get a better appreciation that all the micro services are working together properly
  • Replacing the reference implementation rules engine service – the last of the legacy EdgeX Java micro services (allowing the footprint of the overall system to be significantly reduced)
  • Use of Redis as the default reference implementation database (replacing MongoDB)
  • Improved security services (more secret store usage, per service token use, token revocation/expiration/rotation)
  • User guidance on platform needs (more performance statistics, number of devices allowed per service/EdgeX instance recommendations, platform and hardware recommendations per edge use case)
  • Exploration of an alternate message support (offering an alternative to Zero MQ)
  • Archive of Export Services (the new Application Services and App Functions SDK taking its place)
  • Use of Jenkins Pipelines to improve and enhance our CI/CD processes
  • A refactor of the EdgeX APIs to provide more flexible and more nimble request and response bodies in the message exchange, which should improve testing and improve some performance aspects
  • A number of system and sub-system designs are also forecast to be completed with this release. These designs are pre-cursor work toward the Hanoi (fall 2020) and beyond releases

It’s starting to look like winter outside in the northern hemisphere.  Holiday season right around the corner.  EdgeX is heating up.  Good time to stay inside and curl up next to EdgeX and try out the latest features and explore the future roadmap.  Come join the fastest growing open source edge platform project.

LF Edge Member Spotlight: ZEDEDA

By Blog, Project EVE

The LF Edge community is comprised of a diverse set of member companies that represent the IoT, Enterprise, Cloud and Telco Edge. The Member Spotlight blog series highlights these members and how they are contributing to and leveraging open source edge solutions. Today, we sat down with Aaron Williams, Developer Community Lead, and Erik Nordmark, Chief Architect and Co-Founder, at ZEDEDA to discuss the importance of a growing ecosystem, their IoT framework, the impact LF Edge has made and what the future holds for the company.

Can you tell us a little about your organization?

ZEDEDA delivers visibility, control, and security to enterprise IoT and edge deployments through edge virtualization. Ours is the only cloud service for edge management built on the open sourced Edge Virtualization Engine (EVE). By bringing virtualization to the edge, we allow businesses to deploy and manage any application on any hardware and connect to any cloud, breaking down IT silos and simplifying IoT strategies. Customers can easily dropship gateways at distributed sites without needing on-site IT expert personnel, and can launch greenfield and brownfield applications at scale with a single click of a button. 

With ZEDEDA, organizations easily eliminate the complexity of today’s IoT solutions at the edge and gain deeper insights into their operations by more effectively leveraging sensor data, including through AI-powered analysis in the cloud.

Why is your organization adopting an open source approach?

Today at the edge, there is a heterogeneous mix of hardware and applications, which makes it difficult to coordinate an IoT strategy and make the most out of all the available data. As a result, many enterprises can become mired in vendor lock-in. Embracing open standards gives the whole community a common foundation to work from, increasing interoperability, lowering the barriers to entry in this space, and promoting innovation. 

ZEDEDA adopted open source right from the beginning because we saw the value in providing a shared standard for edge virtualization technology. We think of it as being similar to what Android did for mobile phones, in terms of creating a single template for developers to follow that then ensures operability across a variety of hardware. Additionally, by making EVE open to community contributions, we’re committing to building the best possible solution with experts around the world.

Why did you join LF Edge and what sort of impact do you think LF Edge has on the edge, networking, and IoT industries?

The reason why we joined LF Edge is simple: we believe that the fastest route to innovation and success in edge computing is by working together with other companies to create universal standards that we can all build off of. It’s been a great opportunity to come together with like-minded organizations, contribute our expertise, and work collaboratively to build the best ecosystem possible for the future of edge computing. By hosting several key open source projects and making them available to the community, LF Edge is making it simpler for the industry at large to adopt IoT strategies as part of their IT portfolios. We believe that the rising tide will lift all boats, so to speak.

What do you see as the top benefits of being part of the LF Edge community?

There are many benefits of being part of this community. For one thing, it allows us to be at the table with other edge companies (both large and small) so that we can help shape the future of the edge in a way that benefits everyone. It also provides a learning opportunity when we all come together to better understand the different parts of the edge stack. Additionally, building our solution on top of code (EVE) that is open sourced through the Linux Foundation helps give our customers confidence that we’re working to the highest technical standards. Truly, we feel that we receive much more than we give as active participants in LF Edge.

What business/industry problems are you collaboratively working to solve?

Current solutions for edge deployments often leave several challenges unaddressed, and these are all problems that we help to solve with EVE and the ZEDEDA controller. For instance, typical edge management software has little-to-no interoperability, meaning that customers are locked into using a limited number of compatible apps, hardware, or clouds. By contrast, one of the main benefits of building our solution on top of the open-sourced EVE is that it gives all vendors a common foundation to work from: as long as their apps and APIs are compatible with EVE, they can run on any EVE-approved hardware. In the same vein, modern hardware and firmware isn’t generally suited to run legacy applications; however, many businesses still rely on legacy apps as a key part of their technology stack. By making use of virtual machines (VMs), edge virtualization allows legacy and modern apps to co-exist seamlessly on the same device. Security is also a critical part of edge deployments, with traditional solutions leaving businesses exposed to many vulnerabilities. By managing their edge deployments with EVE and the ZEDEDA controller, companies can mitigate against many of these vulnerabilities: EVE ensures that the device and data traveling to and from it is secure by leveraging the hardware root of trust, and the controller makes it easy to keep firmware and applications up-to-date with the latest software patches rolled out with a single push of a button.

 

What sort of contributions has your team made to the community, ecosystem through LF Edge participation?

ZEDEDA has been a major contributor to the Project EVE code base. In addition, we have worked hard to encourage our hardware and software partners to contribute their expertise to build out the hardware devices that EVE runs on.

How will LF Edge help your business?

Building on top of LF Edge’s Project EVE allows us to concentrate on what separates us from our competitors, secure in the knowledge that the foundation of our technology is solid. It also gives our customers confidence in our solution because it is built on code that meets the Linux Foundation’s high standard of technical excellence.

Can you give us an example of your LF Edge project in production and what problem it is solving?

A good example of EVE in production can be found on wind turbine farms. The operators of these farms face many challenges, including that the farms are remote, complex, expensive to maintain, and very large. There is limited IT staff on site, and a truck roll to do unscheduled maintenance can cost over $100,000. At the same time, downtime can cost $1,000 to $2,000 per day, which means that it is very important to the operators to have as much uptime as possible, but avoid unplanned maintenance.   

EVE works in conjunction with the ZEDEDA cloud-based controller to allow the operators to overcome these challenges. With EVE shipped on the device, the operator can take advantage of zero-touch provisioning and having a single pane through which to manage all devices. Since EVE is open sourced and works across a variety of hardware devices, the operator has the freedom of updating the hardware for new installs without making the previous installs obsolete. And with the 100% visibility and remote control of the devices, they are able to update their applications on the edge from anywhere at anytime.    

Project EVE Wind Turbine Demo Video by ZEDEDA

What advice would you give to someone considering joining LF Edge?

To borrow from Nike, “just do it.” Being a member of LF Edge allows you to be part of the conversation that is shaping the IoT revolution.  The Edge is too big and too complex of an industry for any one company to dominate, so the only way to create common standards and functionality is by working together. If you are not part of the LF Edge, you will be continually following the cutting “edge” of Edge development!  

 

Edge Computing at IoT Solutions World Congress 2019

By Blog, EdgeX Foundry, Home Edge, Project EVE

Every year one of the world’s largest Internet of Things trade shows, IoT Solutions World Congress, is held in Barcelona, Spain. It brings together device manufacturers, service providers, AI & ML companies and solutions integrators from around the world to share information about their products and the state of IoT ecosystems. Filling multiple convention halls at the Fira Barcelona center, and featuring the biggest names in IoT and technology, you can spend days walking the expo hall and talking to vendors.

Crowd at the LF Edge Booth

This wasn’t the first time the EdgeX Foundry has had a booth at IOTSWC, but this year they were joined by other LF Edge projects, specifically Home Edge and Project EVE, to present solutions across the edge landscape. Our booth was staffed by project contributors from all over the world, from the US and Europe to India and Taiwan, and featured real world examples of the open source technology that is being developed under the LF Edge umbrella.  Not only did our members get a chance to learn about each other’s projects during this time, they were able to explain those other projects to the visitors to our booth. It was truly a community coming together to support and promote the LF Edge as a whole.

EdgeX Smart Building Demo EVE deployments on a wind turbine

We spoke with thousands of people over the 3 days of conference, and gave countless demonstrations. One notable change in conversations from a year ago is that most attendees we spoke to this year already knew and understood the importance of edge computing, and were looking for specific solutions to the problems that they are now facing. And while many vendors at the show offered some of these solutions, only the LF Edge projects offered open, vendor agnostic platforms that prevent lock-in and promote an ecosystem of 3rd party development around commonly developed core.

Selfie of the LF Edge booth staffIf you missed us at IOTSWC, you can join our projects online where we have a public Slack, mailing lists and host our meetings in the open. You can also look for us at events in 2020!

The Inaugural EdgeX Open Hackathon

By Blog, EdgeX Foundry

Written by Jason Shepherd, LF Edge Board Member

On October 7th and 8th, I had the pleasure of attending the inaugural EdgeX Open Hackathon in Chicago. EdgeX Foundry is focused on facilitating interoperability between devices and applications, regardless of underlying hardware, OS, and connectivity protocol. The project is ultimately about creating a de-facto standard open API that binds together a preferred mix of open source and commercial value-add.

Once EdgeX hit 1.0 status in June with the Edinburgh release, the community started planning the EdgeX Open Hackathon series for leveraging the framework in customer-valued use cases.

The inaugural EdgeX Open, hosted at the Tech Nexus coworking space in Chicago, hosted by LF Edge, EdgeX Foundry and RILA

Six teams participated in this inaugural event, representing HAVI, Intel/Intuiface, Johnson Controls, UST Global and Volteo in addition to a small independent team of registered individuals. Pre-work was allowed but a “secret ingredient” (Iron Chef-style) was introduced the day of the event to level the playing field a bit. In this case, it was a camera using Intel’s OpenVINO computer vision and image recognition model to output an object recognition algorithm to an API. Teams were able to earn extra points by integrating this technology into their solution stack.

Read on for how the hackathon went down!

Day 1:

The first day began with pitches from top sponsoring companies Dell, HP and Intel on what EdgeX Foundry means to the IoT market. Nicholas Ahrens of the Retail Industry Leaders Association (RILA) talked about the importance of innovation in retail and then Brad Corrion of Intel walked the teams through the objectives and introduced the secret ingredient.

Brad Corrion walking through the event rules

During my pitch, I had the pleasure of announcing that the EdgeX Foundry project recently hit a million total microservice downloads since the April 2017 launch. To get a sense of the accelerating momentum, half of these downloads occurred in the past two months!

With intros completed, the developers got to work. Most of the teams brought a plethora of devices to work with including cameras, sensors, scanners and a thermal printer and many had done some pre-work. Numerous developer attendees had never used EdgeX before and all were able to get the framework running quickly. Once the set-up was completed, they started with their integration of various devices and application stacks to build out their use cases.

Teams diligently working on their solutions

The participants had their choice of one of three use cases, or an open category:

  1. Advanced loss prevention – leveraging EdgeX to correlate computer vision events with telemetry from sensors such as RFID and transaction log data from Point-of-Sale systems for improved loss prevention/theft detection
  2. Dynamic personalized retail experience – leveraging computer vision and sensor data to drive an improved in-store customer experience based on individual shopper preference
  3. Inventory management – using data from sensors and scanners (hand-held and/or drone-based) to improve inventory accuracy
  4. Open category – any retail-centric use case deemed valuable by end users

While it appeared that most of the users picked the open category, the reality is that they did variants of the three main use cases. The teams wasted no time getting to work (actually many were working during the intro pitches…) and the room was bustling all day with activity.

From top (counter clockwise): Team Havi, Team Johnson Controls, Team Skanna

The UST Global team came up with an innovative solution for highly perishable food using Augmented Reality (AR) and RFID to enable grocery store associates to point a smartphone at fresh meat and produce displays to see products that are nearing or beyond the expiration date, i.e. “How fresh is the meat?” This would benefit the grocery store in terms of streamlining how they find, sort and discount expiring food, and benefit the consumer in terms of choosing between either the freshest products or benefiting from dynamic price markdowns or food nearing the expiration date. They came prepared, complete with props including fake chicken nuggets and lamb chops, making me hungry every time I walked by their table.

The UST Global team working on their solution for “How Fresh is the Meat?”

Day one wound down with a whiskey tasting which reminded me of the face-to-face TSC meeting in Edinburgh a year prior where we also ended the first day with a whiskey tasting. I sense a theme here!  Whiskey sommelier Anthony Dina selected three boutique whiskeys from the “edges of the earth” – one from a small batch distiller in the US, one from Scotland and one from New Zealand.

Whiskey from the edges of the earth

We then had some tasty Chicago deep dish pizza, followed by the “EdgeX Open Mic” – a community music jam.  Tony Espy (Canonical) and I worked up a variety of singalongs and managed to get a handful of folks belting out Neil Diamond’s Sweet Caroline and John Denver’s Country Roads, plus he and I did some pretty decent versions of Radiohead’s High and Dry and Jeff Buckley’s “Halleluiah”… especially considering this was only the second time we’ve played together (the first being an open mic night in Edinburgh during the Fall 2018 EdgeX F2F TSC).

Tony and I belting out the jams

Several folks came up to us afterwards and talked about how they played instruments spanning guitar to saxophone. At the next EdgeX Open, we clearly need to prepare more in advance and get a full band together, or perhaps we should just serve a little more whiskey beforehand! Or, both?

Day 2:

Day two started early with the teams continuing to build out their solutions unified by the EdgeX framework. Around 11am the judges we’re introduced – Eran Harel from AppCard, Nicholas Ahrens from RILA, Juan Santos from Tavistock Group, Mark Stutzman from Area 15, and Scott Gregory from HP. The judges subsequently spent time with each team to learn about their solutions before deliberating.

Hackathon Judges

Each team was then able to formally pitch to the judges and all participants in a final presentation that walked through their solution, what ingredients they used and how EdgeX was used for integration. The judges deliberated a bit more and then we had the closing ceremony, during which the winners were announced… and… drum roll… here they are!

The Intel/Intuiface team meeting with the judges

1st Place – Team Volteo: An inventory management and loss prevention solution that used RFID sensors and networked cameras for accurate inventory management and to record door exit events by combining POS transaction data together with merchandise movement tracked by RFID sensors and cameras.

Team Volteo

2nd Place – Team Intel/Intuiface: A predictive self-service checkout assistance solution that used RFID and computer vision to trigger an alert when a customer failed to scan items within a reasonable time and/or based on OpenVINO emotion detection during customer interaction with the kiosk.

Team Intel/Intuiface

3rd Place – Team UST Global: An AR and RFID-based solution to track ultra-perishable goods in grocery stores and allow for dynamic pricing, e.g. how fresh is the meat? They developed an AR mobile app to scan food aisles and provide details on freshness, current price, etc.

Team UST Global

And this wasn’t just for bragging rights – 1st, 2nd and 3rd place winners received $5000, $2500, and $1000 in cash respectively!  As co-founders of the EdgeX Foundry project, Jim White and I had the pleasure of handing out big checks during the award ceremony, summarily checking off a to-do on my bucket list!

Congrats to Team Volteo for winning the Grand Prize!

Thanks to our sponsors!

It has been an honor for me to participate in the EdgeX community over the years and this event was no exception. Big thanks to the LF Edge and the Retail Industry Leaders Association (RILA) for hosting the event, and to sponsors Canonical, Deep Vision, Dell Technologies, HP, Intel, IoTium and ZEDEDA who also provided their commercial offerings for the developers to use in their solutions as well as tech support on-site. Also, a shout-out to the planning committee which included volunteers from Dell, HP, IBM, Intel and the Linux Foundation.

EdgeX Foundry community leaders helped answer questions and more during the hackathon

Looking forward

The concept behind the EdgeX Open Hackathon is for it to be a global franchise series. Other markets in discussion for future events include manufacturing, smart cities, oil and gas, utilities/energy, agriculture, healthcare and beyond.

Stay tuned for more detail on the next installment, for which we also plan to include more about the overall LF Edge value prop by pulling from other enabling projects within the umbrella, combined with sponsor content. We’re thinking manufacturing in the Spring 2020 timeframe, likely aligned with an industry event such as Hannover Messe in a nearby town in Europe.

In the meantime, download EdgeX and build something great!