[R&D] VOLTE for non-stock roms for XT1254 on Verizon

TheSt33v

Senior Member
Jun 12, 2014
1,741
1,362
0
The Stupid Country
Very interesting. So here's an idea: up until now we've been trying to decide which vendor files are necessary and adding them a few at a time. Why don't we just add all of them and see what happens? I find it hard to believe that Motorola said "let's just include a whole bunch of unnecessary files along with the important ones" when they were developing this phone.

Also, /system/app/ims is in our vendor tree. Are we not including it in the builds? If not, why not? My time is limited this weekend but I'll get on that if no one else beats me to it whenever I can find the time.
 
Last edited:

NepoRood

Retired Forum Moderator
Jan 26, 2016
2,882
3,803
183
Bugtussle
Very interesting. So here's an idea: up until now we've been trying to decide which vendor files are necessary and adding them a few at a time. Why don't we just add all of them and see what happens? I find it hard to believe that Motorola said "let's just include a whole bunch of unnecessary files along with the important ones" when they were developing this phone.

Also, /system/app/ims is in our vendor tree. Are we not including it in the builds? If not, why not? My time is limited this weekend but I'll get on that if no one else beats me to it whenever I can find the time.
where can I find said vendor files?

And yes, ims files from vendor are included
 

fgl27

Recognized Developer
Feb 27, 2014
3,623
9,420
263
Brazil...South of the south
No apology needed, lol. A PR has to be merged by the owner, just because you request, doesn't mean it was merged (that make sense?)

The culprit seems to be here

That path doesn't actually exist ;)
yup. on my end in stock it is located in system/vendor/app/ims/lib/arm and system/vendor/lib. thank you btw for the new build. i'll try it out tonight. @bhb27 i made a pull request with changes to this call and one other that need to be in system/vendor.
I believed I have fix the build but had no try, anyway you guys must know how to local fix it is simple, I'm just trying to push the app libs to its folder that is on vendor/

Tried the latest build. Still no dice. I followed TF's instructions exactly. I'll upload logs in a few minutes.

Looks to me like the action starts at 16:52:39.132 in radio.txt.
keep pushing logs I will find time to cross check what works and what doesn't works.

noticed some entries in your log like:
01-03 13:30:53.472 1833 1833 W SystemConfig: org.xmlpull.v1.XmlPullParserException: Unexpected start tag in /system/etc/permissions/qcom_ims.xml: found exceptions, expected 'permissions' or 'config'
01-03 13:30:54.166 1833 1833 W PackageManager: Library not found: /system/framework/rcsimssettings.jar
01-03 13:30:54.287 1833 1833 W PackageManager: Library not found: /system/framework/com.verizon.ims.jar
01-03 13:30:54.920 1833 1833 W PackageManager: Library not found: /system/framework/com.motorola.ims.rcsmanager.jar
01-03 13:30:57.517 1833 2043 W PackageManager: Failed to parse /system/app/ims: Missing base APK in /system/app/ims
01-03 13:30:58.511 1833 1833 W PackageManager: Failed to migrate com.qualcomm.qti.rcsimsbootstraputil: Failed to execute migrate_app_data [null, com.qualcomm.qti.rcsimsbootstraputil, 0, 2]: -1

Does this mean we are not pulling in everything that we need (such as those .jar files) from stock?
It would seem that way to me... the Moto X Pure has them on their latest build of Lineage OS... and VoLTE works.
clark only uses ims/ app noting else on that list, those seems to be related to moto frameworks no one else use, but I have deodex it all so is all in the vendor you guys just need to add them to the build process to test.
Theoretically they don't need special sign so is possible to just copy and post to the phone check permission 0644 of greater and reboot, search on the logs by the file name if they are gone they good if not try to build it...

in doubt let me know
 

NepoRood

