Notices
991 2012-2019
Sponsored by:
Sponsored by:

Porsche PCM Upgrade/Hack for Android Auto? Is this real?

Thread Tools
 
Search this Thread
 
Old 03-16-2021, 11:16 AM
  #331  
enzotcat
Pro
 
enzotcat's Avatar
 
Join Date: Mar 2016
Posts: 711
Received 384 Likes on 200 Posts
Default

Originally Posted by DeSmO ManU
I extracted the ifs_stage2_root_orig with the command:

./dumpifs_helper.sh ifs_root_stage2_orig.ifs

and I noticed that it generates, in addition to the ifs_extracted folder, the ifscont.txt and ifslinks.txt files.
In particular, this last file contains all the links contained in the mkifs_attributes.txt file plus the following line:

bytes-> -> bytes

Looking at the ifscont.txt file I noticed that it contains a line written like this:

bytes->

do you think I should add the line "bytes-> -> bytes" to the mkifs_attributes.txt file? has anyone made this fix? does it make sense?Thanks
No - I made no changes to the attributes file at all. It does not seem to need any changes.
Old 03-16-2021, 12:26 PM
  #332  
DeSmO ManU
AutoX
 
DeSmO ManU's Avatar
 
Join Date: Mar 2021
Posts: 11
Likes: 0
Received 0 Likes on 0 Posts
Default

Originally Posted by enzotcat
No - I made no changes to the attributes file at all. It does not seem to need any changes.
Ok, to verify that everything works correctly I will try to repack the ifs_root_stage2 without having made any changes to MIBRoot.
The two files, the original ifs_root_stage2 and the one that I unpacked with dump_ifs_helper and repacked with mkxfs, should be identical and have the same size, right?
Old 03-16-2021, 12:27 PM
  #333  
asellus
RL Community Team
Rennlist Member
 
asellus's Avatar
 
Join Date: Dec 2013
Location: Minnesota
Posts: 5,787
Received 2,069 Likes on 1,285 Posts
Default

Originally Posted by googleg
Completely off-topic and just to be a ball-breaker: MacOS (aka OS X) is not a linux based OS ;-)
Yeah, yeah.. MacOS being BSD-based is well into 'close enough' territory for me.

I'm sure brew has the tools available needed for this work. If not, compiling isn't that hard.
Old 03-16-2021, 12:28 PM
  #334  
enzotcat
Pro
 
enzotcat's Avatar
 
Join Date: Mar 2016
Posts: 711
Received 384 Likes on 200 Posts
Default

Originally Posted by DeSmO ManU
Ok, to verify that everything works correctly I will try to repack the ifs_root_stage2 without having made any changes to MIBRoot.
The two files, the original ifsrootstage2 and the one that I unpacked with dump_ifs_helper and repacked with mkxfs, should be identical and have the same size, right?
The mounted filesystem will look the same, but the image will not be the same because the attributes are different - I believe the attribute file contains more attributes, so the size and checksum will be different. However, what you can do is do the mkxfs, then a dumpifs and then do a cksum comparison on each file that is in the unpacked filesystem.
Old 03-16-2021, 12:30 PM
  #335  
enzotcat
Pro
 
enzotcat's Avatar
 
Join Date: Mar 2016
Posts: 711
Received 384 Likes on 200 Posts
Default

Originally Posted by asellus
Yeah, yeah.. MacOS being BSD-based is well into 'close enough' territory for me.

I'm sure brew has the tools available needed for this work. If not, compiling isn't that hard.
... aaannnd we're now well into software geek territory here.

Oh wait ...

(FWIW, I built it on a Fedora Linux VM hosted on an intel mac, and used an M1 mac to do the wifi telnet story)
Old 03-16-2021, 12:40 PM
  #336  
DeSmO ManU
AutoX
 
DeSmO ManU's Avatar
 
Join Date: Mar 2021
Posts: 11
Likes: 0
Received 0 Likes on 0 Posts
Default

ok enzo, i'll try this evening. Thanks
Old 03-16-2021, 12:48 PM
  #337  
