Notices
991 2012-2019
Sponsored by:
Sponsored by:

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

Thread Tools
 
Search this Thread
 
Old 06-21-2021 | 12:49 PM
  #391  
Westcoast's Avatar
Westcoast
RL Community Team
Rennlist Member
 
Joined: Dec 2019
Posts: 9,325
Likes: 4,825
From: Victoria, BC, Canada
Default

Originally Posted by simaservis1108
I can generate also PCM3.1 codes.
Send me what you want in PM.
Interesting, are you saying that you could enable Android Auto on PCM 3.1?
Old 06-22-2021 | 04:18 AM
  #392  
rjstolk's Avatar
rjstolk
Track Day
 
Joined: Jun 2021
Posts: 16
Likes: 0
Default

Originally Posted by simaservis1108
I can generate also PCM3.1 codes.
Send me what you want in PM.
did you get my PM ?
Old 06-24-2021 | 02:51 AM
  #393  
rainer's Avatar
rainer
Instructor
 
Joined: Dec 2001
Posts: 205
Likes: 43
From: Germany
Default

there is no AA enabling possible with codes in PCM3.1.

there‘s some other functions to retrofit such as logbook, bluetooth, nav, online services, voice control etc in case they did not come from the factory.

you‘ll need a Piwis to enter them.

the only way to AA in PCM3.1 is by an additional HW ..

Originally Posted by Westcoast
Interesting, are you saying that you could enable Android Auto on PCM 3.1?
Old 06-24-2021 | 11:50 AM
  #394  
Westcoast's Avatar
Westcoast
RL Community Team
Rennlist Member
 
Joined: Dec 2019
Posts: 9,325
Likes: 4,825
From: Victoria, BC, Canada
Default

Originally Posted by rainer
there is no AA enabling possible with codes in PCM3.1.

there‘s some other functions to retrofit such as logbook, bluetooth, nav, online services, voice control etc in case they did not come from the factory.

you‘ll need a Piwis to enter them.

the only way to AA in PCM3.1 is by an additional HW ..
Thanks for the details, I didn't think so but it is nice to know for sure, my car and truck have it but though that it would be handy in the Macan.
Old 07-01-2021 | 09:33 PM
  #395  
richtj99's Avatar
richtj99
AutoX
 
Joined: Jun 2021
Posts: 12
Likes: 1
Default

Originally Posted by simaservis1108
I can generate also PCM3.1 codes.
Send me what you want in PM.
Wanted to give a thumbs up to Sim - outstanding service & patience - it was super easy & I highly recommend - enjoying AA right now!
Old 07-02-2021 | 07:01 AM
  #396  
rjstolk's Avatar
rjstolk
Track Day
 
Joined: Jun 2021
Posts: 16
Likes: 0
Default

Originally Posted by Westcoast
Interesting, are you saying that you could enable Android Auto on PCM 3.1?
@simaservis1108 did you get my PM ?

Old 07-02-2021 | 09:22 AM
  #397  
Porsche_nuts's Avatar
Porsche_nuts
Nordschleife Master
 
Joined: Jan 2010
Posts: 5,563
Likes: 1,262
From: New York
Default

Originally Posted by richtj99
Wanted to give a thumbs up to Sim - outstanding service & patience - it was super easy & I highly recommend - enjoying AA right now!
getting confused, are you saying that you got AA on PCM3.1 through Sim with only software coding and no new hardware?
Old 07-02-2021 | 09:35 AM
  #398  
B Russ's Avatar
B Russ
Rennlist Member
 
Joined: Aug 2017
Posts: 2,619
Likes: 911
From: 91North/75South
Default

^^^^^^^^^
Old 08-03-2021 | 01:26 AM
  #399  
SpeedLives's Avatar
SpeedLives
Cruisin'
 
Joined: Aug 2019
Posts: 9
Likes: 1
Default

Originally Posted by chris2
Enabling Android Auto on PCM4

