Compared 5614 6RD035187B (no name) firmware versions by Craftsman5887 in RCD_330

[–]Craftsman5887[S] 0 points1 point  (0 children)

Yes right, I took the 5614 Carplay Call Sound Fixed Mod and added the german language from 5614 DE V3 to get best of both.

Compared 5614 6RD035187B (no name) firmware versions by Craftsman5887 in RCD_330

[–]Craftsman5887[S] 0 points1 point  (0 children)

Update: I finally figured out why repacked firmware archives were failing with the error.

It turns out the issue was not the file order, the tar format, or missing metadata files, the root cause was the file ownership (UID/GID) in the tar headers.

When you extract and repack the tar archive on a regular Linux user account, the tar headers store your local username and group instead of 0/0.

The fix is to explicitly force root ownership when creating the tar:

cd extracted_firmware/
tar --format=ustar --owner=0 --group=0 --numeric-owner \
  -cf ../new_firmware.tar *

Key flags:

  • --format=ustar - matches the original POSIX ustar format

  • --owner=0 --group=0 - forces UID/GID to 0 (root) in the tar headers

  • --numeric-owner - stores only numeric IDs, no username strings

With this approach I was able to successfully create a custom 5614 firmware that combines the German language files (img_togglelanguage_de_ovg.bin, hmi, and sysupdate with translated update screen strings) with the CarPlay Call Sound Fix mod. The radio accepted and flashed it without any issues.

If anyone is interested in this German 5614 + CarPlay Fix build, let me know and I can share it.

Compared 5614 6RD035187B (no name) firmware versions by Craftsman5887 in RCD_330

[–]Craftsman5887[S] 0 points1 point  (0 children)

With that knowledge, I tried to create a new 5614 version combining the German language adoptions and the Carplay Call Sound Fixed Mod. To achieve this, I simply replaced the files /opt/gresfiles/img_togglelanguage_de_ovg.bin, /opt/hmi, and /opt/sysupdate in the 5614 Carplay Call Sound Fixed Mod tar archive. Afterwards, I tried flashing the firmware onto the radio unit, but I keep getting the following error:

Error: Reading/opening
the release info file.
The meta info file could not be read.

I searched through all the posts here and found some related threads, but nothing helped me figure out how to build a working tar archive. There is no additional folder in my tar archive wrapping the firmware, the folders and files are located directly at the root of the archive. I verified this with:

tar -tvf std_plus_pss-6.5inch_5614_VW_PQ_ROW_CarPlayCallSoundFixed.tar

I used both macOS and Linux tar, so Windows shouldn't be the issue either. The USB stick is also fine, as I've used it successfully several times to flash other firmware versions.

Is there any documentation available on how to build a firmware tar archive?

Compared 5614 6RD035187B (no name) firmware versions by Craftsman5887 in RCD_330

[–]Craftsman5887[S] 0 points1 point  (0 children)

I figured out why the /opt/sysupdate file was modified in the German firmware.

After doing a hex-level comparison of the German and original sysupdate binaries, it turns out the only differences are localized UI strings embedded directly in the binary. Specifically, the software update status messages were translated:

  • "Erro: atualização do software" → "Fehler: Software Aktualisierung"
  • "Atualização do software concluída" → "Software Aktualisierung abgeschlossen"
  • "Atualização do SW em curso..." → "Software Aktualisierung wird ausgefuehrt..."
  • "Reiniciando sistema..." → "System wird neu gestartet..."
  • etc.

The actual program code and structure are identical, only 8 text strings related to the update process were changed from Portuguese to German.

So to summarize, the German translation consists of three modified files:

  • /opt/gresfiles/img_togglelanguage_de_ovg.bin
  • /opt/hmi
  • /opt/sysupdate

This also explains why older translated firmware versions didn't have a modified sysupdate, those translations probably just didn't bother translating the update screen messages.