enzotcat
Pro
 
enzotcat's Avatar
 
Join Date: Mar 2016
Posts: 711
Received 384 Likes on 200 Posts
Default

Originally Posted by DeSmO ManU
ok enzo, i'll try this evening. Thanks
You can also individually check the MIBRoot file and it's checksum - asellus and I have both posted the cksum for our mods and MIB software versions somewhere above - so as long as you've got something that's the same there, given it's the only modified file in the filesystem, you should be OK. Also, as others have noted, it's a secondary filesystem, so even if you screw it up, as long as you still have your original filesystem image it's pretty trivial to flash it back. Make sure that you copy flashlock, flashunlock and "flash.it" (without the period - rennlist censorship) and dd to your SD card beforehand. When the filesystem is flashed sometimes things become unmounted or invisible, so it's useful to have those utilities on the SD card so that you can still execute them. Also note the reboot command I posted in some post earlier; I needed this in order for things to properly take effect.
Old 03-16-2021, 08:16 PM
  #338  
DeSmO ManU
AutoX
 
DeSmO ManU's Avatar
 
Join Date: Mar 2021
Posts: 11
Likes: 0
Received 0 Likes on 0 Posts
Default

Originally Posted by enzotcat
You can also individually check the MIBRoot file and it's checksum - asellus and I have both posted the cksum for our mods and MIB software versions somewhere above - so as long as you've got something that's the same there, given it's the only modified file in the filesystem, you should be OK. Also, as others have noted, it's a secondary filesystem, so even if you screw it up, as long as you still have your original filesystem image it's pretty trivial to flash it back. Make sure that you copy flashlock, flashunlock and "flash.it" (without the period - rennlist censorship) and dd to your SD card beforehand. When the filesystem is flashed sometimes things become unmounted or invisible, so it's useful to have those utilities on the SD card so that you can still execute them. Also note the reboot command I posted in some post earlier; I needed this in order for things to properly take effect.
Hi, for testing repack with mkxfs an mkifs_attribute.txt i did this test:
I started with file: myIfsRootStage2Original.ifs (15.992.112 Byte)
I unpacked it with dumpIfs_helper generating ./original/ifs_extracted dir;
I repacked ifs_extracted dir with mkxfs using mkifs_attributes.txt generating myIfsRootStage2Original.repack.ifs (15.991.416 Byte), wich is different but i expected it for attribute list;
I unpacked again myIfsRootStage2Original.repack.ifs generating ./repack/ifs_extracted;
The structure of both ifs_extracted dire are identical but doing a "diff -r ./original/ifs_extracted dir/ ./repack/ifs_extracted" files are all different.

Looking ./original/ifslinks.txt an ./repack/ifslinks.txt i notice this difference:
First file contains:
bytes-> -> bytes
usr/bin/flashunlock -> /usr/bin/flashlock
lib/librdshbfpga.so.1.0.0 -> /lib/librdshbfpga.so
lib/SPC_configuration.so -> libSPC_configuration.so
lib/AudioConfig_ARM.so -> libAudioConfig_ARM.so
lib/AudioConfig_DSP.so -> libAudioConfig_DSP.so
opt/sys/lib/liba2itodspipc.so -> liba2itodspipc.so.1
lib/libi2c-inic-master.so -> libi2c-inic-master.so.1.0
lib/libSysMoCCAFrameworkSharedSo.so -> libSysMoCCAFrameworkSharedSo.so.6

instead the second contains:
bytes-> -> bytes
lib/liba2itodspipc.so -> /lib/liba2itodspipc.so.1
lib/AudioConfig_DSP.so -> /lib/libAudioConfig_DSP.so
lib/libSysMoCCAFrameworkSharedSo.so -> /lib/libSysMoCCAFrameworkSharedSo.so.6
lib/librdshbfpga.so.1.0.0 -> /lib/librdshbfpga.so
usr/bin/libi2c-inic-master.so -> /lib/libi2c-inic-master.so.1.0
usr/bin/flashunlock -> /usr/bin/flashlock
lib/AudioConfig_DSP.so -> /lib/libAudioConfig_DSP.so
lib/AudioConfig_ARM.so -> /lib/libAudioConfig_ARM.so
lib/SPC_configuration.so -> /lib/libSPC_configuration.so

