Android™ Automotive SIG
Domain Interaction Projects
Cloud & Connected Services Project
GENIVI Github Repository
GENIVI Code Project Descriptions
GENIVI Yocto IVI Baseline
In this blog, I will highlight an important software project funded by GENIVI and completed in 2019 that aids in the interoperability of Adaptive AUTOSAR systems with systems running Franca IDL, an interface description language used by CommonAPI and other software solutions in the vehicle.
The tool, nicknamed FARACON, uses model-to-model transformation to achieve a compatible code generation on both sides of ARA::COM (the communication layer of Adaptive AUTOSAR) and Franca IDL. When combined with CommonAPI bindings and ARA::COM runtime, this achieves a runtime translation between ECUs. The alternative to this would be a manual translation that is not only tedious, but prone to human errors.
Using such a tool makes it possible to have a specification in a single format (GENIVI proposes Franca IDL for this), and yet to use the full advantage of both technologies on both sides of the communication. Enabling interoperability between heterogeneous systems using model-to-model transformation methods can improve software quality and reduce development time and engineering costs.
The FARACON tool implements transformations from Adaptive AUTOSAR models to Franca IDL and vice versa. These transformations can be used as part of any current Eclipse IDE. For build automation and Continuous Integration (CI), it is also useful to deploy the transformations as a command-line tool.
The goal of the automatic transformations is to apply code generation by AUTOSAR-compatible code generators as well as Franca-compatible generators (e.g., CommonAPI C++) in a way that leads to transparent communication between both systems at runtime. Therefore, the tooling is based on a proper mapping between Adaptive AUTOSAR concepts and Franca IDL concepts. For example, each operation on an AUTOSAR service interface is mapped to a method in Franca IDL.
The diagram above shows how the transformation tooling interacts with the code generators. The generated code on the AUTOSAR and Linux-based subsystems (like GENIVI) is using the SOME/IP protocol for communication. As the subsystems are integrated on model level, the communication is automatically compatible.
A clear advantage of following this approach is that there is no need to define the same interface twice in Franca IDL and AUTOSAR ARXML. This reduces errors coming from manually maintaining the service interfaces by having only one source of origin.
GENIVI is proud to have funded the FARACON tool through Itemis and Version 1.0 (open source licensed), which achieves a near production-ready quality, is available here: https://github.com/GENIVI/franca_ara_tools. The delivery of this useful tool to the industry is one evidence that GENIVI has moved beyond IVI and is actively working on the integration of multiple operating systems in the connected and centralized vehicle cockpit.
Many thanks to GENIVI members Itemis, Renault and Visteon for their work to oversee, develop, test and publish the tool.