Audi MHI2 RVC fullscreen patch: Difference between revisions
(5 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
Audi MMI MHI2 is set up in such a way that rear view camera is shown in split screen view. Camera stream is shown on the left side of the display, when the right side is occupied by parking sensors visualisation or AreaView image in equipped cars. | Audi MMI MHI2 is set up in such a way that rear view camera is shown in split screen view. Camera stream is shown on the left side of the display, when the right side is occupied by parking sensors visualisation or AreaView image in equipped cars. | ||
If your car is not equipped with AreaView (you have for example Audi A3 8V where AreaView was not available), you are stuck with RVC image not on fullscreen. Luckily there's a way around it! | If your car is not equipped with AreaView (you have for example Audi A3 8V where AreaView was not available), you are stuck with RVC image not on fullscreen. | ||
Luckily there's a way around it! And here's the repo with needed assets: https://github.com/mrfixpl/Audi-MHI2-RVC-fullscreen | |||
We need to change 3 things: | We need to change 3 things: | ||
Line 43: | Line 45: | ||
mkdir ~/MHI2_backup | mkdir ~/MHI2_backup | ||
scp root@10.173.189.1:/mnt/system/etc/eso/production/displaymanager.json ~/MHI2_backup/displaymanager.json | scp -O root@10.173.189.1:/mnt/system/etc/eso/production/displaymanager.json ~/MHI2_backup/displaymanager.json | ||
scp -r root@10.173.189.1:/mnt/app/eso/hmi/lsd/images/HMIEarlyAppsEvoHighScale ~/MHI2_backup/HMIEarlyAppsEvoHighScale_original | scp -O -r root@10.173.189.1:/mnt/app/eso/hmi/lsd/images/HMIEarlyAppsEvoHighScale ~/MHI2_backup/HMIEarlyAppsEvoHighScale_original | ||
scp -r root@10.173.189.1:/mnt/app/eso/hmi/lsd/kzbs/HMISystemEvoHighScale ~/MHI2_backup/HMISystemEvoHighScale_original | scp -O -r root@10.173.189.1:/mnt/app/eso/hmi/lsd/kzbs/HMISystemEvoHighScale ~/MHI2_backup/HMISystemEvoHighScale_original | ||
== Modifications == | == Modifications == | ||
Line 123: | Line 125: | ||
== Uploading already modified files to unit == | == Uploading already modified files to unit == | ||
<youtube>rX6YoU1oB2w</youtube> | |||
Enable write mode in your MIB | Enable write mode in your MIB | ||
Line 133: | Line 136: | ||
Send modified assets to MIB | Send modified assets to MIB | ||
git clone https://github.com/mrfixpl/Audi-MHI2-RVC-fullscreen.git | |||
cd Audi-MHI2-RVC-fullscreen/MHI2_AU37x/modification/ | |||
scp -O displaymanager.json root@10.173.189.1:/mnt/system/etc/eso/production/ | |||
scp - | scp -O *.png root@10.173.189.1:/mnt/app/eso/hmi/lsd/images/HMIEarlyAppsEvoHighScale/ | ||
scp | scp -O OPS_*.kzb root@10.173.189.1:/mnt/app/eso/hmi/lsd/kzbs/HMISystemEvoHighScale/ | ||
Make sure files are synced with storage drive | Make sure files are synced with storage drive |
Latest revision as of 13:42, 10 September 2025

Audi MMI MHI2 is set up in such a way that rear view camera is shown in split screen view. Camera stream is shown on the left side of the display, when the right side is occupied by parking sensors visualisation or AreaView image in equipped cars.
If your car is not equipped with AreaView (you have for example Audi A3 8V where AreaView was not available), you are stuck with RVC image not on fullscreen.
Luckily there's a way around it! And here's the repo with needed assets: https://github.com/mrfixpl/Audi-MHI2-RVC-fullscreen
We need to change 3 things:
- how the unit is processing video stream (crop and position)
- OPS textures opacity
- OPS vehicle and radar lines textures inside
.kzb
container.
Access MHI2 main unit file system
Connection
You can do this via WLAN, USB-to-Ethernet D-Link DUB-E100 adapter, or via TX/RX connection from QuadLock.
Protocol
You can use TelNet (unit already supports it) or SSH (service needs to be installed via More Incredible Bash or MIB2 Toolbox).
Root user password
If you have installed the latest firmware for Audi A3 (MHI2_ER_AU37X_P5089
), the root password is 4SapmKoq
Root user passwords for other firmwares and MU app versions can be found in the Password_List_V4.0.pdf document from More Incredible Bash repo.
You can also use More Incredible Bash to change the root password to harman_f
for your convenience.
Backup original files
Choose one (or more) method to backup original assets in your unit, before you change anything.
Local copy inside MHI2 unit
ssh root@10.173.189.1 mount -uw /net/mmx/mnt/app && mount -uw /net/mmx/mnt/system cp /etc/eso/production/displaymanager.json /etc/eso/production/displaymanager.json.original cp -r /eso/hmi/lsd/images/HMIEarlyAppsEvoHighScale /eso/hmi/lsd/images/HMIEarlyAppsEvoHighScale_original cp -r /eso/hmi/lsd/kzbs/HMISystemEvoHighScale /eso/hmi/lsd/kzbs/HMISystemEvoHighScale_original exit
Remote copy on your computer
mkdir ~/MHI2_backup scp -O root@10.173.189.1:/mnt/system/etc/eso/production/displaymanager.json ~/MHI2_backup/displaymanager.json scp -O -r root@10.173.189.1:/mnt/app/eso/hmi/lsd/images/HMIEarlyAppsEvoHighScale ~/MHI2_backup/HMIEarlyAppsEvoHighScale_original scp -O -r root@10.173.189.1:/mnt/app/eso/hmi/lsd/kzbs/HMISystemEvoHighScale ~/MHI2_backup/HMISystemEvoHighScale_original
Modifications
Changing FBAS stream size and position
That's easy. Duplicate the displaymanager.json
file and call it displaymanager_modified.json
. Now open the displaymanager_modified.json
with text or code editor and look for section related to the rear view camera. It should look like this:
"rvc" : { "norm" : "AUTO", "deinterlace" : "WEAVE", "source":{ "x": 96, "y": 48, "w": 528, "h": 384 }, "target":{ "x": 0, "y": 54, "w": 528, "h": 384 }, "brightness": 0, "color": 0, "saturation": 0, "hue": 0 },
We are going to change two things: source
and target
parameters. source
defines how to crop the original video stream from the camera, and target
defines where and how to display it.
Let's start with expanding the source view. RVC camera uses an analog NTSC stream. Full resolution of such video source is 720 by 480 pixel, so let's remove the original cropping and expand the field of view.
"source":{ "x": 0, "y": 0, "w": 720, "h": 480 },
And now let's make sure that the image is stretched to the full width od the display..
"target":{ "x": 0, "y": 0, "w": 800, "h": 438 },
Changing opacity of PNG file
Those textures are displayed on top of the video stream to create base for the rest of user interface.
2100002.png
- OPS background2100003.png
- split screen divider2100137.png
- right drawer button frame2100145.png
to2100156.png
- top view car image for cars with RVC and no parking sensors
With an image editor of your choice (GIMP, Photoshop, Affinity Designer, Paint...) modify opacity of the files.
My personal choice:
- OPS background: opacity 0% (invisible)
- split screen divider: fading from opacity 25% (top) to 0% (bottom)
- all other files: opacity 25%
Changes inside KZB container
Some textures are not stored directly in the MHI2 filesystem, but are compressed into .kzb
containers, most likely made with Kanzi Studio. Free trail exists, but it's not freely available - you can request free trail and hope get a positive reply.
Interesting files are the OPS_AU*.kzb
packages with assets for the Optical Parking System for different body variants of the vehicle.
I found a way to extract images from the .kzb
package. You can try with DragonUnPACKer [1] - game file resource explorer/unpacking tool. Once I had the files extracted, I modified couple of them by, once again, changing opacity to 25%.
ops_trailer.png
- trailer image if vehicle equipped with tow bar and trailer is connectedops_bg_splitscreen.png
- parking sensors backgroundops_car_au*.png
- top-view images of vehicles in different body variants.
How to pack the .kzb
back? Well I have a messy way of doing it and I'm not going to show you that just yet.
Uploading already modified files to unit
Enable write mode in your MIB
ssh root@10.173.189.1 mount -uw /net/mmx/mnt/app && mount -uw /net/mmx/mnt/system exit
Send modified assets to MIB
git clone https://github.com/mrfixpl/Audi-MHI2-RVC-fullscreen.git cd Audi-MHI2-RVC-fullscreen/MHI2_AU37x/modification/ scp -O displaymanager.json root@10.173.189.1:/mnt/system/etc/eso/production/ scp -O *.png root@10.173.189.1:/mnt/app/eso/hmi/lsd/images/HMIEarlyAppsEvoHighScale/ scp -O OPS_*.kzb root@10.173.189.1:/mnt/app/eso/hmi/lsd/kzbs/HMISystemEvoHighScale/
Make sure files are synced with storage drive
ssh root@10.173.189.1 sync exit
Now reboot the unit with 3-button combination and check if it works.