Following on from my first post on Audi MMI where I walked through installing the maps update and speed cameras overlay, this post covers how to install M.I.B. (More Incredible Bash) and enable CarPlay/Android Auto on your Audi MMI system.
I've pulled together information from the M.I.B. GitHub repo, mibwiki.one, mibsolution.one, Audizine, AudiWorld, Ross-Tech forums, and various community guides to put everything in one place. The goal is to save you the hours of trawling through forum threads, Telegram messages, and half-documented wikis that I went through. Modifying your car's infotainment firmware is not a quick afternoon project though. Read the whole post before you touch anything. There are steps where getting it wrong (pulling the SD card at the wrong moment, updating the Bose amplifier without parametrization, losing power mid-flash) can leave you with a bricked unit or no audio. Take your time, follow the steps in order, and don't skip the backup.
Similarly to the maps update process, all you'll need is an SD card, 7-Zip, and a computer to extract the files onto the SD card.
IMPORTANT: All changes you make to your car are at YOUR OWN RISK! I am not liable if you brick your MMI system. Power loss during flashing can permanently brick the unit. Connect external power to the car before starting any of this. Do not attempt it on battery alone.
M.I.B. (More Incredible Bash) is an open source toolkit for Harman MIB1 High and MIB2 High infotainment units, maintained on GitHub by Mr-MIBonk. It describes itself as "The Army knife for Harman MIB 2.x aka MHI2(Q) units" and is released under GPL-2.0. Despite the name focusing on MIB2, it supports MHIG (MIB1 High) units as well. It's a collection of scripts and patches that run from an SD card and modify the head unit through the Green Engineering Menu (GEM), unlocking features that are present in the hardware but disabled through software restrictions.
A lot of Audi models shipped with the hardware capable of running CarPlay/Android Auto but had the feature locked behind a paid activation or a dealer visit. Audi dealers typically charge anywhere from 200 to 500+ euros for the activation depending on the market and dealer, and some won't do it at all on older models. M.I.B. bypasses that restriction entirely.
On the M.I.B. intro screen you'll see: "NOT FOR COMMERCIAL USE - IF YOU BOUGHT THIS YOU GOT RIPPED OFF!" If someone is charging you for these tools, they're reselling free software. The firmware and utilities are provided free of charge for personal use. Commercial/for-profit usage is strictly prohibited. The community behind this is active on Telegram and Discord, and all the documentation lives on mibwiki.one.
M.I.B. works on vehicles with Harman high-end head units: MHIG (MIB1 High), MHI2 (MIB2 High, Harman/Aisin), and MHI2Q (MIB2 High with Qualcomm chipset).
It does NOT work on MIB1 Entry (MENT), MIB1 Standard (MSTD), MIB2 Entry (MEN2), MIB2 Standard Delphi/TechniSat (MST2), or any MIB3 units (MHI3, MPR3, MOI3, etc.). If you have an MST2 unit, there's a separate mib-std2-pq-zr-toolbox on GitHub with its own process.
If you followed the maps update post, you'll already know which version you have from the red engineering menu. If not, I'll cover how to check below.
The table below covers Audi models and the likely MIB generation fitted. Your exact unit depends on trim level and production date, so always verify via the Red Engineering Menu.
| Model | Chassis Code | Year Range | Likely MIB Version | M.I.B. Compatible? |
|---|---|---|---|---|
| A1 | GB | 2019-2024 | MIB1 High (MHIG) | Yes |
| A3 | 8V (pre-facelift) | 2013-2016 | MIB1 High (MHIG) | Yes |
| A3 | 8V (facelift) | 2016-2020 | MIB2 High (MHI2) | Yes |
| A3 | 8Y | 2021+ | MIB3 (MHI3) | No |
| A4 | B9 | 2016-2019 | MIB2 High (MHI2) | Yes |
| A4 | B9.5 (facelift) | 2020-2022 | MIB2 High (MHI2Q) or MIB3 | Check unit |
| A5 | F5 | 2017-2019 | MIB2 High (MHI2) | Yes |
| A5 | F5 (facelift) | 2020-2022 | MIB2 High (MHI2Q) or MIB3 | Check unit |
| A6 | C7.5 (facelift) | 2015-2018 | MIB2 High (MHI2) | Yes |
| A6 | C8 | 2019+ | MIB2 High (MHI2Q) or MIB3 | Check unit |
| A7 | 4G8 (facelift) | 2015-2018 | MIB2 High (MHI2) | Yes |
| A7 | 4K | 2019+ | MIB2 High (MHI2Q) or MIB3 | Check unit |
| A8 | D5 | 2018+ | MIB2 High (MHI2Q) or MIB3 | Check unit |
| Q2 | GA | 2016-2024 | MIB2 High (MHI2) | Yes |
| Q3 | F3 | 2019+ | MIB2 High (MHI2) or MIB3 | Check unit |
| Q5 | FY | 2017+ | MIB2 High (MHI2) | Yes |
| Q7 | 4M | 2016-2019 | MIB2 High (MHI2) | Yes |
| Q7 | 4M (facelift) | 2020+ | MIB2 High (MHI2Q) or MIB3 | Check unit |
| Q8 | 4M | 2019+ | MIB2 High (MHI2Q) or MIB3 | Check unit |
| TT | 8S | 2015-2023 | MIB2 High (MHI2) | Yes |
| R8 | 4S | 2016-2023 | MIB2 High (MHI2) | Yes |
Where it says "Check unit", the model shipped with either MIB2 or MIB3 depending on the exact production date and market. Facelifted models from 2020 onwards often got MIB3, which M.I.B. does not support. The only way to know for certain is to check the firmware version string in the Red Engineering Menu.
VW Group cars with equivalent units follow the same pattern. The mapping across brands:
| Firmware Train Prefix | Brand | Unit Name |
|---|---|---|
| MHI2_xx_AUGxx | Audi | MMI Navigation Plus / MMI High |
| MHI2_xx_VWGxx | Volkswagen | Discover Pro |
| MHI2_xx_SKGxx | Skoda | Columbus |
| MHI2_xx_SEGxx | Seat | Navi System Plus |
| MHI2_xx_POGxx | Porsche | PCM |
| MHI2_xx_BYGxx | Bentley | - |
| MHI2Q_xx_AUGxx | Audi | MMI Navigation Plus (Qualcomm) |
If the unit reports MHI2 or MHI2Q at the start of the version string, M.I.B. will work regardless of brand.
Your car needs two USB ports in the armrest or glovebox. These must be data-capable ports, not charge-only. If your car only has charging ports, the M.I.B. activation will go through but you won't be able to connect a phone for CarPlay/AA. You would need a USB port hardware retrofit in that case, which is beyond the scope of this post.
Everything in this guide is provided as-is, same as the M.I.B. toolkit itself.
Before going through the whole firmware modification, check whether your car already has it active. If you bought the car used, a previous owner may have enabled it through M.I.B. or paid for the dealer activation. Plug your iPhone or Android phone into one of the USB ports with a data cable and look for a Smartphone Integration, Apple CarPlay, or Android Auto option under MENU > Settings. If it's there and your phone connects, you don't need any of this. If the menu option doesn't exist or the phone only charges without any prompt, carry on with the guide.
guest, password: guest). Download the M.I.B_Patches archive.You can also use mib-helper.com to look up your firmware version and see what tools and updates apply to your specific unit.
From the main MMI screen, enter the Red Engineering Menu (REM). The key combination varies by model and the button layout differs between cars with physical buttons versus touchscreens. Some common combinations:
The full list of key combinations for each model (including Porsche and Bentley) is on the M.I.B. wiki and on mibwiki.one. You need to be on the HOME screen when pressing the combination.
Once in REM, navigate to Version Information. Note down the firmware version string. It will look something like MHI2_ER_AU37x_P5089 or MHI2_US_AU57x_K3341.
The firmware string tells you a lot about your unit:
MHI2_ER_AUG22_P5092_MU1329
| | | | |
| | | | +-- MU (Main Unit) build number
| | | +-------- Version: P = Production, K = Customer Update, S = Security Fix
| | +-------------- Brand/model: AUG = Audi, VWG = VW, SKG = Skoda, etc.
| +----------------- Region: ER = Europe+RoW, US = USA, CN = China, JP = Japan
+---------------------- Unit type: MHI2 = MIB2 High, MHI2Q = MIB2 High Qualcomm
The region codes are: ER (Europe + Rest of World), US (United States), CN (China), JP (Japan), KR (South Korea), TW (Taiwan), NAR (North America Region).
You can enter this firmware version into mib-helper.com to check M.I.B. compatibility. Scroll to the bottom of the results page and check if "More Incredible Bash" appears under "Activators".
Remember to exit the engineering menu by holding the same button combination again. As I mentioned in the maps post, if you don't do this it stays on screen even after turning the car off.
You do NOT need to update to the newest firmware before proceeding. M.I.B. works with older firmware versions.
Format your SD card as FAT32 with an allocation unit size of 4096 bytes. On Windows, if the card is larger than 32GB, the built-in formatter won't offer FAT32 as an option. Use a tool like Rufus or guiformat to force FAT32 formatting on larger cards.
Extract the M.I.B. archive (e.g. M.I.B._More-Incredible-Bash-3.6.0.zip) to the root of the SD card. The metainfo2.txt file needs to be at the root level, same as with the maps update. Your SD card root should contain files and folders directly, not a single parent folder wrapping everything.
Next, extract the M.I.B. patches archive into the patches folder on the SD card. You can extract all available patches or only the one matching your firmware version. M.I.B. will automatically select the correct patch for your unit during installation.
If you want M.I.B. to install automatically when the SD card is inserted, rename _Swdlautorun.txt to Swdlautorun.txt (delete the leading underscore). This is the recommended installation method. If you'd rather trigger installation manually, leave the filename as-is.
Your SD card should look something like this:
SD Card Root/
|-- metainfo2.txt
|-- Swdlautorun.txt (renamed from _Swdlautorun.txt)
|-- patches/
| |-- MHI2_ER_AU37x_Pxxxx_PATCH/
| |-- (other patch folders)
|-- common/
|-- (other M.I.B. folders and files)
If something goes wrong during this step, you may need a D-Link DUB-100 USB-to-Ethernet adapter and a UART/serial connection to unbrick the unit, or a trip to the dealer. Make sure you have external power connected.
Connect external power to the car (a battery charger or power supply, not a jump pack). Turn off heating, lights, fans, and anything else drawing power. Turn the ignition on but do NOT start the engine. The M.I.B. developers warn against flashing with the engine running, as alternator voltage fluctuations and vibration can corrupt the write.
Make sure the car key stays in the vehicle during the entire firmware update. Some models with KESSY (Keyless Entry Start System) will shut down the MMI if the key leaves the car mid-update, which can brick the unit.
Do NOT remove the SD card and do NOT press any buttons during installation.
The unit will reboot three times. The screen will go black between reboots and show boot screens and update progress. The whole thing takes around 5 to 10 minutes. When it finishes, you'll see a screen listing the installed packages. Proceed through this screen and you'll reach a "Start diagnostic tester: Main unit / version..." prompt. Press Cancel and the system will do a final reboot.
M.I.B. installation will cause a Software Version Management (SVM) error in module 5F. This is completely normal and expected. M.I.B. includes a fix for this, which I'll cover in the activation steps.
After the final reboot, wait a few minutes for the system to settle. The Green Engineering Menu (GEM) needs time after a cold boot to become accessible. Up to five minutes is normal, so don't panic if it doesn't respond right away.
The GEM uses a different key combination from the Red Engineering Menu, and it varies by model. The M.I.B. wiki has visual diagrams for each model, but the common ones are:
You need to be on the HOME screen when pressing the combination. If GEM doesn't appear, try pressing the Radio button first, then the combination. The button presses need to be simultaneous and held for a full 6 seconds. It can take a few attempts.
This is the most common problem people hit. A few things to try:
Enable Developer Mode via VCDS: Connect VCDS, go to module 5F (Information Electronics) > Security Access and enter the code S12345. Then go to Adaptation, find Developer Mode in the dropdown (or Channel 6 on older VCDS versions), and change it from "not activated" to "activated". Click Test then Save. No MMI restart is needed after this change. Note: the S12345 key requires VCDS with up-to-date label files and a HEX-V2 or HEX-NET interface. If VCDS tells you the key is invalid, update your VCDS installation from ross-tech.de. On some firmware versions this key simply won't work, in which case try OBDeleven or the SD card method instead.
Enable Developer Mode via OBDeleven: Same steps through module 5F, adaptation, Developer Mode channel. OBDeleven handles the security access differently and tends to work on units where VCDS has label file trouble.
SD card script method: There are SD card scripts that can enable GEM without needing VCDS or OBDeleven. These are documented on the M.I.B. wiki and on mibwiki.one.
On MIB2 units, the factory "green menu" or "developer menu" that you get by enabling Developer Mode through VCDS is mostly useless for modding. VAG gutted most of the useful options compared to the older MMI 3G green menu. What you actually need is the GEM provided by M.I.B. after installation, which gives you the full =>m.i.b.<= interface with the patching tools. If you've enabled Developer Mode through VCDS and see a sparse menu with nothing useful, that's expected. The M.I.B. installation itself enables the proper GEM with all the modding capabilities.
Once you're in the Green Engineering Menu, select =>m.i.b.<= to enter the M.I.B. interface.
When running ANY operation in M.I.B., do NOT press any buttons or try to cancel. You can use the main MMI dial to scroll through the progress log that M.I.B. outputs on screen, but do not interrupt it.
Navigate to backup_restore and select backup. This creates a snapshot of your current system state in case anything goes wrong. The backup takes around 5 minutes.
Do this before anything else. If you skip this step and something goes wrong, getting back to a working state becomes significantly harder.
From the M.I.B. root menu, navigate to Patch IFS-Root-AIO and select "Flash patched image / add FECs / CP/AA coding".
This single operation does several things:
Google_GAL (Android Auto), Apple_DIO (CarPlay), and related channels to enabledUnder the hood, the coding changes being applied to module 5F address 0x22AD (Vehicle Configuration) include:
Google_GAL (Android Auto): ON
Apple_DIO (CarPlay): ON
Wifi_Client_HMI: ON
Apple_DIO_Wireless: ON (for units with WiFi hardware)
wlan_5ghz_switch: Activated
The unit will reboot after patching completes. Wait for it to come back up fully.
Enter GEM again and go back into =>m.i.b.<=. Navigate to advanced_settings > svm_fix and select "Fix SVM error". This clears the Software Version Management error in module 5F that the installation created, removing the error codes that would show up in a diagnostic scan at a dealer. If you have access to official SVM through ODIS, you can also use that with the appropriate SVM code for your firmware version.
By default, when you use navigation through Android Auto or CarPlay, the Virtual Cockpit switches to showing a compass instead of the map. Dual navigation keeps the built-in map active in the Virtual Cockpit while you use phone-based navigation on the main MMI screen.
From the M.I.B. root menu, navigate to Navigation > navactiveignore and select "Enable dual navigation".
After completing steps 2 and 3, go to MENU > Settings on the main MMI screen. You should now see a Smartphone Integration or Apple CarPlay entry that wasn't there before. If the entry is visible, the activation worked and you can move on to connecting your phone. If it's missing, re-enter GEM and run the IFS-Root patch again.
CarPlay and Android Auto on MIB2 units work via wired USB connection only.
CarPlay requires an iPhone 5 or newer running iOS 7.1+, though realistically you want iOS 13 or later for a decent experience. Android Auto requires Android 6.0 (Marshmallow) or newer. On phones running Android 10+, Android Auto is built into the OS so there's no separate app to install. On older Android versions you'll need to grab the Android Auto app from the Play Store first.
Connect your phone to one of the USB ports in the armrest or glovebox using a data-capable cable. Cheap cables that only charge won't work. Apple's OEM Lightning or USB-C cables are the safest bet.
For CarPlay: Plug in your iPhone and the MMI should detect it and prompt you to enable CarPlay. Accept on both the phone and the MMI screen. Make sure Siri is enabled on the phone, as CarPlay requires it.
For Android Auto: Connect your Android phone via USB. Accept the permissions prompts on the phone. Android Auto should appear as an option in the MMI menu.
If the phone connects for charging but CarPlay/Android Auto doesn't appear, try the other USB port. On most models, only one of the two ports supports smartphone integration. The port you need is typically the one closest to the SD card slots.
The steering wheel media buttons (skip, volume, mute) work with CarPlay and Android Auto after activation. Long-pressing the voice button on the steering wheel will trigger Siri (CarPlay) or Google Assistant (Android Auto) through the car's microphone and speakers. Call accept/reject buttons on the wheel work with phone calls through both platforms.
MIB2 screens run at a lower resolution than what newer cars offer, so CarPlay and Android Auto won't look as sharp as they would on a MIB3 or aftermarket unit. Text is readable and maps work fine, but smaller UI elements can look a bit rough around the edges. Waze in particular has had rendering quirks on some MIB2 firmware versions where the map stutters during scrolling. Google Maps and Apple Maps tend to behave better. The touchscreen response on MIB2 can feel slightly laggy compared to using the phone directly, which is a hardware limitation rather than a software one.
Almost all MIB2 units do not support wireless CarPlay. The exception is the MH2p (High Plus Alpine) unit with firmware P2470 or higher, which has the WiFi hardware needed for wireless connectivity.
If your unit is an MH2p on P2470+, wireless CarPlay can be enabled through 5F adaptation coding:
Vehicle Configuration - MirrorLink: On
Vehicle Configuration - WiFi_Client_HMI: On
Vehicle Configuration - Apple_DIO_Wireless: On
Vehicle Configuration - wlan_5ghz_switch: Activated
Vehicle Configuration - Apple_DIO: On
Long Coding - WLAN: On
After coding, reboot the MMI, turn on the Wi-Fi hotspot in MMI settings, and pair your iPhone via Bluetooth. It should prompt you to use CarPlay wirelessly.
For everyone else (which is most MHI2 units), wireless CarPlay requires a wired-to-wireless adapter. These plug into the USB port and bridge the connection over WiFi. Some popular options:
| Adapter | Notes |
|---|---|
| CarlinKit 3.0 Plus | Best value, good range |
| CarlinKit 3.0 Mini | Smallest and cheapest |
| CPLAY2air | Reliable, good reviews |
| MiraBox HSV-283 | Pricier option |
These adapters stay plugged into the USB port permanently and handle the wireless connection to your phone. They add a few seconds of connection delay on startup compared to wired.
If you'd rather skip M.I.B. entirely, there's an alternative approach using All-In-One (AIO) custom firmware. These are pre-built firmware packages that include the IFS-root patch, FEC codes, CarPlay/Android Auto activation, Developer Mode, GEM, and M.I.B. pre-installed. The AIO approach updates your firmware and activates everything in a single operation.
If the AIO update goes wrong, you'll need a D-Link DUB-100 USB-to-Ethernet adapter with a telnet session or a dealer visit to fix it.
AIO firmware packages are hosted on mibsolution.one (guest:guest). The naming convention is something like MHI2_ER_AU57x_K3663_1_AIO_MU1425.
The process:
MHI2_ER_AU57x for European Audi). The exact firmware file depends on your car. Check mib-helper.com or ask on the Telegram channel.metainfo2.txt file must be at the root level.After the AIO update, Developer Mode and GEM will be enabled, M.I.B. will be installed, and CarPlay/Android Auto should be active. You can enter GEM to run the SVM fix and enable dual navigation as described in the M.I.B. steps above.
The AIO firmware includes updates for the Bose and B&O amplifiers by default, but applying the amplifier update without running parametrization afterwards (which requires VCP or ODIS) will leave you with no sound at all.
The default metainfo2.txt in most AIO packages is configured to skip the Bose/B&O update. If you see a metainfo2-Bose-BO.txt or similar alternative in the package, leave it alone unless you have access to VCP or ODIS for parametrization.
If you're doing a manual firmware update through the Red Engineering Menu and the Bose module appears in the update list, you need to deselect it. Enter the Bose/B&O entry, click All > NONE > All to skip that component, go back and verify an N is shown next to the Bose entry, then proceed with the update. The Audizine C7.5 CarPlay thread has screenshots of these steps.
Can't access the Green Engineering Menu: The button combinations are finicky and model-specific. Make sure you're on the HOME screen, try holding the buttons for a full 6 seconds, and try multiple times. Some people report needing 5-6 attempts before it works. If it never works, enable Developer Mode via VCDS (module 5F, Security Access with S12345, then Adaptation > Developer Mode > activated) or OBDeleven. See the "If You Can't Access GEM" section above for the full procedure and caveats about VCDS compatibility.
Installation fails or errors during SD card scan: Almost always an SD card issue. Try a different card, make sure it's a full-size SD (not microSD in an adapter), confirm it's formatted as FAT32 with 4096 byte allocation units, and verify that the files are at the root of the card with no parent folder wrapping them.
"Version conflict" error when trying to update: The metainfo2.txt on the SD card doesn't match your unit. This happens when the firmware train in the metainfo2 file doesn't match what your unit expects. For AIO updates, you may need to edit the metainfo2.txt to match your exact train designation. For example, if your unit reports MHI2_ER_VWX11 but the AIO is built for MHI2_ER_VWG11, you'd need to change the references. The AIO installation wiki covers this.
Screen goes black and stays black during installation: The screen going black between reboots is normal. Wait it out. AIO updates involve multiple reboots and can take up to 30 minutes. If the screen hasn't come back after 45 minutes, try a manual MMI reboot by holding Menu + Rotary Control (centre MMI knob) + Top-Right soft button simultaneously for a couple of seconds. This is the standard MMI reset combination for MIB2 units.
CarPlay/AA doesn't work after patching: Check that you have data-capable USB ports (two ports in armrest/glovebox). If your car only has charging ports, you'll need a USB port hardware retrofit. Try a different USB cable. Make sure Siri is enabled on your iPhone (CarPlay won't work without it).
No sound after firmware update: You updated the Bose or B&O amplifier without running parametrization. This needs VCP or ODIS to fix. See the Bose/B&O section above for how to avoid this.
Error codes in module 5F after installation: Expected. Use the SVM fix in M.I.B. (Step 3 above) to clean these up. Some persistent codes may remain (this is noted in the Audizine thread too, where users report 3 persistent codes after activation). These won't affect functionality, but don't attempt to clear them through other means or "funky stuff" as the Audizine thread puts it. Just clear them and the ones that need to stay will stay.
No FEC/SWaP codes after AIO update (Navigation, Bluetooth, CarPlay not working): The FEC folder in the RCC filesystem may not be set up properly, which tends to happen when updating from certain factory firmware versions. Fixing it requires connecting a PC via a D-Link DUB-100 USB-to-Ethernet adapter, opening a telnet session to the RCC on port 123, and recreating the FEC folder. This is documented on mibwiki.one. If you're not comfortable with telnet, ask in the Telegram channel.
Dealer visits after modification: If you take your car to an Audi dealer for service, they may attempt to install an MMI security patch or firmware update. If you have CarPlay activated via M.I.B., the dealer's update may fail or overwrite your modifications. Some owners restore to stock firmware before a dealer visit and re-apply M.I.B. afterwards. The SVM fix helps prevent the dealer from seeing obvious error codes, but it doesn't make the modification invisible to someone deliberately looking for it.
If you want to revert to stock firmware for any reason, download the OEM firmware for your specific unit from mibsolution.one and install it via the standard System Update menu from the Red Engineering Menu. The stock firmware will overwrite the M.I.B. modifications. If you ran a backup in Step 1, you can also restore from that backup through the M.I.B. interface.
Your maps and speed camera data will remain intact through both the M.I.B. installation and any rollback, since those are stored separately from the system firmware.
CarPlay/Android Auto activation and lifetime maps are the most popular features, but M.I.B. has a lot more in it:
The M.I.B. GitHub wiki has detailed documentation on the full feature set. The full community wiki at mibwiki.one covers bench setups, D-Link connections, UART/serial debugging, and firmware restoration for those who want to go deeper. The community is active on Telegram and Discord if you get stuck.