Hello,
I've been working in the CAN environment for some time now, and I've started a larger project.
Currently, I am developing a type of FIS control system for the following platforms:
- Audi A8 D3 (4E)
- Audi A6 4F (C6)
- Audi Q7 4L
Project page:
GitHub – FIS-Writer-A6-A8-Q7
There, I document:
- the protocol between the MMI (Multi Media Interface) and the instrument cluster.
- Identifiers and message structure.
- Analysis results from logs.
- a small diagnostic tool.
The goal is to integrate custom content into the FIS system and to expand its existing functionalities.
Current challenge: Hardware.
Currently, I am testing with Peak CAN. The goal is to develop an independent solution based on a Teensy 4.1 microcontroller, incorporating multiple CAN interfaces.
Planned bus routes:
1. CAN speed sensor input.
2. CAN speedometer output.
3. CAN Comfort.
4. CAN drive.
5. CAN diagnostics.
The MMI should remain in the vehicle. Therefore, active filtering of the communication between the MMI (Multi Media Interface) and the instrument cluster is required.
Specifically, that means:
- Filter news from the MMI display to be shown on the instrument cluster.
- Input your own content.
- Simulate the MMI (Multi-Media Interface) as if it were connected to the speedometer.
- Simulate the speedometer display on the MMI (Multi Media Interface).
Navigation and media display should continue to function fully.
The other CAN buses are primarily used for reading data, such as for steering wheel buttons or comfort signals.
"Any tips or experiences regarding similar man-in-the-middle or gateway setups (especially with multiple CAN controllers on a microcontroller) are welcome." So far, I have only worked on small projects using the ESP32 or the Raspberry Pi.
Best regards,
Dennis.