That are so very different...

mkifs_attribute.txt contains this symlinks:
[type=link] /lib/SPC_configuration.so=/lib/libSPC_configuration.so
[type=link] /lib/AudioConfig_ARM.so=/lib/libAudioConfig_ARM.so
[type=link] /lib/AudioConfig_DSP.so=/lib/libAudioConfig_DSP.so
[type=link] /usr/bin/flashunlock=/usr/bin/flashlock
[type=link] /usr/bin/libi2c-inic-master.so=/lib/libi2c-inic-master.so.1.0
[type=link] /lib/librdshbfpga.so.1.0.0=/lib/librdshbfpga.so
[type=link] /lib/libSysMoCCAFrameworkSharedSo.so=/lib/libSysMoCCAFrameworkSharedSo.so.6
[type=link] /lib/AudioConfig_DSP.so=/lib/libAudioConfig_DSP.so
[type=link] /lib/liba2itodspipc.so=/lib/liba2itodspipc.so.1

Could these differences be attributable to mkifs_attribute.txt?
I don't explain however the difference of all the files inside ifs_extracted...

I specify that I have not changed even a file, all the files are like the originals. I don't think that by flashing this image on mmi it can work, even if the content is identical to the original one.
Does anyone have any idea what i did wrong? i try to change attribute list?

Ps. i'have already copied all necessary file

Very Thanks

EDIT

I have edit mkifs_attribute by changing mkifs_attribute.txt and now symlinks are the same. However file in /original/ifs_extracted dir/ and ./repack/ifs_extracted are all different.
However there must still be some attributes to change that impact all files.

Ps.
i am preparing special custom firmware for Audi TT.

Last edited by DeSmO ManU; 03-16-2021 at 09:20 PM.
Old 03-16-2021, 10:58 PM
  #339  
enzotcat
Pro
 
enzotcat's Avatar
 
Join Date: Mar 2016
Posts: 711
Received 384 Likes on 200 Posts
Default

Maybe I’m missing something here, but I don’t see that there’s any substantive difference between the 1st and the 2nd other than the ordering of the file links. Those are just directory entries that are symbolic links from a file in one location to another location; most often to simplify paths and things. Very common in *nix (Linux, QNX, Unix, BSD-based systems, etc.).

As to doing it for an Audi TT - I have zero experience there; this is about the Porsche MIB2. Granted, the Audi MIB is the same (as we even see when we log into the MIB on the Porsche), but there may be some subtle differences, so be aware of that. Now that all said, what you describe above doesn’t sound like it is actually different. If, however, you are not familiar with symlinks and directory structures, and don’t understand exactly what it is you’re doing, I’d be cautious if I were you.
Old 03-17-2021, 07:23 PM
  #340  
Seth K
Intermediate
 
Seth K's Avatar
 
Join Date: Mar 2021
Location: Boynton Beach, Florida
Posts: 47
Received 9 Likes on 7 Posts
Default

UPDATE.. ANDROID AUTO INSTALLED. THANK YOU TO THE USERS HERE!.
So I'm happy to say that I have Android auto installed thanks to help from this forum and a couple of very helpful users here. No, I didn't program it myself and just watching it happen right in front of my eyes was even confusing. lol. Android Auto is in the Pcm 4 Radio that you'd get in a Porsche Carrera 991.2 which is what I have and It just needs to be (carefully) switched on. Doing that myself was never going to happen and If you've seen any of the above "code speak" you can see it's no easy task. I was just about to employ Unichip who comes highly recommended on this thread and I fully believe Gary would have gotten it done no problem but I would have had to wait for the DHL and my cost would have been between $300 and $400. A friendly user on here. I wont name names but you know who you are directed me to simaservis1108 Facebook messenger (answers pretty quick) @serviskoya . This person was able to do mine in 20 minutes the next day after a $15 overnight purchase from Amazon. It works perfectly. The best part other then simaservis1108 appears to know exactly what he's doing is that he's charging far less to do it than the other guys. A HUGE thank you to simaservis1108 and If anyone needs a full start to finish SOLUTION for this, I'd recommend simaservis1108 all the way.

Yup. Android Auto in a 2017 Carrera GTS
The following users liked this post:
HB PCH 911 (07-12-2024)
Old 03-17-2021, 07:51 PM
  #341  
Westcoast
RL Community Team
Rennlist Member
 
Westcoast's Avatar
 
Join Date: Dec 2019
Location: Victoria, BC, Canada
Posts: 9,138
Received 4,659 Likes on 2,712 Posts
Default

Originally Posted by Seth K
UPDATE.. ANDROID AUTO INSTALLED. THANK YOU TO THE USERS HERE!.
So I'm happy to say that I have Android auto installed thanks to help from this forum and a couple of very helpful users here. No, I didn't program it myself and just watching it happen right in front of my eyes was even confusing. lol. Android Auto is in the Pcm 4 Radio that you'd get in a Porsche Carrera 991.2 which is what I have and It just needs to be (carefully) switched on. Doing that myself was never going to happen and If you've seen any of the above "code speak" you can see it's no easy task. I was just about to employ Unichip who comes highly recommended on this thread and I fully believe Gary would have gotten it done no problem but I would have had to wait for the DHL and my cost would have been between $300 and $400. A friendly user on here. I wont name names but you know who you are directed me to simaservis1108 Facebook messenger (answers pretty quick) @serviskoya . This person was able to do mine in 20 minutes the next day after a $15 overnight purchase from Amazon. It works perfectly. The best part other then simaservis1108 appears to know exactly what he's doing is that he's charging far less to do it than the other guys. A HUGE thank you to simaservis1108 and If anyone needs a full start to finish SOLUTION for this, I'd recommend simaservis1108 all the way.

Yup. Android Auto in a 2017 Carrera GTS
Awesome to here about your good experiences with simaservis1108 and successful outcome!

I assume the purchase on Amazon was for a Ethernet/USB dongle, can you provide the exact link?

Cheers!
Old 03-17-2021, 08:40 PM
  #342  
Seth K
Intermediate
 
Seth K's Avatar
 
Join Date: Mar 2021
Location: Boynton Beach, Florida
Posts: 47
Received 9 Likes on 7 Posts
Default

Originally Posted by Westcoast
Awesome to here about your good experiences with simaservis1108 and successful outcome!

I assume the purchase on Amazon was for a Ethernet/USB dongle, can you provide the exact link?
Here you go!
Cheers!
Amazon Amazon
Old 03-17-2021, 09:25 PM
  #343  
DeSmO ManU
AutoX
 
DeSmO ManU's Avatar
 
Join Date: Mar 2021
Posts: 11
Likes: 0
Received 0 Likes on 0 Posts
Default

Originally Posted by enzotcat
Maybe I’m missing something here, but I don’t see that there’s any substantive difference between the 1st and the 2nd other than the ordering of the file links. Those are just directory entries that are symbolic links from a file in one location to another location; most often to simplify paths and things. Very common in *nix (Linux, QNX, Unix, BSD-based systems, etc.).

As to doing it for an Audi TT - I have zero experience there; this is about the Porsche MIB2. Granted, the Audi MIB is the same (as we even see when we log into the MIB on the Porsche), but there may be some subtle differences, so be aware of that. Now that all said, what you describe above doesn’t sound like it is actually different. If, however, you are not familiar with symlinks and directory structures, and don’t understand exactly what it is you’re doing, I’d be cautious if I were you.
Sorry friend, but the symbolyc lync from unpacked orginal version and my repacked original version are different.
Look, I order them so it is more evident. Those with 1) refer to originalIfs, those with 2 refer to the repackaged IFs:

1)bytes-> -> bytes
2)bytes-> -> bytes

1)usr/bin/flashunlock -> /usr/bin/flashlock
2)usr/bin/flashunlock -> /usr/bin/flashlock


1)lib/librdshbfpga.so.1.0.0 -> /lib/librdshbfpga.so
2)lib/librdshbfpga.so.1.0.0 -> /lib/librdshbfpga.so


1)lib/SPC_configuration.so -> libSPC_configuration.so
2)lib/SPC_configuration.so -> /lib/libSPC_configuration.so


1)lib/AudioConfig_ARM.so -> libAudioConfig_ARM.so
2)lib/AudioConfig_ARM.so -> /lib/libAudioConfig_ARM.so

1)lib/AudioConfig_DSP.so -> libAudioConfig_DSP.so
2)lib/AudioConfig_DSP.so -> /lib/libAudioConfig_DSP.so

1)opt/sys/lib/liba2itodspipc.so -> liba2itodspipc.so.1
2)lib/liba2itodspipc.so -> /lib/liba2itodspipc.so.1

1)lib/libi2c-inic-master.so -> libi2c-inic-master.so.1.0
2)usr/bin/libi2c-inic-master.so -> /lib/libi2c-inic-master.so.1.0

1)lib/libSysMoCCAFrameworkSharedSo.so -> libSysMoCCAFrameworkSharedSo.so.6
2)lib/libSysMoCCAFrameworkSharedSo.so -> /lib/libSysMoCCAFrameworkSharedSo.so.6cI also know that the mib2 is very similar to the porsche system so i'm following this thread.

Except that at the moment I'm stuck and I don't know with which attributes to recompact my ifs_extracted, the links I solved them, but all the files from repacked ifs are different to me even if I have not practically touched them.
If someone else would be able to help me I would be very grateful.

Last edited by DeSmO ManU; 03-17-2021 at 09:26 PM.
Old 03-18-2021, 12:19 PM
  #344  
Westcoast
RL Community Team
Rennlist Member
 
Westcoast's Avatar
 
Join Date: Dec 2019
Location: Victoria, BC, Canada
Posts: 9,138
Received 4,659 Likes on 2,712 Posts
Default

Thanks for this, I have a couple already that I would like to try (172.16.250.248 ? ) but I can get that one from Amazon Canada...

I am waiting for some other bits to arrive so I can proceed and have simaservis1108 do his thing!
The following users liked this post:
Seth K (03-19-2021)
Old 03-18-2021, 01:10 PM
  #345  
enzotcat
Pro
 
enzotcat's Avatar
 
Join Date: Mar 2016
Posts: 711
Received 384 Likes on 200 Posts
Default

Originally Posted by DeSmO ManU
Sorry friend, but the symbolyc lync from unpacked orginal version and my repacked original version are different.
Look, I order them so it is more evident. Those with 1) refer to originalIfs, those with 2 refer to the repackaged IFs:

1)bytes-> -> bytes
2)bytes-> -> bytes

1)usr/bin/flashunlock -> /usr/bin/flashlock
2)usr/bin/flashunlock -> /usr/bin/flashlock


1)lib/librdshbfpga.so.1.0.0 -> /lib/librdshbfpga.so
2)lib/librdshbfpga.so.1.0.0 -> /lib/librdshbfpga.so


1)lib/SPC_configuration.so -> libSPC_configuration.so
2)lib/SPC_configuration.so -> /lib/libSPC_configuration.so


1)lib/AudioConfig_ARM.so -> libAudioConfig_ARM.so
2)lib/AudioConfig_ARM.so -> /lib/libAudioConfig_ARM.so

1)lib/AudioConfig_DSP.so -> libAudioConfig_DSP.so
2)lib/AudioConfig_DSP.so -> /lib/libAudioConfig_DSP.so

1)opt/sys/lib/liba2itodspipc.so -> liba2itodspipc.so.1
2)lib/liba2itodspipc.so -> /lib/liba2itodspipc.so.1

1)lib/libi2c-inic-master.so -> libi2c-inic-master.so.1.0
2)usr/bin/libi2c-inic-master.so -> /lib/libi2c-inic-master.so.1.0