Retired Forum Moderator
Jan 26, 2016
2,882
3,803
183
Bugtussle
New build is uploading, get it Here (If it's not there, give it a bit)

Looking for "VoLTE_3", I added the aforementioned "jar" files and corrected the ims apk path, I think, lol

Clean install, and grab logs :good:
@koftheworld, I upload all test builds to the same folder, if you wanna clean up the OP :highfive:
Code:
https://www.androidfilehost.com/?w=files&flid=166122
 

TheSt33v

Senior Member
Jun 12, 2014
1,741
1,362
0
The Stupid Country
New build is uploading, get it Here (If it's not there, give it a bit)

Looking for "VoLTE_3", I added the aforementioned "jar" files and corrected the ims apk path, I think, lol

Clean install, and grab logs :good:

@koftheworld, I upload all test builds to the same folder, if you wanna clean up the OP :highfive:
Code:
https://www.androidfilehost.com/?w=files&flid=166122
Still no success with this one. See logs. My plans for tonight dissolved, so I'm going to have a look at them now and see what I can find.
 

Attachments

koftheworld

Senior Member
Jun 9, 2010
1,509
518
0
Central NJ
interesting that it lists the phone as a gsmcdma phone in the radio log. can you do the fastboot command that i mentioned earlier in the thread?
still has this entry:

01-04 14:53:09.384 1719 1719 W PackageManager: Library not found: /system/framework/com.motorola.ims.rcsmanager.jar
01-04 14:53:09.461 1719 1719 W PackageManager: Library not found: /system/framework/rcsservice.jar
 

TheSt33v

Senior Member
Jun 12, 2014
1,741
1,362
0
The Stupid Country
interesting that it lists the phone as a gsmcdma phone in the radio log. can you do the fastboot command that i mentioned earlier in the thread?
Done. No change. See updated logs. I'm in the process of copying and pasting all the deodexed files from the latest stock to /system without overwriting any of the existing files. If it still says something is missing after that, it's wrong.
 

Attachments

koftheworld

Senior Member
Jun 9, 2010
1,509
518
0
Central NJ
Done. No change. See updated logs. I'm in the process of copying and pasting all the deodexed files from the latest stock to /system without overwriting any of the existing files. If it still says something is missing after that, it's wrong.
make sure you fix the permissions and reboot after setting them. i'll take a look at your logs. try installing the myverizon app as well. it didn't work for me, but hey lol. also make sure you take the deodexed apks from @bhb27 instead of just from a dump.
 

koftheworld

Senior Member
Jun 9, 2010
1,509
518
0
Central NJ
list of prop. radio files that LOS for clark uses:

-app/ims/ims.apk
-app/MotoSignatureApp/MotoSignatureApp.apk:app/MotoSignatureApp/MotoSignatureApp.apk:pRESIGNED
-priv-app/atfwd/atfwd.apk
-priv-app/qcrilmsgtunnel/qcrilmsgtunnel.apk
bin/diag_klog
bin/diag_mdlog
bin/diag_mdlog-getlogs
bin/diag_mdlog-wrap
bin/diag_qshrink4_daemon
bin/port-bridge
bin/test_diag
bin/ipacm-diag
bin/netmgrd
bin/qmi_motext_hook
bin/qmuxd
bin/rfs_access
bin/rmt_storage
vendor/bin/qti
etc/diag_mdlog/Connection_Issues_V10.cfg
etc/diag_mdlog/Bluetooth_V1.cfg
etc/diag_mdlog/Bluetooth_audio_V1.cfg
etc/diag_mdlog/default.cfg
etc/diag_mdlog/default.opts
etc/diag_mdlog/FIT_V19_1.cfg
etc/diag_mdlog/FIT_V19_2_volte_full_ip.cfg
etc/diag_mdlog/FIT_V19_3_audio.cfg
etc/diag_mdlog/GNSS_OTDOA_V1.cfg
etc/diag_mdlog/GNSS_SUPL_V6.cfg
etc/diag_mdlog/GNSS_V5.cfg
etc/diag_mdlog/Vzw_Connection_Issues_V1.cfg
etc/diag_mdlog/WLAN_V1.cfg
etc/permissions/com.verizon.ims.xml
etc/permissions/ims.xml
etc/permissions/org.simalliance.openmobileapi.xml
etc/permissions/qcnvitems.xml
etc/permissions/qcrilhook.xml
framework/qcnvitems.jar
framework/qcrilhook.jar
framework/com.verizon.ims.jar
framework/org.simalliance.openmobileapi.jar
lib/libmdmcutback.so
lib64/libmdmcutback.so
lib/libmotext_inf.so
lib64/libmotext_inf.so
lib/libqmimotext.so
lib64/libqmimotext.so
lib64/libadropbox.so
vendor/lib/libimscamera_jni.so
vendor/lib64/libimscamera_jni.so
vendor/lib/libimsmedia_jni.so
vendor/lib64/libimsmedia_jni.so
vendor/lib/liblqe.so
vendor/lib64/liblqe.so
vendor/lib/libmdmdetect.so
vendor/lib64/libmdmdetect.so
vendor/lib/libnetmgr.so
vendor/lib64/libnetmgr.so
vendor/lib/libperipheral_client.so
vendor/lib64/libperipheral_client.so
vendor/lib/libril-qc-qmi-1.so
vendor/lib64/libril-qc-qmi-1.so
vendor/lib/libril-qcril-hook-oem.so
vendor/lib64/libril-qcril-hook-oem.so
vendor/lib/libxml.so
vendor/lib64/libxml.so
vendor/lib64/libqcmaputils.so
 

koftheworld

Senior Member
Jun 9, 2010
1,509
518
0
Central NJ
list of ims/hd voice prop. files for shamu:

-app/atfwd/atfwd.apk
-app/ims/ims.apk
lib/libimscamera_jni.so:app/ims/lib/arm/libimscamera_jni.so
lib/libimsmedia_jni.so:app/ims/lib/arm/libimsmedia_jni.so
bin/ATFWD-daemon
bin/imsdatadaemon
bin/imsqmidaemon
etc/permissions/com.verizon.hardware.telephony.ehrpd.xml
etc/permissions/com.verizon.hardware.telephony.lte.xml
etc/permissions/com.verizon.ims.xml
etc/permissions/rcsimssettings.xml
etc/permissions/rcsservice.xml
-framework/com.verizon.hardware.telephony.ehrpd.jar:pRESIGNED
-framework/com.verizon.hardware.telephony.lte.jar:pRESIGNED
-framework/com.verizon.ims.jar:pRESIGNED
-framework/rcsimssettings.jar:pRESIGNED
-framework/rcsservice.jar:pRESIGNED
lib/libimscamera_jni.so
lib/libimsmedia_jni.so
vendor/lib/lib-dplmedia.so
vendor/lib/lib-imsSDP.so
vendor/lib/lib-imsdpl.so
vendor/lib/lib-imsqimf.so
vendor/lib/lib-imsrcs.so
vendor/lib/lib-imss.so
vendor/lib/lib-imsvt.so
vendor/lib/lib-imsxml.so
vendor/lib/lib-rcsimssjni.so
vendor/lib/lib-rcsjni.so
vendor/lib/lib-rtpcommon.so
vendor/lib/lib-rtpcore.so
vendor/lib/lib-rtpdaemoninterface.so
vendor/lib/lib-rtpsl.so
vendor/lib/libvcel.so
 

TheSt33v

Senior Member
Jun 12, 2014
1,741
1,362
0
The Stupid Country
Partial success!!!!! Here's what I did and what happened exactly:

1. Wiped all the partitions except data/media
2. Flashed most recent LOS build, su addon, opengapps nano, modem cleaner zip
3. Booted phone, performed initial setup, installed KA, made sure it had root access, installed Solid Explorer (for copy/pasting) and Chrome (for testing).
4. Accessed secret menu, turned on VoLTE switch (it was off)

My previous logcat said I was missing the following files:

/system/framework/com.motorola.gallery
/system/framework/com.motorola.device
/system/framework/com.motorola.frameworks.core.addon.jar
/system/framework/com.motorola.android.settings.shared.jar
/system/framework/com.motorola.camerabgproc.jar
/system/framework/com.motorola.commandcenter.library.jar
/system/framework/com.motorola.motosignature.jar
/system/framework/org.apache.http.legacy.jar
/system/framework/com.motorola.android.encryption.jar
/system/framework/com.motorola.ims.rcsmanager.jar
/system/framework/rcsservice.jar

5. I extracted all but com.motorola.android.encryption.jar and org.apache.http.legacy.jar (which do not exist in the stock rom) from the most recent stock rom, put them in their proper place and chmod 0644.

6. Then I rebooted, made a call, opened up Chrome and SUCCESSFULLY made a bunch of random searches on google.com. I kept entering new searches for the entire duration of the call, and it seemed to work as if I was not on a call.

7. I hung up the call, waited for the LTE icon to show back up (it disappeared during the call despite VoLTE being functional), and made the exact same call. Chrome no longer worked. Hung up, tried again, no dice.

I've rebooted 3 times with the same results. VoLTE works just fine for the first call, but not after that. The attached log shows a call with successful VoLTE, a hangup, followed by another call with nonfunctional VoLTE.

And that's enough for tonight. Wooo!!!

NOTE: It's probably not important, but the logcat is asking for com.motorola.gallery and com.motorola.device. These should both have .jar file extensions. I think this indicates that there is a typo in a file involved in building somewhere. Also, org.apache.http.legacy.jar does not exist, but org.apache.http.legacy.boot.jar does. Maybe another typo?

We're getting close!!
 

Attachments

Last edited:

NepoRood

Retired Forum Moderator
Jan 26, 2016
2,882
3,803
183
Bugtussle
Partial success!!!!! Here's what I did and what happened exactly:

1. Wiped all the partitions except data/media
2. Flashed most recent LOS build, su addon, opengapps nano, modem cleaner zip
3. Booted phone, performed initial setup, installed KA, made sure it had root access, installed Solid Explorer (for copy/pasting) and Chrome (for testing).
4. Accessed secret menu, turned on VoLTE switch (it was off)

My previous logcat said I was missing the following files:

/system/framework/com.motorola.gallery
/system/framework/com.motorola.device
/system/framework/com.motorola.frameworks.core.addon.jar
/system/framework/com.motorola.android.settings.shared.jar
/system/framework/com.motorola.camerabgproc.jar
/system/framework/com.motorola.commandcenter.library.jar
/system/framework/com.motorola.motosignature.jar
/system/framework/org.apache.http.legacy.jar
/system/framework/com.motorola.android.encryption.jar
/system/framework/com.motorola.ims.rcsmanager.jar
/system/framework/rcsservice.jar

5. I extracted all but com.motorola.android.encryption.jar and org.apache.http.legacy.jar (which do not exist in the stock rom) from the most recent stock rom, put them in their proper place and chmod 0644.

6. Then I rebooted, made a call, opened up Chrome and SUCCESSFULLY made a bunch of random searches on google.com. I kept entering new searches for the entire duration of the call, and it seemed to work as if I was not on a call.

7. I hung up the call, waited for the LTE icon to show back up (it disappeared during the call despite VoLTE being functional), and made the exact same call. Chrome no longer worked. Hung up, tried again, no dice.

I've rebooted 3 times with the same results. VoLTE works just fine for the first call, but not after that. The attached log shows a call with successful VoLTE, a hangup, followed by another call with nonfunctional VoLTE.

And that's enough for tonight. Wooo!!!

NOTE: It's probably not important, but the logcat is asking for com.motorola.gallery and com.motorola.device. These should both have .jar file extensions. I think this indicates that there is a typo in a file involved in building somewhere. Also, org.apache.http.legacy.jar does not exist, but org.apache.http.legacy.boot.jar does. Maybe another typo?

We're getting close!!
That's great news! Some of those "missing" files are in the vendor repo already, and can be added to the next build. Which, I suppose I'll go ahead and do that now :laugh:

EDIT:
New build is uploading, get it here
I added all "ims" related files from vendor/framework, I had a typo in last build, which has been corrected :D
 
Last edited:

fgl27

Recognized Developer
Feb 27, 2014
3,623
9,420
263
Brazil...South of the south
Partial success!!!!! Here's what I did and what happened exactly:

1. Wiped all the partitions except data/media
2. Flashed most recent LOS build, su addon, opengapps nano, modem cleaner zip
3. Booted phone, performed initial setup, installed KA, made sure it had root access, installed Solid Explorer (for copy/pasting) and Chrome (for testing).
4. Accessed secret menu, turned on VoLTE switch (it was off)

My previous logcat said I was missing the following files:

/system/framework/com.motorola.gallery
/system/framework/com.motorola.device
/system/framework/com.motorola.frameworks.core.addon.jar
/system/framework/com.motorola.android.settings.shared.jar
/system/framework/com.motorola.camerabgproc.jar
/system/framework/com.motorola.commandcenter.library.jar
/system/framework/com.motorola.motosignature.jar
/system/framework/org.apache.http.legacy.jar
/system/framework/com.motorola.android.encryption.jar
/system/framework/com.motorola.ims.rcsmanager.jar
/system/framework/rcsservice.jar

5. I extracted all but com.motorola.android.encryption.jar and org.apache.http.legacy.jar (which do not exist in the stock rom) from the most recent stock rom, put them in their proper place and chmod 0644.

6. Then I rebooted, made a call, opened up Chrome and SUCCESSFULLY made a bunch of random searches on google.com. I kept entering new searches for the entire duration of the call, and it seemed to work as if I was not on a call.

7. I hung up the call, waited for the LTE icon to show back up (it disappeared during the call despite VoLTE being functional), and made the exact same call. Chrome no longer worked. Hung up, tried again, no dice.

I've rebooted 3 times with the same results. VoLTE works just fine for the first call, but not after that. The attached log shows a call with successful VoLTE, a hangup, followed by another call with nonfunctional VoLTE.

And that's enough for tonight. Wooo!!!

NOTE: It's probably not important, but the logcat is asking for com.motorola.gallery and com.motorola.device. These should both have .jar file extensions. I think this indicates that there is a typo in a file involved in building somewhere. Also, org.apache.http.legacy.jar does not exist, but org.apache.http.legacy.boot.jar does. Maybe another typo?

We're getting close!!
Just don't add everything logs say is missing they are not need even stock ROM ask for odd jar/lib files, you end up with a none working camera gallery etc related to those jar they are simple not need on custom ROM after all we already have everything but volte working so no need for modification, just add ims, volte and rcs related for the purpose of volte test. you can check if those .jar files you add was accepted you can access the camera after the reboot...

use the deodex I have add to vendor is all there...
 
  • Like
Reactions: koftheworld

NepoRood

Retired Forum Moderator
Jan 26, 2016
2,882
3,803
183
Bugtussle
Just don't add everything logs say is missing they are not need even stock ROM ask for odd jar/lib files, you end up with a none working camera gallery etc related to those jar they are simple not need on custom ROM after all we already have everything but volte working so no need for modification, just add ims, volte and rcs related for the purpose of volte test. you can check if those .jar files you add was accepted you can access the camera after the reboot...

use the deodex I have add to vendor is all there...
I added everything ims and verizon related to the last build, from proprietary/framework, everything with this commit message, anyway
Code:
Quark: update IMS dependecy from lates VZW MM ROM
I don't know if anyone has downloaded it yet...
 

translucentfocus

Senior Member
Nov 3, 2016
73
40
0
Partial success!!!!! Here's what I did and what happened exactly:

1. Wiped all the partitions except data/media
2. Flashed most recent LOS build, su addon, opengapps nano, modem cleaner zip
3. Booted phone, performed initial setup, installed KA, made sure it had root access, installed Solid Explorer (for copy/pasting) and Chrome (for testing).
4. Accessed secret menu, turned on VoLTE switch (it was off)

My previous logcat said I was missing the following files:

/system/framework/com.motorola.gallery
/system/framework/com.motorola.device
/system/framework/com.motorola.frameworks.core.addon.jar
/system/framework/com.motorola.android.settings.shared.jar
/system/framework/com.motorola.camerabgproc.jar
/system/framework/com.motorola.commandcenter.library.jar
/system/framework/com.motorola.motosignature.jar
/system/framework/org.apache.http.legacy.jar
/system/framework/com.motorola.android.encryption.jar
/system/framework/com.motorola.ims.rcsmanager.jar
/system/framework/rcsservice.jar

5. I extracted all but com.motorola.android.encryption.jar and org.apache.http.legacy.jar (which do not exist in the stock rom) from the most recent stock rom, put them in their proper place and chmod 0644.

6. Then I rebooted, made a call, opened up Chrome and SUCCESSFULLY made a bunch of random searches on google.com. I kept entering new searches for the entire duration of the call, and it seemed to work as if I was not on a call.

7. I hung up the call, waited for the LTE icon to show back up (it disappeared during the call despite VoLTE being functional), and made the exact same call. Chrome no longer worked. Hung up, tried again, no dice.


I've rebooted 3 times with the same results. VoLTE works just fine for the first call, but not after that. The attached log shows a call with successful VoLTE, a hangup, followed by another call with nonfunctional VoLTE.
Update: I can echo @TheSt33v successes/failures on the new build by @NepoRood below

I added everything ims and verizon related to the last build, from proprietary/framework, everything with this commit message, anyway
Code:
Quark: update IMS dependecy from lates VZW MM ROM
I don't know if anyone has downloaded it yet...
Update: logs attached
I've downloaded it and successfully got one outgoing VoLTE call, but am reinstalling/testing to get exact procedures/logs.

Has anyone been able to receive any incoming calls on any of the recent builds? I can't seem to get any incoming calls to come through
 
Last edited:

fgl27

Recognized Developer
Feb 27, 2014
3,623
9,420
263
Brazil...South of the south
I'll send you a pull request, since I don't seem to be breaking anything :D
that is not how you add frameworks app or anything that need sign, it may work in some cases but in another no...

create in main .mk
https://github.com/bhb27/proprietary_vendor_motorola/blob/N_Volte2/quark/Android.mk#L249-L257

add to build process
https://github.com/bhb27/proprietar.../N_Volte2/quark/quark-vendor-ims-blobs.mk#L20

they are all created if the file is there is just a case to add under PRODUCT_PACKAGES += \ in ims.mk
and remember to look in the general .mk as some files are not volte only and are already be build, to avoid pushing duplicated files as it may break build...
https://github.com/bhb27/proprietary_vendor_motorola/blob/N_Volte2/quark/quark-vendor.mk#L341-L365

:good:
 
Last edited: