[VOLVO SCT] Volvo Sensus Connected Touch (car - navi - audio)

Search This thread

donaldta

Senior Member
Aug 12, 2013
1,328
461
I tried to pull and push an APK, no luck. Pulling worked but I couldn't push it back to /system/app. We need root rights for this apparently.

I'm wondering what the device is looking for. We have to find that out, maybe we can modify APK's so it does accept them. Any other ideas?

Have you installed any of the available apps from the Asteroid Market for the SCT? Because then you can try to pull a copy of the apk to your computer, uninstall it from the SCT ("adb uninstall" or using the touchscreen), and then try using "adb install" (instead of push) to see if it can at least be re-installed that way.

If that is possible then maybe we can use the "master key exploit" to inject Framaroot into a pre-existing apk from the Asteroid Market, like the way it is described in this bash script. Provided of course that it hasn't already been patched on the SCT (it hasn't been patched on the PAS with Firmware version 2.1.2).

Also, just a stretch... I know you tried, "su - root" from "adb shell" and it didn't work but try to see if "su - system" works. It probably won't but it doesn't hurt to try.

Also for patching the jar file or using the Lucky Patcher we need root.
Yes, that response was directed to jaanusj since root is available on the Asteroid Tablet.
 
Last edited:

johnnie_w

Senior Member
Aug 4, 2007
55
22
I was able to pull a package, and to inject Framaroot using the script. But when I tried to install it, it gave the following error:

Code:
D/PackageParser( 1377): Scanning package: /data/app/vmdl-1912454958.tmp
E/PackageParser( 1377): Package com.alephzain.framaroot has no certificates at entry res/layout/activity_frama.xml; ignoring!

Any pointers?

EDIT:

The packages coming from the Asteroid Market (Wikango is the only non-system app) are .ppk files. Looking at the logcat I saw they are decrypted, and extracted to /sdcard/.ppktemp. I was able to quickly copy that directory before it got removed. I looked at the content, and found a directory /META-INF/com/parrot containing a signature file. Maybe this is the key to get packages installed? Will try in a bit, my laptop ran out of juice :)
 
Last edited:

johnnie_w

Senior Member
Aug 4, 2007
55
22
Good news! I was able to install an APK file:

Code:
$ adb install ppktemp.apk
275 KB/s (20120357 bytes in 71.432s)
	pkg: /data/local/tmp/ppktemp.apk
Success
$

Now we need to inject Framaroot somehow in this package. I tried it, and this was the error I got:

Code:
unable to load PKCS7 object
15909:error:2006F078:BIO routines:BIO_read:uninitialized:/SourceCache/OpenSSL098/OpenSSL098-47.1/src/crypto/bio/bio_lib.c:208:
15909:error:0D06B08E:asn1 encoding routines:ASN1_D2I_READ_BIO:not enough data:/SourceCache/OpenSSL098/OpenSSL098-47.1/src/crypto/asn1/a_d2i_fp.c:175:
unable to load PKCS7 object
15914:error:2006F078:BIO routines:BIO_read:uninitialized:/SourceCache/OpenSSL098/OpenSSL098-47.1/src/crypto/bio/bio_lib.c:208:
15914:error:0D06B08E:asn1 encoding routines:ASN1_D2I_READ_BIO:not enough data:/SourceCache/OpenSSL098/OpenSSL098-47.1/src/crypto/asn1/a_d2i_fp.c:175:
Modified APK: evil---ppktemp.apk


---------- Post added at 06:52 PM ---------- Previous post was at 06:48 PM ----------

More good news: I was able to install the Framaroot APK! I just installed the APK with Framaroot injected, and it succeeded. Unfortunately it did crash immediately with the following message:

Code:
/ActivityManager( 1363): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.alephzain.framaroot/.FramaActivity } from pid 1661
D/ActivityMonitorAppDrawer( 1661): Setting idle mode false
D/AllAppsDrawer( 1661): Setting idle mode: false
I/ActivityManager( 1363): Start proc com.alephzain.framaroot for activity com.alephzain.framaroot/.FramaActivity: pid=2646 uid=10045 gids={1006}
W/dalvikvm( 2646): Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Lcom/alephzain/framaroot/FramaActivity;
W/dalvikvm( 2646): Class init failed in newInstance call (Lcom/alephzain/framaroot/FramaActivity;)
D/AndroidRuntime( 2646): Shutting down VM
W/dalvikvm( 2646): threadid=1: thread exiting with uncaught exception (group=0x40015560)
E/AndroidRuntime( 2646): FATAL EXCEPTION: main
E/AndroidRuntime( 2646): java.lang.ExceptionInInitializerError
E/AndroidRuntime( 2646): 	at java.lang.Class.newInstanceImpl(Native Method)
E/AndroidRuntime( 2646): 	at java.lang.Class.newInstance(Class.java:1409)
E/AndroidRuntime( 2646): 	at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
E/AndroidRuntime( 2646): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561)
E/AndroidRuntime( 2646): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1666)
E/AndroidRuntime( 2646): 	at android.app.ActivityThread.access$1500(ActivityThread.java:117)
E/AndroidRuntime( 2646): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
E/AndroidRuntime( 2646): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 2646): 	at android.os.Looper.loop(Looper.java:130)
E/AndroidRuntime( 2646): 	at android.app.ActivityThread.main(ActivityThread.java:3686)
E/AndroidRuntime( 2646): 	at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 2646): 	at java.lang.reflect.Method.invoke(Method.java:507)
E/AndroidRuntime( 2646): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
E/AndroidRuntime( 2646): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
E/AndroidRuntime( 2646): 	at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 2646): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load framalib: findLibrary returned null
E/AndroidRuntime( 2646): 	at java.lang.Runtime.loadLibrary(Runtime.java:429)
E/AndroidRuntime( 2646): 	at java.lang.System.loadLibrary(System.java:554)
E/AndroidRuntime( 2646): 	at com.alephzain.framaroot.FramaActivity.<clinit>(FramaActivity.java:88)
E/AndroidRuntime( 2646): 	... 15 more
V/ExceptionReport( 1363): report_5ffd7aeaf already exists
V/ExceptionReport( 1363): Aborting report creation
W/ActivityManager( 1363):   Force finishing activity com.alephzain.framaroot/.FramaActivity
W/ActivityManager( 1363):   Force finishing activity se.volvocars.acu/.appdrawer.AppDrawerActivity

My guess is that it tries to find the library in com.alephzain.framaroot, but due to the fact that it is injected in a different package, it can't find it. I will contact the Framaroot developer, maybe he has a solution. Exciting stuff!
 
Last edited:
  • Like
Reactions: getiem and gebla

donaldta

Senior Member
Aug 12, 2013
1,328
461
The packages coming from the Asteroid Market (Wikango is the only non-system app) are .ppk files.

Probably that's just Parrot renaming the Android PacKage (.apk) extension to identify its proprietary. Much like how an .apk file is really just a .zip file with structured folders and specific file locations within the archive. ;)

I am pretty sure to take advantage of the Master Key Exploit with Framaroot, the package should be a system package since we want the it to end up in /system/app anyways.

I was able to pull a package, and to inject Framaroot using the script. But when I tried to install it, it gave the following error:

Code:
D/PackageParser( 1377): Scanning package: /data/app/vmdl-1912454958.tmp
E/PackageParser( 1377): Package com.alephzain.framaroot has no certificates at entry res/layout/activity_frama.xml; ignoring!

Questions:
  • In the above test, did the Wikango application install without Framaroot or not at all?
  • If it was installed did you check if it is actually Wikango?
  • Was the Wikango application on the device prior?
  • Were you able to install an unaltered copy of the WIkango package through ADB?

Looking at the logcat I saw they are decrypted, and extracted to /sdcard/.ppktemp. I was able to quickly copy that directory before it got removed. I looked at the content, and found a directory /META-INF/com/parrot containing a signature file. Maybe this is the key to get packages installed? Will try in a bit, my laptop ran out of juice :)

Let me try an explain the situation (at least how I understand it). I apologize if you knew this already but I feel it is important that we are on the same page.

First of all, each package that contains a "META-INF" directory and has the following files; CERT.RSA, CERT.SF and MANIFEST.MF. These files are used to validate the contents of the package using cryptographic signatures. The "CERT.SF" and "MANIFEST.MF" enumerates the items in the package and associates it with a cryptographic signature. The CERT.RSA file is the public key file used to validate each signature; however, only the private key can create the signatures. This key pair ias the fundamental basis in which Android ensures the package was created the signee and untampered.

The master key exploit takes advantage of the idea that only one file is tested per signature. However, if there are duplicate files in the package then last file processed is what ends up being used on the Android device. So, for this to work the file and directory structure of the APKs must match otherwise the package installer flags the non-duplicated because a signature doesn't exist for it. Framaroot isn't going to match anything in the Asteroid Market. However, we might be able to get alephzain to customize a copy of his Framaroot app so that it matches the manifest of a pre-existing Asteroid Market app so that it can be snuck into the system.

I am not sure what is in the /META-INF/com/parrot directory, but I suspect that it is the public key used to validate digital signatures.
 

johnnie_w

Senior Member
Aug 4, 2007
55
22
Probably that's just Parrot renaming the Android PacKage (.apk) extension to identify its proprietary. Much like how an .apk file is really just a .zip file with structured folders and specific file locations within the archive. ;)

No, I think the PPK files are encrypted. I couldn't rename the file nor validate the type.

I am pretty sure to take advantage of the Master Key Exploit with Framaroot, the package should be a system package since we want the it to end up in /system/app anyways.

Questions:
  • In the above test, did the Wikango application install without Framaroot or not at all?
  • If it was installed did you check if it is actually Wikango?
  • Was the Wikango application on the device prior?
  • Were you able to install an unaltered copy of the WIkango package through ADB?

  • The first installation was from the unmodified APK that I got from the extracted Wikango PPK.
  • Yes, it was Wikango
  • No it wasn't.
  • Not the PPK file, only the APK.


Let me try an explain the situation (at least how I understand it). I apologize if you knew this already but I feel it is important that we are on the same page.

First of all, each package that contains a "META-INF" directory and has the following files; CERT.RSA, CERT.SF and MANIFEST.MF. These files are used to validate the contents of the package using cryptographic signatures. The "CERT.SF" and "MANIFEST.MF" enumerates the items in the package and associates it with a cryptographic signature. The CERT.RSA file is the public key file used to validate each signature; however, only the private key can create the signatures. This key pair ias the fundamental basis in which Android ensures the package was created the signee and untampered.

The master key exploit takes advantage of the idea that only one file is tested per signature. However, if there are duplicate files in the package then last file processed is what ends up being used on the Android device. So, for this to work the file and directory structure of the APKs must match otherwise the package installer flags the non-duplicated because a signature doesn't exist for it. Framaroot isn't going to match anything in the Asteroid Market. However, we might be able to get alephzain to customize a copy of his Framaroot app so that it matches the manifest of a pre-existing Asteroid Market app so that it can be snuck into the system.

I am not sure what is in the /META-INF/com/parrot directory, but I suspect that it is the public key used to validate digital signatures.

Thanks for the clarification, I already sent alephzain a message, let's see what comes out of it. If you want the Wikango APK, I can upload it somewhere?
 

donaldta

Senior Member
Aug 12, 2013
1,328
461
Now we need to inject Framaroot somehow in this package. I tried it, and this was the error I got:
Code:
unable to load PKCS7 object
It looks like it is actually erroring out in lines #30 & 31 of the bash script which uses openssl piped into awk to set up the variable for the filename and echo statements. I don't think this is detrimental if that part fails in the script because it looks like the it created an "evil" version of the package anyways. Just without the fancy filename that it would have created had the two openssl lines worked.

More good news: I was able to install the Framaroot APK! I just installed the APK with Framaroot injected, and it succeeded. Unfortunately it did crash immediately.

My guess is that it tries to find the library in com.alephzain.framaroot, but due to the fact that it is injected in a different package, it can't find it. I will contact the Framaroot developer, maybe he has a solution. Exciting stuff!

It looks like it is looking for the "\lib\armeabi\libframalib.so" shared object library. Hmm... maybe check to see if you have a "frama" apk in either your /system/app or /data/app directories? If a copy already exists then maybe try "adb install -r Framaroot-1.6.0" (notice the -r argument to reinstall). You might be able to use it to reload a fresh new copy if the package already exists.

No, I think the PPK files are encrypted. I couldn't rename the file nor validate the type.

