Rust Programming: Modernizing Automotive Software to Keep It from Getting Rusty
In the rapidly evolving world of Software-Defined Vehicles (SDVs), automotive OEMs and Tier 1 suppliers face increasing demands for security, reliability, and cost-efficiency. Rust is gaining momentum as a modern, memory-safe programming language that addresses these challenges by minimizing vulnerabilities, accelerating development cycles, and reducing maintenance costs. Recognizing Rust’s potential in the automotive domain, Intellias engineers actively contribute to Rust-based showcases demonstrating its readiness for migration and wider adoption in production-grade systems.
Global automotive software vendors strive to migrate their applications to Rust, integrating them with the AUTOSAR Runtime Environment (RTE). This enables OEMs and Tier-1 suppliers to leverage Rust for safety-critical software while maintaining seamless integration with existing AUTOSAR Classic stacks and legacy C-based applications.
In cooperation with HighTec and Vector, Intellias initiated a strategic migration of C-based embedded software components (SWCs) for ultrasonic sensors to Rust. This time-critical SWCs process large volumes of data, and the Intellias team supported its migration within an AUTOSAR Classic environment based on the Vector stack, targeting deployment on the Infineon AURIX TC375 platform.
To ensure successful operation of the Rust-based components after migration, specific Rust interfaces were generated for the Runnable functions and RTE read/write calls using Foreign Function Interface (FFI). The Rust-based SWC was compiled as a static library with the HighTec Rust compiler and linked with the AUTOSAR BSW using the Tasking compiler.
High-level architecture overview
Seamless cross-language integration between Rust and C components
Full compliance with AURIX memory and safety requirements for embedded applications
Reliable data exchange between Rust-based SWCs and existing C-based SWCs
Vector DaVinci Developer generates the Runnable function interface with the “API Usage by Address” option enabled, required for subsequent FFI usage in Rust
Bindgen generates Rust interfaces for the Runnable function and RTE read/write functions using FFI
HighTec Compiler compiles the Rust-based SWC code and provides a static library
TASKING Compiler compiles AUTOSAR C files
TASKING Linker links Rust static lib and AUTOSAR C objects
Infineon AURIX TC375 HW used for final execution
Intellias developed the ECU Kit as a practical demonstrator of successfully integrated Rust-based SWC into the AUTOSAR environment. The ECU Kit, based on the Infineon AURIX TriCore TC375, runs Vector AUTOSAR Classic and communicates with a Complex Digital Cockpit via the CAN bus interface. It is connected to the Intellias Automotive Technology Platform to simulate real vehicle signals, including speed, battery charge level, regenerative braking, as well as high beam, low beam, and turn signals.
The HighTec Rust Compiler, designed for AURIX™ TC3xx and TC4x microcontrollers, leverages the advanced open-source Low Level Virtual Machine (LLVM) technology to provide full Rust language support, including memory safety, concurrency, and interoperability.
Intellias experts used the Infineon-compatible HighTec Rust compiler for Rust implementation of the Runnable functions into a static library, which is subsequently linked with the AUTOSAR Classic BSW and other applications during the final integration.
Leveraging the HighTec Rust compiler alongside Vector DaVinci Developer has unlocked new capabilities for working with Infineon embedded systems, enabling safer and more efficient development practices. The first successfully migrated SWC handles time-critical ultrasonic sensor data transfer, processing large volumes of information with high reliability.
In addition, generic enhancements to Vector DaVinci Developer facilitated seamless integration of Rust code, streamlining the migration process for future components and expanding the potential for Rust adaptation across the platform.
Technology Director, Mobility
Associate Architect, Mobility
AUTOSAR Architect, Mobility
Get in touch with us. We'd love to hear from you.