This is the second blog post on our Software-Defined Autonomous Mobility blog series. You can read the first blog post on the Autoware Foundation blog.
Between the time of our last blog post and now, Autoware Foundation officially joined SOAFEE. So let’s remember the relationship between SOAFEE and Autoware Foundation to start with.
Autoware Foundation has been working with SOAFEE since the beginning of SOAFEE’s journey. Now, the Autoware Foundation joined the SOAFEE special interest group as a voting member to enable its open-source software for autonomous driving as the Autoware Open AD Kit is the first SOAFEE blueprint for the software-defined vehicle ecosystem.
SOAFEE Blueprints, an initiative driven by the SOAFEE members, help materialize the concepts behind SOAFEE’s vision of enabling software-defined vehicles. Users can replicate the blueprints as is, just to get inspired by what other people are doing in the realm of software-defined vehicles, or modify it to suit their needs and make it their own for their application. To enable that, SOAFEE blueprints must be well-designed and impeccably documented, facilitated by the SOAFEE members involved in the blueprint-making process. You can look at the depiction below that explains what a SOAFEE blueprint looks like.
SOAFEE Blueprint design is consciously made simple enough to encourage users to leverage SOAFEE architecture with as few limitations as possible. Please visit the SOAFEE Blueprints website, which is hosted on Gitlab.
The Open AD Kit Blueprint
What does the Open AD Kit Blueprint look like?
The Open AD Kit is a collaborative project developed by the Autoware Foundation and its member companies and alliance partners. It aims to bring software-defined best practices to the Autoware project and to enhance the Autoware ecosystem and capabilities by partnering with other organizations that share the goal of creating software-defined vehicles.
The Open AD Kit utilizes Autoware components, which are built using the ROS2 framework, to create a practical application demonstrating how SOAFEE's vision of software-defined vehicles can be realized. ROS2, with its microservices architecture, provides the foundation for this effort. Open AD Kit application can also communicate with other containerized applications to support various functionalities, such as providing a bi-directional data pipeline and providing up-to-date maps to be consumed within the Open AD Kit application.
Edge Workload Abstraction and Orchestration Layer: EWAOL
A key aspect of software-defined vehicles is the ability to separate the software from the physical hardware, which is necessary for the viability of this approach. SOAFEE's reference implementations include middle layers that facilitate communication between the hardware and software at the application level. Let's examine where the Autoware workloads are deployed within the Open AD Kit blueprint.
EWAOL (Edge Workload Abstraction and Orchestration Layer) is SOAFEE's Linux reference implementation. Its primary purpose is to enable containerized and virtualized software deployment, as outlined in SOAFEE's vision.
EWAOL is a custom Linux distribution built using the Yocto project. It can be accessed from the open-source repository hosted at the SOAFEE Gitlab. EWAOL can be built in two ways:
Baremetal: EWAOL directly run on the hardware, and the application workloads run in containers
Virtualization: Virtual machines are deployed, and application workloads run in containers
EWAOL is built on the Yocto project, allowing flexibility in customizing EWAOL to meet specific user needs through its layered development model. This also aligns with SOAFEE’s Blueprint paradigm of minimizing user limitations as much as possible.
EWAOL on Hardware
EWAOL can run on a variety of hardware at the edge and in the cloud thanks to the Yocto project and hardware vendors supporting standards-based firmware. In the Open AD Kit Blueprint, EWAOL is deployed on the AVA Developer platform at the edge and has already been deployed in the cloud on the AWS Graviton instance. While the cloud instance is not yet included in the Open AD Kit blueprint, having EWAOL available at both the edge and in the cloud provides desirable runtime parity.
The AVA Platform from ADLINK uses Ampere's SoC, which is based on Arm's Neoverse N1 CPU, which is the same CPU used in AWS Graviton's C6g instances. The AVA Developer Platform resembles a desktop PC and is well-suited for rapid prototyping on the benchtop settings.
Now that we have discussed the SOAFEE Blueprints, SOAFEE reference implementations, and the hardware that enables these blueprints, let's delve further into the Open AD Kit. We will examine its current state, past development, and future potential for the Open AD Kit.
Open AD Kit 1.0
Open AD Kit Version 1.0 is built using four modules from the Autoware project: Perception, localization, planning and the vehicle interface. Open AD Kit 1.0 runs on EWAOL on an AVA Developer Platform. And the AVA Developer Platform is connected to an arbitrary Linux machine over the ethernet to visualize running Autoware nodes on the RViz tool and perform scenario simulations.
This Open AD Kit implementation is merely a first trial for running the Autoware project on top of the EWAOL framework. And the first experimentations to discover software-defined vehicle development best practices between SOAFEE and the Autoware Foundation.
Open AD Kit 2.0
The Autoware Foundation made significant improvements in the development of Open AD Kit 2.0, building upon the success of Open AD Kit 1.0. In addition, the Foundation worked to bring on alliance partners to collaborate on and contribute to the Open AD Kit solution.
As of today, we have made significant progress in Open AD thanks to the collaborative efforts of our alliance partners. We have implemented Autoware in a container on top of EWAOL and integrated it with the e-Sync OTA agent as an additional application in the framework. We have also successfully demonstrated that the framework performs at ISA-level parity when running in the cloud on an AWS Graviton instance and at the edge on an AVA developer platform.
However, since Autoware runs in a single container in this implementation, this does not constitute a true microservices architecture, and there’s a lot of work to move forward towards SOAFEE’s true vision of automotive workloads running as microservice applications in containers.
Going forward, we are focusing on leveraging the experience of integrating alliance partner technology stacks into the Open AD Kit Blueprint using the Open AD Kit 2.0 implementation. We will also evaluate Autoware modules (that are already set up to work on a microservices architecture, ROS2) and partition them into separate containers to be implemented on top of the EWAOL architecture. In the future, we also plan to incorporate the capabilities that will be introduced in the SOAFEE releases in the coming year.
In the coming years, integration of hypervisors and Hardware Abstraction Layers (HALs) within SOAFEE will allow us to build Autoware on a variety of different computing platforms. These platforms will include specialized, safety-focused embedded units that can be paired with high-performance processors, GPUs, and dedicated logic units specialized for perception and localization tasks.
We are also looking into synergies with the alliance partners to add API-driven supporting functionalities to the Open AD Kit Blueprint, just like OTA client/agent is implemented; as microservices. The Autoware Foundation is excited to see what lies ahead for Open AD Kit and its role in developing software-defined vehicles.
Going Forward: Cloud-Native
It is important to consider the cloud-native aspect of the SOAFEE architecture, which allows us to use the vehicle data, including data from the autonomy sensors, for autonomous driving tasks at the edge, while also leveraging the cloud for algorithm development, fine-tuning, validation, and verification tasks.
The Autoware Foundation will work to gather the necessary tools and capabilities to collect data from vehicles and bring it to a DevOps workbench for manipulation and processing using automated workflows through CI/CD pipelines. This will allow large-scale simulation, testing, and verification tasks to be performed in the cloud. Then, the work done in the cloud can be deployed onto containers placed at the edge to run in the vehicle via the Over-the-Air updates.
Collaboration: Engagement with Alliance Partners
Open AD Kit is a collaborative project involving Autoware Foundation member companies and alliance partners. For the Open AD Kit 2.0 preparation, SOAFEE, eSync Alliance and MIH alliances played integral roles.
The Autoware Foundation is a voting member of the SOAFEE SIG (Software-Defined Vehicle Special Interest Group), along with MIH. We work closely with the SOAFEE SIG to coordinate our efforts towards achieving our shared goal of advancing software-defined vehicle technology. Hence, the Open AD Kit is envisioned as a containerized application built on top of the EWAOL framework, and built in microservices architecture by design.
The Open AD Kit offers value by allowing Autoware to incorporate various functionalities by integrating third-party microservices that are compatible with the SOAFEE architecture. One such microservice is eSync Alliance's bi-directional Over-the-Air data pipeline technology, which plays a vital role in securely exchanging data between the cloud and edge, and vice versa. By adding these microservices, the Open AD Kit aims to expand the range of use cases for Autoware.
On the other hand, the MIH alliance defines an Open EV platform and crisply identifies specifications around all aspects of this Open EV platform with MIH member companies and alliance partners. As Autoware Foundation, we work closely with the MIH alliance to specify everything related to autonomy functionality, such as software interfaces with sensors, IVI, central gateways, and control plane functionality. The idea is through working group activities to prepare the Open AD Kit as an out-of-box ready solution to be implemented by users against MIH specifications.
Bonus: Independent Open AD Kit Implementation
Open AD Kit implementation by NXP demonstrates Open AD Kit running on NXP’s Bluebox 3.0 solution. It embodies two demos:
Acquiring AD/ADAS broadband sensor data and real-time vehicle control on simulation
Plug-and-play sensor / ECU service discovery.
This integration was made possible by the Open AD Kit Starting Guide. Soon we will be updating the starting guide with the latest changes. It is a great starting point to start tinkering with the Open AD Kit.
Please see more on NXP’s YouTube video to learn more about these demos.
We will keep you informed about the progress of the Open AD Kit, both in terms of technical updates and go-to-market strategies. To stay up-to-date on the latest developments at the Autoware Foundation, be sure to follow our website (where you can expect some exciting announcements in the near future) and LinkedIn page.