Thanks for the clarification, I already sent alephzain a message, let's see what comes out of it. If you want the Wikango APK, I can upload it somewhere?

That's cool. Could you upload a copy of the original PPK, the original APK, and the altered APK? Maybe to like dropbox or skydrive, so it can be shared? Or even a forum attachment? There might be others that can add their two cents in getting this working.
 
  • Like
Reactions: getiem and gebla

getiem

Senior Member
Apr 18, 2008
97
45
www.getiem.nl
That's cool. Could you upload a copy of the original PPK, the original APK, and the altered APK? Maybe to like dropbox or skydrive, so it can be shared? Or even a forum attachment? There might be others that can add their two cents in getting this working.

Ik extracted the PLF and attached one of the original APK files from it to this post. It may be usefull to you. The bash scripts are a step further then I am already.... :cowboy:
 

Attachments

  • HTMLViewer.apk
    11.1 KB · Views: 39
  • Calculator.apk
    78.1 KB · Views: 33
  • Like
Reactions: donaldta

getiem

Senior Member
Apr 18, 2008
97
45
www.getiem.nl
In the PLF update file I also found a directory with files that might look to me of use, but I don't know at all. Does this say something to you?

system/etc/security/
cacerts.bks
otacerts.zip
system/etc/security/parrot/accepted_certificates/
.ignore
system/etc/security/parrot/accepted_publick_keys/
afm_fc6100_volvo.der

Does this certificate mean the verification of apk files?
(I rarred the .der file for upload)
 

Attachments

  • otacerts.zip
    1.2 KB · Views: 43
  • afm_fc6100_volvo.rar
    244 bytes · Views: 58
Last edited:

donaldta

Senior Member
Aug 12, 2013
1,328
461
Ik extracted the PLF and attached one of the original APK files from it to this post. It may be usefull to you. The bash scripts are a step further then I am already.... :cowboy:

Thanks! I appreciate the effort, but I already have the entire the SCT's ACU_VOLVO_EU_update.plf extracted and ready to reference at any time. All these three letter acronyms might be a tad confusing. But, the .PPK file which johnnie_w and I were referring to earlier is the Wikango app from the Asteroid Market. (at least that's what I've gathered) Apparently, the files distributed to the SCT from the Asteroid Market are transferred as .PPK files. So, I wanted be able to take a look at one for dissemination sake. As far as I understand, after the PPK is downloaded, it is decrypted into a temporary directory or as a temporary filename before installing. That's how johnnie_w was able to intercept a copy of its APK file and later was able to inject Framaroot into it using the bash script. So, really, I was asking for a copy of those files to be able peruse.

In the PLF update file I also found a directory with files that might look to me of use, but I don't know at all. Does this say something to you?

system/etc/security/
cacerts.bks
otacerts.zip
system/etc/security/parrot/accepted_certificates/
.ignore
system/etc/security/parrot/accepted_publick_keys/
afm_fc6100_volvo.der

Does this certificate mean the verification of apk files?
(I rarred the .der file for upload)
Honestly, I am not sure what the files under the parrot directory is for in the SCT. They don't exist at all in the PAS. Here is what I do know.
  • {SCT}\FileSystem\system\etc\security\cacerts.bks is the Android keystore and holds all the information regarding the Certificate Authority Certifications. You can use CACertMan to see what's inside.
  • {SCT}\FileSystem\system\etc\security\otacerts.zip is an archive of certificates whose public keys are acceptable during an Over The Air (OTA) update or in a Recovery Image.
  • {SCT}\FileSystem\system\etc\security\parrot\accepted_certificates\.ignore file was 0 bytes, so I am assuming that's a file used as a flag for a script or application, like in a "if file exists then.." routine. If you have an SCT maybe check to see if it is still 0 bytes on a running system.
  • {SCT}\FileSystem\system\etc\security\parrot\accepted_public_keys\afm_fc6100_volvo.der file is a X509 binary that uses Distinguished Encoding Rules (DER) for its public key certificate. I am not sure what it is used to verify though.
And yes, these files are used for verification. However, it does us no good because we cannot manipulate them since root is not available on the SCT. These public keys and certificates are used to verify digital signatures or decrypt written by their private counterpart. They cannot be used to digitally sign APKs for installation. Only the private keys can do that. If you want an overview about how it works then take at look at this How Encryption and Digital Signatures Work article.

Although, these files won't help you guys get root on the SCT, it might help jaanusj in getting AcuHome.apk installed on his PAT.
 
Last edited:

getiem

Senior Member
Apr 18, 2008
97
45
www.getiem.nl
I'm sorry that I did some useless work. :cyclops:.

I have SCT and will try soon to get into it. Car is just 6 days old now, and still figuring out some things (did'nt even have the time to log in to the asteroid market). :)
 

jaanusj

Member
Nov 1, 2009
48
7
For the info - my parrot tablet in now rooted SCT :)

At least the launcher is similar...
Linbus interface is my own Arduino product:)
Search Youtube for xc60droid and you will see.
 
Last edited:

donaldta

Senior Member
Aug 12, 2013
1,328
461
For the info - my parrot tablet in now rooted SCT :)

At least the launcher is similar...

Nice. Can you please explain how you were able to do it? I just realize that it would be useful to try and install the AcuHome.apk and the ParrotHome2.apk into the Android SDK Emulator and I think that I was having the same issue as you were. For example, installing AcuHome.apk was complaining about, "Package se.volvocars.acu requires unavailable shared library com.parrot.asteroid-legacy; failing"

Linbus interface is my own Arduino product:)
Search Youtube for xc60droid and you will see.

Great. I'll take it that Lin bus is the SWC communication type in your Volvo? I'll take a look.

---------- Post added at 07:49 AM ---------- Previous post was at 07:09 AM ----------

I'm sorry that I did some useless work. :cyclops:.