Step 1. Required Components
  1. ⁃ UART -> USB Adapter (
    Amazon Amazon
    )
  2. ⁃ PuTTY or similar terminal app
  3. ⁃ IDA Pro ($$$$$), Ghidra (free), or similar ARM V7-A compatible disassembler
  4. ⁃ SD Card
  5. ⁃ Linux computer to unpack + repack filesystem
  6. ⁃ dumpifs and mkxfs from QNX SDP / OpenQNX. Build these from source on your linux machine to ensure proper compatibility. (available at https://github.com/ibreakifix/PorschePCMStuff pre-built for Ubuntu 19.04 x64)
  7. ⁃ mkxfs attributes file from https://github.com/ibreakifix/PorschePCMStuff

Step 2. Connect to PCM4 via UART
  1. ⁃ Connect GND to GND (PCM4 chassis works), RX on adapter to J5_TX on PCM4, TX to J5_RX on PCM4; pins B3 and B9.
  2. ⁃ To connect, you can remove the connector block from the quad-lock, then route your TX/RX/GND pigtails through the opening.
  3. ⁃ Open PuTTY, launch a serial connection to your COM port (see devmgmt.msc) - 115200, 8, N, 1
  4. ⁃ Login with root / oaIQOqkW

Step 3. Download Root-IFS
  1. ⁃ Issue the "stfu" command to stop verbose logging to the terminal.
  2. ⁃ Insert SD card into PCM4, left slot
  3. ⁃ Issue the following command to download your filesystem: "dd if=/dev/fs0 of=/net/mmx/fs/sda0/PCM4_NOR.bin".
  4. ⁃ Issue the following command to copy your existing FEC file: "cp /mnt/efs-persist/FecContainer.fec /net/mmx/fs/sda0/orig_FecContainer.fec"
  5. ⁃ Remove SD card and insert into your PC.
  6. ⁃ You can also pull this image from an update SD card at ./RCC/ifs-root/*/default/ifs-root.ifs **Note: The desired image is the second ifs contained within this update file, use ctrl+f and find the second instance of file magic "EB 7E FF", your IFS image begins at this location and ends at the end of the file. If you do this, you can skip steps 4.1 to 4.3**

Step 4. Unpack Root-IFS (if using downloaded image from PCM4)
  1. ⁃ Open downloaded RCC NOR image (PCM4_NOR.bin) in your favorite hex editor
  2. ⁃ Jump to offset 0xBA0000, ensure IFS magic of "EB 7E FF" is present. If not, issue "flashlock" on PCM4 shell to obtain correct offset, target IFS is ~15.6mb. See screenshot.
  3. ⁃ Select from 0xBA0000 to the end of the IFS, which is indicated by a block of padding "FF FF FF FF FF". In my case, this data was 15,639,040 bytes. See screenshot.
  4. ⁃ Cut and paste this block of data into a new file, name it ifsroot_stage2_orig.ifs
  5. ⁃ Move to a linux computer with dumpifs binary (available from QNX SDP)
  6. ⁃ Copy ifsroot_stage2_orig.ifs to some folder, open your terminal and CD to that folder.
  7. ⁃ Copy dumpifs_helper.sh to this same folder. Chmod it to 755
  8. ⁃ Issue "./dumpifs_helper.sh ifsroot_stage2_orig.ifs" to extract the IFS, your files will be in ./ifs_extracted. Ensure files are present as shown in the terminal output
  9. ⁃ Place a copy of /usr/apps/MIBRoot so it can be patched with IDA, Ghidra or similar

Step 5. Patch out the FEC checks.
Step 6. Rebuild IFS image
  1. ⁃ Place your patched MIBRoot into your extracted IFS location, overwriting the old MIBRoot. It should be located at ./ifs_extracted/apps/bin/
  2. ⁃ Open terminal. Issue command: EXPORT QNX_TARGET="/"
  3. - cd to whatever the parent directory is to the ifs_extracted folder we made earlier
  4. ⁃ Download mkifs_attributes.txt from github repo. Place it in your current working directory
  5. ⁃ Build the new IFS with mkxfs, issue command "mkxfs -t ifs -nn -o ./ -r / ./mkifs_attributes.txt ./ifs_extracted ./patched_ifs.ifs"
  6. ⁃ Place patched_ifs.ifs back onto your SD card

Step 7. Create your new FEC file
  1. ⁃ Open the FEC container (orig_FecContainer.fec) from earlier in your favorite hex editor
  2. ⁃ Copy VIN from file. This should match your car's VIN, unless component protection is enabled, then it would be the VIN from the donor car
  3. ⁃ Copy down VCRN (hex values of bytes 16-20 in file). Write it down as shown in the blue highlighted text in the screenshot. The VCRN may be obtained through measurement channels on PIWIS if you only have a 4 byte empty FEC file.
  4. ⁃ Make a comma separated list of your existing FECs, from offset 0x43 until the checksum begins. Use hex values, add commas at every 4 bytes (8 digits), for example, from screenshot it would be 00030000,00030001,(...),06310099
  5. ⁃ Add one last FEC to the end of that list, which will enable Android Auto: 00060900
  6. ⁃ You can also add other FECs to your PCM4 at this time, see below. Additional coding / adaptations may be required.
  7. ⁃ Download MIB2_FEC_Generator.sh from Github, chmod it to 755
  8. ⁃ Issue command to generate FEC Container "MIB2_FEC_Generator.sh -f {YOUR_FEC_LIST_CSV} -n {YOUR_VCRN} -v {YOUR_VIN} -d {Output_Directory}"
  9. ⁃ Output file is FecContainer.fec, copy this new file to your SD card

Step 8. Load new files to head unit
  1. ⁃ Insert SD card into PCM4, left slot
  2. ⁃ Login with root / oaIQOqkW
  3. ⁃ Issue the "stfu" command to stop verbose logging to the terminal.
  4. ⁃ Remount efs-persist as r/w with command "mount -uw /mnt/efs-persist/"
  5. ⁃ Copy your new FECs with command "mv /mnt/efs-persist/FEC/FecContainer.fec /mnt/efs-persist/FEC/FecContainer.fec.orig; cp /net/mmx/fs/sda0/FecContainer.fec /mnt/efs-persist/FEC/FecContainer.fec"
  6. ⁃ Issue commands to flash your stage2 ifs-root... THIS CAN BRICK YOUR HEAD UNIT, SO BE CAREFUL! Important note: "flash.it" is actually one word, but RL censors it, so remove the period otherwise the command won't work.
  7. ⁃ flashunlock
  8. ⁃ /usr/bin/flash.it -v -x -d -a0x00BA0000 -f/net/mmx/fs/sda0/patched_ifs.ifs
  9. ⁃ flashlock
  10. ⁃ Reboot unit by holding down power button for 30s.
  11. ⁃ Cross fingers and hope your patch worked

Step 9. Adaptations
  1. With PIWIS II / PIWIS III, or VCDS
  2. ⁃ If using PIWIS II, place it into engineering mode via Settings -> Diagnostics Configuration -> 911, 918s, etc... -> Mode -> Select "E". Save + Exit
  3. ⁃ In PIWIS, Open Diagnostics -> 911 -> 991, scan car (F12) to obtain installed modules, select head unit (Named MIB2...). In VCDS open module 5F
  4. ⁃ Select "Manuelle Codierung ohne MCR-Regeln" -> Vehicle_configuration
  5. ⁃ Set Bitfield (3) Google_GAL -> "on"
  6. ⁃ Save coding, wait for system to reboot
  7. Alternate method coding through PCM4 shell:
  8. export LD_LIBRARY_PATH=/mnt/app/root/lib-target:/eso/lib:/mnt/app/usr/lib:/mnt/app/armle/lib:/mnt/app/armle/lib/dll:/mnt/app/armle/usr/lib
  9. export IPL_CONFIG_DIR=/etc/eso/production
  10. on -f mmx /eso/bin/apps/pc b:0:3221356628:7.7 1

Step 10. Done!
  1. ⁃ Plug in your phone. You should now have Android Auto

It is important to note that this hack will be overwritten if you ever decide to perform a software update on your PCM4. You'll then have to re-complete these steps with your new version of software. Given that there are no PCM4 updates available, this will probably be a non-issue.

What if I flash a bad ifs image to my head unit?
⁃ If this happens, MIBRoot will fail to start and you will not be able to interface with PCM4. it will appear to boot from the LCD panel, but touch and audio will not work. However, it will still boot into QNX for recovery since we are only flashing the stage2 image.
⁃ To recover, log into QNX with root / oaIQOqkW
⁃ Copy your original IFS root file (ifsroot_stage2_orig.ifs) to your SD card and install to left slot of PCM4.
⁃ Issue commands:
⁃ flashunlock
⁃ flash.it -v -x -d -a0x00BA0000 -f/net/mmx/fs/sda0/ifsroot_stage2_orig.ifs
⁃ flashlock
⁃ Note: If stage2 ifs flashing fails, flash.it, flashlock and flashunlock may no longer be present on your system. Copy them to your SD card from your extracted ifs directory and run them from the SD card, for example /net/mmx/fs/sda0/flashunlock.

What if my firmware flash works but I still don't have Android Auto?
⁃ Your VIN, VCRN, or FECs may need to be corrected, review step 7. Cars without CarPlay may need to add FECs 00030000, or 00060700 and 00060800
⁃ If your FECs are being removed from FecContainer.fec and being placed into IllegalFecContainer.fec, then your FECs are failing the signature check. Your patch is wrong and you need to review step 5 again.
⁃ If you did not have CarPlay or Android Auto previously, you may also need to code USB media player functionality within PIWIS II.

What if I want to return to stock?
⁃ Connect to PCM4 via UART
⁃ Log into QNX with root / oaIQOqkW
⁃ Copy your original IFS root file (ifsroot_stage2_orig.ifs) to your SD card and install to left slot of PCM4.
⁃ Issue commands:
⁃ flashunlock
⁃ flash.it -v -x -d -a0x00BA0000 -f/net/mmx/fs/sda0/ifsroot_stage2_orig.ifs
⁃ flashlock
⁃ mount -uw /mnt/efs-persist
⁃ rm /mnt/efs-persist/FEC/FecContainer.fec
⁃ mv /mnt/efs-persist/FEC/FecContainer.fec.orig /mnt/efs-persist/FEC/FecContainer.fec
⁃ Done. Reboot by holding power button for 30s


Code:
#dumpifs_helper.sh
IMAGE=$1
TMPDIR=./
EXTRDIR=./ifs_extracted
mkdir $EXTRDIR
echo "Dumping content of $IMAGE... to $EXTRDIR"
dumpifs -z $IMAGE |awk '{print $3}' >$TMPDIR/ifscont.txt
dumpifs -z $IMAGE |grep "\->" |awk '{print $3" -> "$5}' >$TMPDIR/ifslinks.txt
for i in `cat $TMPDIR/ifscont.txt`; do dirname $i; done |sort -u >$TMPDIR/dirlist.txt
for i in `cat $TMPDIR/dirlist.txt`; do mkdir -p $EXTRDIR/$i; done
cd $EXTRDIR
dumpifs -zx $IMAGE
cd ../
echo "done !"

Code:
#Feature Enablement Codes
#00030000 # AMI (Enables USB)
#00030001 # Gracenote
#00040100 # Navigation
#00050000 # Bluetooth
#00060100 # Vehicle Data Interface
#00060200 # Infotainment Control?
#00060300 # MirrorLink
#00060400 # Performance Monitor (Sport HMI)
#00060500 # Sport Chrono
#00060600 # Logbook
#00060700 # Mobile Online Dienste (Online Services)
#00060800 # CarPlay
#00060900 # Android Auto
#00070100 # SDS
#00070200 # SDS for Nav
#06310099 #PCM4 Navi
Is this still the best way to get Android Auto only(not the entire OS) on a '17 Macan?
Old 08-03-2021 | 09:40 AM
  #400  
B Russ's Avatar
B Russ
Rennlist Member
 
Joined: Aug 2017
Posts: 2,619
Likes: 911
From: 91North/75South
Default

OMG, Not even trying that. Havnt seen that much code since DTV H Bins
Old 08-03-2021 | 01:20 PM
  #401  
asellus's Avatar
asellus
RL Community Team
Rennlist Member
 
Joined: Dec 2013
Posts: 6,023
Likes: 2,144
From: Minnesota
Default

Originally Posted by SpeedLives
Is this still the best way to get Android Auto only(not the entire OS) on a '17 Macan?
The operating system is not changing, and Android Auto is not an operating system. The entire procedure just disables key checking (allowing you to effectively steal features) and ticks the checkbox for Android Auto. AA isn't being uploaded or compiled or anything, it's already on the unit. You'd just be enabling it. This is something that, technically, a dealership should be able to do, but they won't.

That said, I can only confirm the procedure you quoted in its entirety is functional on the PCM4 within the 991.2. I would expect the Macan's PCM root password to be different. There are lists of password by car, by version, if you google. The method of entry might also be different -- I personally use the wifi method on the 991.2, some use a USB -> Ethernet dongle, and others use the UART method. I believe most of the vendors that do this remotely for you for $300 or whatever amount push the ethernet dongle method.

Many members here have paid @simaservis1108 to do this for them and have been happy with the results.
Old 08-24-2021 | 08:18 AM
  #402  
sparticle's Avatar
sparticle
Track Day
 
Joined: Apr 2020
Posts: 16
Likes: 4
Talking Android Auto Activation via Simaservis1108

Would like to give a massive shout out to @simaservis1108 who did an awesome job in 15 minutes. Android Auto fully activated in my 991.2 C4S PDK Cab.

Simple painless process from a remote expert. Best money ever spent on a Porsche accessory. Essentially factory activation of the AA feature in my PCM 4 system. Live Whatsapp chat whilst the activation was happening.

Brilliant and I cannot recommend Sima highly enough. Just PM @simaservis1108 here and he can advise.

Cheers
Spart
The following users liked this post:
thesaintusa (09-18-2021)
Old 09-18-2021 | 03:40 PM
  #403  
thesaintusa's Avatar
thesaintusa
Rennlist Member
 
Joined: Apr 2016
Posts: 1,300
Likes: 378
Default

Originally Posted by sparticle
Would like to give a massive shout out to @simaservis1108 who did an awesome job in 15 minutes. Android Auto fully activated in my 991.2 C4S PDK Cab.

Simple painless process from a remote expert. Best money ever spent on a Porsche accessory. Essentially factory activation of the AA feature in my PCM 4 system. Live Whatsapp chat whilst the activation was happening.

Brilliant and I cannot recommend Sima highly enough. Just PM @simaservis1108 here and he can advise.

Cheers
Spart
Major props to Simaservis1108.

Just had Android Auto activated on my 991.2 GTS.

Zero concerns other than me rounding up the parts needed (Ethernet-USB adapters and a SD card adapter).

All said and told, spent 15 minutes.

Works as advertised.

Would recommend his servives to people wanting AA on their 991.2. GREAT communication via Whatsapp during install.

My only observations from my fumbling.
1. Have the proper Ethernet-USB adapters. (I now have 4 adapters, I guess can always throw one into a few of my go bags).
2. Either have an SD card slot on your computer, or have an adapter. (I needed to get a USB-C to SD card adapter). Was amazed to realize I had to get an SD card as I have not used one in YEARS.

Like some have suggested, I used a 'burner' laptop.
Old 09-18-2021 | 08:24 PM
  #404  
B Russ's Avatar
B Russ
Rennlist Member
 
Joined: Aug 2017
Posts: 2,619
Likes: 911
From: 91North/75South
Default

Yes, Simaservis1108 is the Man.
Did my Panamera and will be doing my 17 991 in a few days.
Old 09-18-2021 | 08:56 PM
  #405  
asellus's Avatar
asellus
RL Community Team
Rennlist Member
 
Joined: Dec 2013
Posts: 6,023
Likes: 2,144
From: Minnesota
Default

out of curiosity, how much is he charging?


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



All times are GMT -3. The time now is 02:23 PM.