1)lib/libSysMoCCAFrameworkSharedSo.so -> libSysMoCCAFrameworkSharedSo.so.6
2)lib/libSysMoCCAFrameworkSharedSo.so -> /lib/libSysMoCCAFrameworkSharedSo.so.6cI also know that the mib2 is very similar to the porsche system so i'm following this thread.

Except that at the moment I'm stuck and I don't know with which attributes to recompact my ifs_extracted, the links I solved them, but all the files from repacked ifs are different to me even if I have not practically touched them.
If someone else would be able to help me I would be very grateful.
Ah. What you're comparing is the contents of the ifslinks.txt file that dumpifs generates as part of its work. I'm not sure I'd be concerned about that - it's a text file, and isn't something that is flashed to the device; rather it's just reporting symlinks, and if the source/target looks slightly different but the net effect is the same, that's NBD. What you're flashing to the device is the actual filesystem that mkxfs produces, and which dumpifs extracts.

The command I used for creating the patched IFS is
./mkxfs -t ifs -nn -o ./ ./mkifs_attributes.txt ./ifs_extracted ./patched_ifs.ifs
So what you should be comparing is the *contents* of ifs_extracted against an extracted patched_ifs.ifs and *not* the contents of the ifslinks.txt file. You can achieve this with a shell script. Something like the following:
find ifs_extracted -type f | while read a; do b=`echo $a | sed -e 's/ifs_extracted/patched_ifs/'`; cksuma=`cksum $a | awk '{print $1}'`; cksumb=`cksum $b | awk '{print $1}'`; if [ $cksuma != $cksumb ]; then echo $a \($cksuma)\) \<--\> $b \($cksumb\)': NOT OK'; fi; done
If you run this against your ifs_extracted and patched_ifs, you should only see a single file difference this reports as "NOT OK", which is the MIBRoot file. Something like this:
ifs_extracted/usr/apps/MIBRoot (1352948790) <--> ifs_extracted_orig/usr/apps/MIBRoot (1702713611): NOT OK
If that is the case, you have a perfectly valid patched IFS image.

My mkifs_attributes.txt file was the same as yours and as you can see, all it is is a specification of what symbolic links to create:
#Porsche PCM4/MIB2 ifs-root (stage 2) attributes file
#Before packing FS: EXPORT QNX_TARGET="/"
#Command to pack: mkxfs -t ifs -nn -o ./ -r / attributes.txt /unpacked_fs /packed_fs.ifs

[-followlink] #Do not resolve links
[compress=2] #LZO Compression
[-bigendian] #Little Endian (ARMLE)
[-autolink] #Do not auto link shared objects
[perms=777] #chmod 777
[uid=0 gid=0] #chown root:root

#You can add a script to be executed after mount here, one line only
#[+script] .script = {
#touch /dev/shmem/AudioFadedIn; touch /dev/shmem/production_mode
#}

#Symlinks. Add lines here to match your dumpifs symlinks
#[type=link] dest_file=source_file
[type=link] /lib/SPC_configuration.so=/lib/libSPC_configuration.so
[type=link] /lib/AudioConfig_ARM.so=/lib/libAudioConfig_ARM.so
[type=link] /lib/AudioConfig_DSP.so=/lib/libAudioConfig_DSP.so
[type=link] /usr/bin/flashunlock=/usr/bin/flashlock
[type=link] /usr/bin/libi2c-inic-master.so=/lib/libi2c-inic-master.so.1.0
[type=link] /lib/librdshbfpga.so.1.0.0=/lib/librdshbfpga.so
[type=link] /lib/libSysMoCCAFrameworkSharedSo.so=/lib/libSysMoCCAFrameworkSharedSo.so.6
[type=link] /lib/AudioConfig_DSP.so=/lib/libAudioConfig_DSP.so
[type=link] /lib/liba2itodspipc.so=/lib/liba2itodspipc.so.1


Quick Reply: Porsche PCM Upgrade/Hack for Android Auto? Is this real?



All times are GMT -3. The time now is 11:22 AM.