I have SCT and will try soon to get into it. Car is just 6 days old now, and still figuring out some things (did'nt even have the time to log in to the asteroid market). :)

Asking questions is never useless. I'm sure everyone learned things in the process of getting it answered. In fact, I was reminded that the SCT is still quite different than the PAS/PAT despite their similarities. Additionally, I do not have a SCT, so I have to live vicariously through you guys in order to get more familiar with it. There's a lot of interesting things that SCT can do that neither the PAT/PAS does by default, like pairing up to 10 phones, using it as a portable hotspot, and the Parrot SmartLink.
 
Last edited:

getiem

Senior Member
Apr 18, 2008
97
45
www.getiem.nl
There's a lot of interesting things that SCT can do that neither the PAT/PAS does by default, like pairing up to 10 phones, using it as a portable hotspot, and the Parrot SmartLink.

FYI:
Volvo SCT can't connect to phones with bluetooth, either for phone or for music. The Car Sensus (original Volvo system that controls FM radio, CD/DVD, Phone, Car system settings, etc) system takes that part of functionality.
It can connect to phone with WIFI (when phone as portable hotspot), and it can connect to phone with USB (as USB device carrying music files)
Using USB for internet sharing is not possible (at least, I did'nt try, but other users did).

Volvo SCT can act as portable hotspot, but only if you add a compatible USB-dongle with sim-card. Compatible dongles are hard to find....
Volvo SCT does not have Smartlink/Mirrorlink etc... this functionality is skipped by Volvo in the last days of implementing ( I ordered SCT because of this functionality, but in the end, it isnt there at all..) (I have a promotional flyer of SCT, dated april 2013, with Mirrorlink as one of the features, thats what I ordered).


Lin bus is the SWC communication type in your Volvo
In my SCT there are 2 LINbus software versions. I guess, seeing the names, it refers to the controls/buttons on my steeringwheel and the controls/buttons in my dashboard.
 
Last edited:
  • Like
Reactions: donaldta and fmpin

jaanusj

Member
Nov 1, 2009
48
7
Would be interesting to see the wiring diagram of SCT. I have used only one Linbus on my device but may be there is more info to catch:) As I see the center console uses can bus but maybe it is translated to one of the lin buses..who knows, the car is full of buses and computers.
 

getiem

Senior Member
Apr 18, 2008
97
45
www.getiem.nl

johnnie_w

Senior Member
Aug 4, 2007
55
22
I'm currently at conference with a really crappy internet connection, so I can't upload the files yet... Will do it tomorrow!
 
  • Like
Reactions: donaldta

getiem

Senior Member
Apr 18, 2008
97
45
www.getiem.nl
I downloaded a .ppk file from my SCT system. I found it in \sdcard.
It's a 19MB file, unreadable and I have no reference to which APK or app this one belongs.

Due to size restrictions for attachments here, I uploaded it to dropbox:
https://dl.dropboxusercontent.com/u/21900120/69.1380131622228.ppk

For people who do not want commandline for ADB, there is a very easy app for your (rooted) phone: Craze.
It will open the connection to SCT over ADB and show you the results like a file browser/explorer. Attached a screenshot. I was able to connect to SCT within seconds.
-Connect your phone and SCT to same Wifi network
-Beware, your phone cannot act as wifi hotspot at the same time!
-Lookup the IP adress of SCT (go to settings->wifi->wifi connection name _ see details.
- Fill in Craze via button Connect.
https://play.google.com/store/apps/details?id=evo.dev.craze
(also project on XDA: http://xdaforums.com/showthread.php?t=2260828 )
 

Attachments

  • Screenshot_2013-09-26-21-39-17.jpg
    Screenshot_2013-09-26-21-39-17.jpg
    16.1 KB · Views: 401
Last edited:
  • Like
Reactions: donaldta

fmpin

Senior Member
Sep 18, 2013
63
2
Volvo SCT does not have Smartlink/Mirrorlink etc... this functionality is skipped by Volvo in the last days of implementing ( I ordered SCT because of this functionality, but in the end, it isnt there at all..) (I have a promotional flyer of SCT, dated april 2013, with Mirrorlink as one of the features, thats what I ordered)..

Quote !!

This is also why I'm so happy that you are working on it :fingers-crossed:

THANK YOU VERY MUCH !
 

donaldta

Senior Member
Aug 12, 2013
1,328
461
FYI:
Volvo SCT does not have Smartlink/Mirrorlink etc... this functionality is skipped by Volvo in the last days of implementing ( I ordered SCT because of this functionality, but in the end, it isnt there at all..) (I have a promotional flyer of SCT, dated april 2013, with Mirrorlink as one of the features, thats what I ordered).
Are you sure that it isn't there?

I found the following lines in {SCT.plf}\FileSystem\system\etc\init.parrot.fc6100.sh file

Code:
# for mirror link
modprobe cdc_ncm
/system/bin/enableUSBS60DevicesAndroid.sh &

And in that file...

Code:
#!/bin/sh
#
# Copyright (C) 2002-2012 RealVNC Ltd.  All Rights Reserved.
#
# enableUSBS60DevicesAndroid.sh
#
# Configures system drivers to support the USBS60 bearer on
# Symbian based devices not supported by the system by default.
#
# This script only needs to be run once after the system has
# booted or the cdc-acm module is reloaded, it is not necessary
# to run it before every USBS60 connection.

CDC_ACM_NEW_ID="/sys/bus/usb/drivers/cdc_acm/new_id"

add_device_support() {
    VID=$1
    PID=$2
    DEVICE=$3
    sh -c "set -e; echo $VID $PID > $CDC_ACM_NEW_ID"
}

# Inform the CDC ACM driver of the VID and PID of all known Symbian
# devices. Some of these may already be supported by the kernel, but
# there's no harm in adding the IDs anyway.
#

add_device_support 04e7 6651 "Samsung GTi8510 (INNOV8)"

add_device_support 0421 042D "Nokia 3250"
add_device_support 0421 04D8 "Nokia 5500 Sport"
add_device_support 0421 04C9 "Nokia E50"
add_device_support 0421 0419 "Nokia E60"
add_device_support 0421 044D "Nokia E61"
add_device_support 0421 0001 "Nokia E61i"
add_device_support 0421 0475 "Nokia E62"
add_device_support 0421 0508 "Nokia E65"
add_device_support 0421 0418 "Nokia E70"
add_device_support 0421 0425 "Nokia N71"
add_device_support 0421 0486 "Nokia N73"
add_device_support 0421 04DF "Nokia N75"
add_device_support 0421 000e "Nokia N77"
add_device_support 0421 0445 "Nokia N80"
add_device_support 0421 042F "Nokia N91 & N91 8GB"
add_device_support 0421 048E "Nokia N92"
add_device_support 0421 0420 "Nokia N93"
add_device_support 0421 04E6 "Nokia N93i"  
add_device_support 0421 04B2 "Nokia 5700 XpressMusic"
add_device_support 0421 0134 "Nokia 6110 Navigator (China)"
add_device_support 0421 046E "Nokia 6110 Navigator"
add_device_support 0421 002f "Nokia 6120 classic" 
add_device_support 0421 0088 "Nokia 6121 classic"
add_device_support 0421 00fc "Nokia 6124 classic"
add_device_support 0421 0042 "Nokia E51"
add_device_support 0421 00b0 "Nokia E66"
add_device_support 0421 00ab "Nokia E71"
add_device_support 0421 0481 "Nokia N76"
add_device_support 0421 0007 "Nokia N81 & N81 8GB"
add_device_support 0421 0071 "Nokia N82"
add_device_support 0421 04F0 "Nokia N95 & N95-3 NAM"
add_device_support 0421 0070 "Nokia N95 8GB"
add_device_support 0421 00e9 "Nokia 5320 XpressMusic"
add_device_support 0421 0099 "Nokia 6210 Navigator, RM-367"
add_device_support 0421 0128 "Nokia 6210 Navigator, RM-419"
add_device_support 0421 008f "Nokia 6220 Classic"
add_device_support 0421 00a0 "Nokia 6650"
add_device_support 0421 007b "Nokia N78"
add_device_support 0421 0094 "Nokia N85"
add_device_support 0421 003a "Nokia N96 & N96-3"
add_device_support 0421 00e9 "Nokia 5320 XpressMusic"
add_device_support 0421 0108 "Nokia 5320 XpressMusic 2G"
add_device_support 0421 01f5 "Nokia N97, RM-505"
add_device_support 0421 02e3 "Nokia 5230"
add_device_support 0421 0178 "Nokia E63"
add_device_support 0421 010e "Nokia E75"
add_device_support 0421 02d9 "Nokia 6760 Slide"
add_device_support 0421 01d0 "Nokia E52"
add_device_support 0421 0223 "Nokia E72"
add_device_support 0421 0275 "Nokia X6"
add_device_support 0421 026c "Nokia N97 Mini"
add_device_support 0421 0154 "Nokia 5800 XpressMusic"
add_device_support 0421 04ce "Nokia E90"
add_device_support 0421 01d4 "Nokia E55"
add_device_support 0421 0302 "Nokia N8"
add_device_support 0421 03cd "Nokia C7"
add_device_support 0421 0500 "Nokia N8 TM"
add_device_support 0421 0436 "Nokia N97 mini TM"
add_device_support 0421 0335 "Nokia E7"

# To discover the VID and PID of a new device to add the device to
# the above list then the following steps should be taken:
#
# 1) Run 'lsusb' on a Linux machine.
# 2) Connect the device to a Linux machine over USB.
# 3) If prompted, select 'PC Suite Mode' on the Symbian device.
# 4) Run 'lsusb' again and work out which is the new device.
# 5) The VID is the first hex number after the 'ID' text, the PID
#    is the hex number after the separating ':'.
#
# For example the Nokia N8 gives an 'lsusb' line similar to:
#
#   Bus 002 Device 004: ID 0421:0302 Nokia Mobile Phones
#
# Giving a VID of '0421' and a PID of '0302'.

echo 
echo It is expected for the Linux kernel to output the following messages
echo when probing a Symbian device:
echo "   cdc_acm:probe of #-#.#:#.# failed with error -22"
echo "   cdc_acm #-#.#:#.#: Zero length descriptor references"
echo These messages are normal behaviour and do not indicate an error.

The respective drivers can be found in the following locations:
  • {SCT.plf}\FileSystem\system\lib\modules\2.6.35.13-02961-ge12298f\kernel\drivers\usb\class\cdc-acm.ko
  • {SCT.plf}\FileSystem\system\lib\modules\2.6.35.13-02961-ge12298f\kernel\drivers\net\usb\cdc_ncm.ko
  • {SCT.plf}\FileSystem\system\lib\modules\2.6.35.13-02961-ge12298f\kernel\drivers\net\usb\cdc_ether.ko

After a little research, I found the base technology behind MirrorLink is VNC's Remote FrameBuffer (RFB) protocol and it is featured on their automotive web page with the following video.


After, I decompiled the AcuHome.pkg (the home launcher on the SCT), I found the following graphics file; {AcuHome.pkg}\assets\sprites\icon_atlas.png. That shows a VNC icon AND an icon of a portable device with a cable in front of a monitor.



And last but not least, in the following Sensus Connected Touch FAQ

Q:Which applications are blocked during driving?
A:Gallery, Browser, Video in, Smart link, Calendar and E-mail.
It seems to me that it could be embedded in the launcher like the weather app with additional components in other system directories. At least some of the framework is there to support the "Parror SmartLink" aka MirrorLink, even though it may not be accessible to you at the moment.

Volvo SCT can't connect to phones with bluetooth, either for phone or for music. The Car Sensus (original Volvo system that controls FM radio, CD/DVD, Phone, Car system settings, etc) system takes that part of functionality. It can connect to phone with WIFI (when phone as portable hotspot), and it can connect to phone with USB (as USB device carrying music files)
Using USB for internet sharing is not possible (at least, I did'nt try, but other users did).

Volvo SCT can act as portable hotspot, but only if you add a compatible USB-dongle with sim-card. Compatible dongles are hard to find....

In my SCT there are 2 LINbus software versions. I guess, seeing the names, it refers to the controls/buttons on my steeringwheel and the controls/buttons in my dashboard.

Thanks for that This clears up a few misconceptions that I had from watching the promotional material.

I downloaded a .ppk file from my SCT system. I found it in \sdcard.
It's a 19MB file, unreadable and I have no reference to which APK or app this one belongs.

I couldn't identify the file type by its signature in the header. But in case someone else can recognize it, here is the first 16 bytes, "B6 8B 69 6D FB B1 3C 3F 0C 43 8A 49 37 34 76 45". It would be nice to have a copy of the unencrypted APK equivalent. That would make reversing identifying it much easier. Hopefully, when johnnie_w gets back he'll be able to upload those files.

I'm currently at conference with a really crappy internet connection, so I can't upload the files yet... Will do it tomorrow!

:good:
 

Top Liked Posts

  • There are no posts matching your filters.
  • 21
    Volvo Sensus Connected Touch (SCT) is a new car audio-navi system based on systems of Parrot. SCT has hardware and software from the Parrot, but is not exactly equal. In general it has some more restrictions build in by Volvo.
    The system is based on the Parrot FC6100 (not the Parrot Asteroid Smart as was first believed). Looking at the Installation manual for Sensus Connected Touch (ACU) Accessory, Part Number: 31399165 the form factor is closest to the Parrot Asteroid Tablet (PAT). The only similarity that the SCT has with the PAS is Parrot's custom base of the Android 2.3 branch which is also shared by the PAT. So, if anything is more analogous to the Parrot Asteroid Tablet (PAT) than the Parrot Asteroid Smart. (thanks to Donaldta, see post) (Link to the Volvo V40 (MY14) SCT installation manual, also attached to this post as pdf)

    This is how the hardware of the SCT looks if outside of the car (thanks to @AAT):





    This thread is research and development on several topics and has already some nice answers:
    The starting questions:
    1. How to get ADB working y
    2. How to install .apk files y
    3. How to root y

    WARNING!:
    The below mentioned method is an experimental way of rooting. Rooting your SCT involves some android knowledge. Me, the developers and anyone in this topic are not responsible for typo's or any damage that may occur when you follow these instructions.
    ROOTING means you have complete control over the android system. This also means you can do damage to it.

    Security warning:
    The SCT has ADB over WIFI enabled by default. Never ever connect your Volvo SCT to an unknown and/or untrusted network! Anyone connected to that same network can harm your Volvo SCT. The same applies for connecting unknown people to a known/trusted network of yours.
    Security warning 2:
    If your ROOTED your SCT, you are extra vulnerable to above. Anyone with ADB on the same network has complete control over your SCT!


    WARNING!

    Do NOT attempt to replace the SCT's BUSYBOX executable or the command symlinks to it. Another user in this forum just sent me a private message stating that they tried this on their SCT and can no longer mount USB drives or connect to ADB over WiFi. Apparently, they also do not have a File Explorer or a Terminal Emulator installed so it seems this is going to be nearly impossible to fix and will most likely be required to swap it at the dealer.
    See message from @donaldta : Message




    The below answers are not yet completely reviewed and tested. The answers will be reviewed in the next days. In any case the instructions below are delivered "as is" and have no guaranty. If you follow the instructions below, you are responsible for your own actions. So, before you do so, understand, or at least try to, what you are doing. If you have questions or have recommendations, post them in the topic.

    The answers and instructions below are constructed from the work of @gekkekoe123 and @donaldta and the trial and error experiments of the first users of the SCT (see first pages of the topic)
    This means everone using these instructions must give BIG THANKS TO @gekkekoe123 and @donaldta


    Instructions to root en install apps:

    Note: Instructions are tested on specific versions of the Volvo SCT
    It is possible that these instructions below are not (yet) working on other versions: Other continents, newer versions etc.
    If you tested it on a different continent + version, let me know, so I can put it here.

    Available versions:
    EU
    -1.47.88 - Tested
    -1.47.96 - Tested
    -1.49.34 Tested
    • One click script version 4 in attachments cmd-frama-menu-4.zip (4.62 MB)
      One-click script with menu provided by @gekkekoe123 and @donaldta
      Oneclick , latest version, script is discussed from here


      It is rather simple as long as You have the SENSUS CONNECTED TOUCH and a PC (prefer a laptop) which You need to connect to the same network.

      How to:
      1. Preparing
      *Download the: cmd-frama-menu-4.zip from the page 1, first post attachments. LINK: http://xdaforums.com/attachment.php?attachmentid=2636951&d=1395149723

      2. Follow the instructions
      The instructions are rather simple.
      -Connect your SCT to the same Wifi network as your PC. This wifi network can be your home network or your local hotspot from your phone.
      -Unzip the (cmd-frama-menu-4.zip) and start menu.bat found in the folder "menu"
      - After starting menu.bat on your pc it will ask:
      Code:
      Input {IP Address of Android Device} or USB:
      Type in the IP address of the SCT, can be found when You go to the settings on SCT -> WIFI -> and click on the connected network (starts with 192.-).
      After that the menu look list this: (Now just type in: 1 and wait a bit so it will say complete, then type in 2 and wait a bit until complete and so on, until step 6 when the SCT will restart itself)
      Code:
      1 - Copy Framaroot files and execute.
      2 - Install remount.sh into /system/xbin and remount as writeable.
      3 - Alter /system/build.prop to ro.parrot.install-all=true
      4 - Install Google Framework & Android Market
      5 - Install rewhitelist.sh/setpropex/patch init.parrot.capabilities.sh
      6 - Reboot Android Device
      7 - Install Android Packages from APKs folder.
      8 - Android Debug Bridge Shell
      9 - Save ADB Bugreport to Disk
      R - Input connection information & retry ADB connect.
      Q - Quit
      Run steps 1 through 6 in order to root the SCT.
      Step 7 is optional and will install all APKs you have placed inside the APKs folder in your unzipped menu.zip folder on your pc PC.
      Step 8 is for manual commands or troubleshooting.
      Step 9 is for troubleshooting.
      Step R is only needed when the connection to the SCT seems lost.

      3. You should have now a rooted SCT.

      4. Installing applications
      I noticed that lots of Apps from Google Play Store can not be downloaded directly to the SCT (because the SCT is not in the available list of the apps) so a easy way is to download the Applications as ".apk" files from the PC (You can find the desired app from: http://www.appsapk.com/ or http://www.androiddrawer.com/ for example).
      Then copy-paste these .apk files(make sure they do not have any spaces in the filenames) to the folder "APKs" found in the downloaded unzipped folder "cmd-frama-menu-4". To install them, run the menu.bat again and once connected with the SCT again run the step 7 to install the applications You copied to the APK folder.

      If you want to install apps using the Google Play Store that are larger than 7MB or so, you need to remap the cache directory to the SD card:
      Code:
      remount.sh cache-sd
      Then after the app installation has finished, but before you start the app, remap the cache directory to the internal SCT memory:
      Code:
      remount.sh cache-og

      5. Enable displaying applications while driving (disable safety feature)
      1. Download Android Terminal Emulator from Google Play Store on Your rooted SCT.
      2. Once installed, run Android Terminal Emulator under Applications
      3. touch the screen - the keyboard pops up
      4. Type in "su" press ENTER
      5. It should ask wether You allow Superuser or not, choose the "Allow" option.
      6. Type in "rewhitelist.sh" press ENTER
      7. Type in "reboot" press ENTER

      6. Enable Google Maps and Voice Search
      First install google.maps.6.14.4.apk by the method explained above. Then copy libvoicesearch.so to /system/lib and install Voice_Search_2.1.4.apk. These files can be found in Voice_Search_2.1.4.zip.
      Here is an example of how to do this with adb:
      Code:
      adb connect [ip of your SCT]
      adb push google.maps.6.14.4.apk /mnt/sdcard
      adb install /mnt/sdcard/google.maps.6.14.4.apk
      adb push libvoicesearch.so /mnt/sdcard
      adb shell su -c 'remount.sh system-rw'
      adb shell su -c 'cp /mnt/sdcard/libvoicesearch.so /system/lib'
      adb shell su -c 'chmod 644 /system/lib/libvoicesearch.so'
      adb push Voice_Search_2.1.4.apk /mnt/sdcard
      adb install /mnt/sdcard/Voice_Search_2.1.4.apk
      Now #reboot# and Google Maps and Voice Search should be working.


      Now You should be done. Happy downloading and drive safely. :)

      Older instructions, just for reference here, do not follow anymore.

      [*]One-click script with menu provided by @gekkekoe123 and @donaldta
      This one-click script with menu options is here

      [*]One click script for version 1.49.34: http://xdaforums.com/showthread.php?p=50846498
      Actually it was fine (since we are in the root folder), but since I was too lazy, I used your file. I had to correct the "true" to 1.
      I also changed the menu to do this. I removed the set prop option, it's not needed anymore. Setpropex should also work on older versions.

      Btw, I did the upgrade manually using adb shell, and did not used the menu.bat.
      So if anyone could test it or double check the menu.bat file, it should be fine. I translated the manual commands back into the menu.bat

      My SCT is upgraded and I am able to install apks :) Let's find out if waze lost of data is fixed. Also adjusting screen dpi is still working. But we now have setpropex so we can override everything ;)

      When you finished step 5, you need to reboot in order to be able to install apks.

      As allways: no guarantee and at your own risk when using the tools



      Manual instructions and commands:

      1. Detailed instructions how to get ADB working between your pc and SCT
        1. Download the Android SDK, it contains the nescesary tools like ADB.exe and Monitor.bat (Download page Android SDK)
        2. Install the android SDK
        3. If you are using windows: set the installation path of your SDK\platform-tools\ in your windows environment variables. So, add c:\\SDK\Platform-tools\ to it. (More instructions on this point)
        4. Now connect your SCT to a Wifi network and also connect your laptop/pc to the same wifi network. This network can be your home network, or for example the wifi network you create with your phone wifi-tether function.
        5. Go into the SCT>Settings>Wifi and click on your connection details. Find out the IP adress of your SCT. (example, it would be something like 192.168.43.x if you are using wifi tether from your android phone. )
        6. Now on your pc, open the command line (cmd). Easiest is to click with shift-button hold and with Right-Mouse-Button on the folder where the files reside you want to transfer to the SCT (see instructions further for rooting). After RMB click, choose option: open command line here.
        7. Now type:
          Code:
          adb connect $IPADDRESS
          Replace $IPADRESS with the IP from the previous step.
        8. ADB is now connected and you are ready to type the instructions for rooting.
          Code:
          D:\sdk\platform-tools>adb connect 192.168.43.5
          connected to 192.168.43.5:5555


      2. Detailed instructions how to Root SCT
        1. Download the cmd-frama-working.zip from the attachments
          Attachment
        2. Unzip it into a folder (example: d:\sct\ )
        3. Open the commandline in this folder
        4. Connect to adb (see instructions above)
        5. Do the following commands (line by line):
          Usage:
          Code:
          adb push libframalib.so /data/local/.
          adb push sploit.jar /data/local/.
          adb shell mkdir /data/local/tmp/dalvik-cache
          adb shell ANDROID_DATA=/data/local/tmp LD_LIBRARY_PATH=/data/local dalvikvm -cp /data/local/sploit.jar com.alephzain.framaroot.FramaAdbActivity Gimli 0
          [or]
          adb shell ANDROID_DATA=/data/local/tmp LD_LIBRARY_PATH=/data/local dalvikvm -cp /data/local/sploit.jar com.alephzain.framaroot.FramaActivity Gimli 0
          See post here and thank developer!
        6. Now you are rooted:
          Code:
          cmd line frama root by Gekkekkoe
          Credits to alephzain for Framalib
          using Exploit: Gimli choice: 0
          Executing Check
          idx: 0 value: Gimli
          idx: 1 value: Aragorn
          Executing Check Completed
          No such user 'root:root'
          No such user 'root:root'
          Result: 0
        7. Test root by command:
          Code:
          adb shell
          su
          id
          On the SCT you will get a screen of SuperSU, asking if shell may have root access privileges. Say yes.
        8. exit the su and shell using
          Code:
          exit
          exit
        9. Reboot the SCT
          If you are still within shell, just use
          Code:
          reboot
          If you are on command line again, use
          Code:
          Adb Reboot
      3. Detailed instructions how to get Google framework and Google Play (market) on the SCT
        1. Download the files for framework and market

          Framework
          Market
        2. Push them to your SCT
          Code:
          adb shell su root -c 'mount -o remount,rw ubi0:system /system'
          adb push GoogleServicesFramework-2.2.1.apk /data/local/.
          adb push Market-3.3.11.apk /data/local/.
          adb shell
        3. Now install them
          Code:
          cp /data/local/*.apk /system/app/.
          chmod 644 /system/app/GoogleServicesFramework-2.2.1.apk
          chmod 644 /system/app/Market-3.3.11.apk
          reboot
        4. After reboot, connect the SCT to internet
        5. Open the google market on your SCT (in the applications drawer)
        6. Log in with your google credentials
        7. Accept terms and conditions
        8. Be sure to stay connected to internet, google market will update itself after some minutes
        9. Connect Adb and force SCT to reboot again.
        10. Open Market/Play and Accept terms and conditions again! (now for the updated versions)
        11. Wait for some time, it will again update itself again.
        12. Open adb, force reboot again
        13. Last time open Play (It should be named Play now, since it is updated, if it is not, wait longer and try previous steps again)
        14. Go into My Apps, update SuperSu
        15. After update, open SuperSu from your app drawer
        16. It will ask to update SuperSu Binary, use Normal Method
        17. Say thanks to Chainfire for the SuperSu :)
        18. In settings, you can disable the popup that will ask if you want to run an App that is using root. Can be convenient, but also dangerous (apps can use root even without notifying you.)

      4. Detailed instructions how to installation of other apps
        1. We have to enable installing all apps on SCT. Warning, this means editing the build.prop, which is vital to the system. Typing errors can result in a system that will not boot correctly.


          More methods apply here, use one which is convenient to you:
        2. Fast method:
          Code:
          adb shell
          mount -o remount,rw ubi0:system /system
          sed -i 's/ro.parrot.install.allow-all=false/ro.parrot.install.allow-all=true/' /system/build.prop
        3. Slow method, more control, moderate risk:
          Code:
          adb pull /system/build.prop
          edit content and set to true. Content of the file should look like this
          Code:
          #TODO Set to false for prod #Package install limitations. Set to false to allow only the install of verified packages 
          ro.parrot.install.allow-all=true
          replace build.prop with proper one.
          Code:
          adb shell su root -c 'mount -o remount,rw ubi0:system /system'
          adb push build.prop /system/build.prop
          If above does not work, use method like the google framework.
        4. Third method: install ES file explorer, use the rooting functions of this app to edit build.prop
          Instructions in this post and this post
      5. Detailed instructions how to install APK files
        1. Method 1: Use google play
        2. Method 2: If not available on google play, use a Google Play APK downloader on your pc and install using the
          Code:
          ADB install
          or using
          ES Fileexplorer mentioned above
      6. Detailed instructions how to make apps available during driving

        All apps are behind a security wall of the SCT. When driving >5km/h, all apps not listed in the whitelist.xml will be disabled. To enable your installed apps you have to edit the whitelist.xml
        Warning: it is a safety feature you are disabling now, it is your own responsability when using apps during driving

        1. Slow method:
        2. Get the whitelist.xml from your SCT

          Code:
          adb pull /system/etc/whitelist.xml
        3. Find out which packages are installed and have to be listed there:
          Code:
          adb shell
          pm list packages
          Other method, look to the url of google play on your pc, see bold part: https://play.google.com/store/apps/details?id=com.estrongs.android.pop
        4. List the packages by adding new lines with the package names
        5. Edit the whitelist.xml using a smart text editor. Preferably use Notepad++
        6. Copy the whitelist back to SCT

          Code:
          adb push whitelist.xml /data/local
          adb shell
          su
          mount -o remount,rw ubi0:system /system
          cp /data/local/whitelist.xml /system/etc
          reboot



          Scripted method:
        7. Download script
        8. Instructions in this post



    • FAQ
      1. Audio is not working when using application X
        This is a feature or limitation by design
        - TomTom and other navigation apps will break Sound/Audio due to this feature.
      2. If you have more, PM me or react in topic

    • TIPS
      1. Use a USB keyboard in combination with ES file explorer or a Shell app to edit files on the system.
      2. If you have more, PM me or react in topic








    Informational links:

    Information about SCT:
    http://www.volvocars.com/intl/sales-services/sales/sensus-connected-touch/pages/default.aspx
    Official FAQ of SCT:
    http://www.volvocars.com/intl/top/support/pages/sensus-connected-touch-faq.aspx
    Dutch experiences with SCT:
    http://www.volvo-forum.nl/viewtopic.php?t=54935&postdays=0&postorder=asc&start=0


    SCT update files:
    http://www.parrot.com/nl/support/sensus-connected-touch
    Current version: All regions - 1.49.34

    How to unpack the update (.plf) files:
    Download the plftool
    Basically, download, unzip, and go into the command line, the binaries directory and use the command syntax, "plftool -i -o "
    And please take the time to thank hoppy_barzed for hosting it for us and for loveshackdave for providing the tool to use it.


    Linked topic of Parrot Asteroid Smart:
    http://xdaforums.com/showthread.php?t=2118432
    7
    Google Street View

    Alright, as I sit in the eve of the New Year, I will bid you all farewell to the old and welcome in the new. To commemorate this event, I will leave you with a parting/welcoming gift. Attached is a copy of the Google Street View APK. While it does not provide an icon in the app drawer, it does enable 360° Street View within Google Nav (which is apart of the Google Maps version 6.14.4 that's compatible with Gingerbread).

    6
    Well, adb install still won't work. What part do you mean?

    Euh you have basically full control over the unit now.
    - You can now allow install from unknow sources.
    - you can install google playstore... and Get TOMTOM on it :)
    - See the parrot thread, once you have root

    I cleaned up the code. Attached is the working version.
    I will make a version that autodetects and exploits. But thats for the coming days :)

    Usage:
    Code:
    adb push libframalib.so /data/local/.
    adb push sploit.jar /data/local/.
    adb shell mkdir /data/local/tmp/dalvik-cache
    adb shell ANDROID_DATA=/data/local/tmp LD_LIBRARY_PATH=/data/local dalvikvm -cp /data/local/sploit.jar com.alephzain.framaroot.FramaAdbActivity Gimli 0
    [or]
    adb shell ANDROID_DATA=/data/local/tmp LD_LIBRARY_PATH=/data/local dalvikvm -cp /data/local/sploit.jar com.alephzain.framaroot.FramaActivity Gimli 0
    6
    Here are all the free APKs from the Asteroid Market available to me for the Smart ...and the rest of them are too large to share as an attachment.

    Okay, it suddenly occurred to me that 7-zip can split files to help in situations where there is a upload size limitation. I've split the rest of the oversized APKs into equal parts and included them with this post. I had to append the extra ".zip" extension in order to upload them, so you'll need to remove the extension after downloading them in order for 7-zip to detect them as split parts and combine them.
    6
    OK, I took the risk. Installed the Volvo update this morning. Rerooted (without any problems) and after a second reboot found that ADW is still installed with all my apps.

    Happy updating all!