Directly to the content Skip to maincontent Directly to the footer Skip to footercontent

Master PSE

V2X retrofitting

In the V2X Retrofitting project, students work in teams on a practical project to retrofit a conventional vehicle so that it can participate in cooperative vehicle communication (Vehicle-to-Everything, V2X). The project brief is based on real-world challenges facing connected vehicle systems and encourages independent, structured teamwork.

The lecturer acts as the client and technical point of contact, providing ongoing guidance throughout the project and offering support – particularly in the initial phase – with conceptual and technical decisions.

The project schedule is structured as follows:

  • An introductory session to present the project brief and the organisational framework
  • Regular project meetings to present progress
  • Joint definition of the objectives for the upcoming development phases

The aim of the project is to develop a V2X retrofit system that enables an existing vehicle to send and receive V2X messages. The hardware basis consists of an ESP32-C5 and a standard smartphone (e.g. a Google Pixel 7 Pro); this basis – including the CAN transceiver on the ESP32-C5 – will be provided. The aim is to create a modular system that records and analyses vehicle measurement data and converts it into standard-compliant V2X messages. In future, this system is intended to be extended to other V2X participants, such as bicycles.

Tasks

The system consists of two components: an embedded component based on the ESP32-C5 and an Android application on the smartphone. Runable example projects are available for both as a starting point – for the ESP32-C5 to receive ITS-G5 messages and for the smartphone to transmit them. The precise division of tasks forms part of the conceptual work.

The embedded component (ESP32-C5) handles the vehicle-related and reception-side tasks:

  • Reading vehicle measurement data via the provided CAN connection (OBD-II) using Unified Diagnostic Services (UDS, ISO 14229) and acting as a gateway to the mobile application
  • Receiving ITS G5 messages (IEEE 802.11p) based on the existing example project

The Android application handles processing, message formation and transmission:

  • Evaluation of the UDS measurement data supplied by the embedded component
  • Construction and encoding of V2X messages in accordance with the European ETSI ITS standards, in particular CAM (EN 302 637-2) and DENM (EN 302 637-3)
  • Signing of outgoing messages in accordance with ETSI TS 103 097 (based on IEEE 1609.2) and optional verification of incoming messages
  • Transmission of ITS-G5 messages based on the existing example project
  • User interface for configuring and monitoring the message flow

The ASN.1 description (UPER) used in the ETSI specifications is employed for encoding. For the ITS protocol stack (Facilities, BTP, GeoNetworking) and the security mechanisms, open-source projects such as Vanetza can be utilised; Wireshark, with its ITS dissectors, is suitable for analysis. The firmware is developed using the ESP-IDF in C/C++, whilst the Android application is developed using Android Studio in Kotlin or Java.


Prior knowledge

Basic programming skills are required; experience with object-oriented and modular software development is an advantage.

The following are recommended:

  • Basics of Android app development (Kotlin or Java)
  • Basics of embedded programming in C/C++
  • Knowledge of the CAN bus system and vehicle diagnostics (OBD-II, UDS)

Experience with wireless interfaces, structured data formats (e.g. ASN.1), digital signatures and the ETSI ITS standards will make it easier to get started, but is not essential and can be acquired during the project.


General conditions

Established development tools available within the faculty will be used, including Git for version control and shared documentation of the results.

The project is being set up from scratch; the example projects mentioned for the ESP32-C5 and smartphone will serve as a starting point. It is designed to be continued in future courses. The source code developed is licensed under the MIT Licence (https://opensource.org/licenses/MIT).

If you have any further questions about the project, please do not hesitate to contact us by email.