Retrofitting Carplay on MMI RMC Unit (A6, A1, Q3)
Carplay on RMC MMI without Chinese replacement displays
Carplay on Audi RMC MMI Unit? POSSIBLE!
Requirements:
- Raspberry Pi 5 (I personally recommend 8 GB Version) (or any other for Linux/Android device)
- Carlinkit CarPlay Dongle (I got the CCPA version from Amazon)
- A good ELM327 Dongle (For me the Vgate vLinker MC+ was the winner, also from Amazon)
- HDMI to AV Converter (...also amazon)
- Audi AMI AV Cable
- Patched RMC Unit to allow VIM (Video in motion, I used OBD11 to patch my Unit)
This is the main resource I used to patch my MMI Unit. Some really great Reverse Engineering effort from their side.
- Coding skills and some knowledge on VW Can-Bus
The Setup
Now, you probably have already guessed how this setup goes, mainly based on the requirements I have listed above.
My Setup is based on heavily modified Android 15 Build from Konstakang
Software:
What I have done is built an Android Launcher/App which does the following:
-
It starts on the boot and then
-
Communicates to 5F Unit in my car (Infotaiment) and pulls the data (this is contained in one of the Measuring blocks of the unit) on which buttons are being pressed on the unit and where the Audi Wheel/Knob/Rotrary thingy is positioned at the moment
- The pulled data gets processed and passed into the Android system
- AutoKit App is responsible for Carplay, and what my app does is it sends input data to the Carplay.
- I do this over Android Broadcasts instead of sending System Wide Keystrokes. See here how it is done. (Page 16 and 17)
- If not in Autokit aka. Carplay, my Launcher is able to pull some, for me needed, diagnostic data and display it a MMI Like UI I have built (See Photos and Videos Below)
Hardware:
-
Raspberry Pi sits in the Console (Under/in the Armrest) and is powered over 12V to USB C PD Charger
- HDMI to AV is connected to the Pi and AV output is connected to the AMI port
- I also used an external Audio Card for better audio
- CarlinkKit/Autokit connected to the Pi
- vLinker MC+ Connected to the OBD2 Port in my car
My App does a lot more than just sending Keystrokes when a Button on MMI is pressed, it is also able to read some diagnostic data like:
- DPF Values (Soot Calc., Soot Meas., Temp., )
- Freeze frame DTCs (can also clear them),
- Engine ECU info like temps., rpm, speed, errors, voltages...,
- AdBlue Level and
- OBD System Test / Readiness codes.
Fun Fact
I also made a custom prototype PCB which makes this setup compact and gets rid of most of the cables, I am still in the process of making a new and better version of this board, maybe even a 3D Printed housing for it.
Demo and Videos (CarHax [Name of this project])
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Latest version of CarHax: (2025)
Older Version of CarHax: (2024 - Clearing DTC Codes demo)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Disclaimer: I do NOT intend to share my App or the whole code behind it. It took a lot of time, a bunch of sniffing the communication between VCDS and my car, and even more time testing and fixing bugs.
If you would like to know more then you should get in contact with me. See sidebar for my Email Address.
TO BE FINISHED!
Emelin Habibovic
27.3.2025, 15:44