General [NO ROOT]SercrtCode to unlock all country 5G and VoLTE!!!

Search This thread

LLStarks

Senior Member
Jun 1, 2012
1,891
1,087
I found some other stuff. But it's not for the fainth of heart ;-)

In /product/etc/CarrierSettings directory you have .pb (protobuf) files which contain carrier info (read: https://source.android.com/devices/tech/config/carrierid). For example there are specific files for US networks (e.g. sprint_us.pb), networks in France (e.g. bouygues_fr.pb), networks in UK (e.g. ee_gb.pb). I would say these will be "fully" supported by Google. There are 130 files there.

Just as an example, here is the config for the bouygues_fr.pb (Bouygues network in France):

Code:
canonicalName: "bouygues_fr"
version: 30000000317
apns {
  apn {
    name: "Bouygues Telecom"
    value: "mmsbouygtel.com"
    type: DEFAULT
    type: SUPL
    type: MMS
    authtype: 1
    mmsc: "http://mms.bouyguestelecom.fr/mms/wapenc"
    protocol: IPV6
  }
  apn {
    name: "Bouygues Telecom IMS"
    value: "ims"
    type: IMS
    protocol: IPV4V6
    userVisible: false
  }
  apn {
    name: "Bouygues XCAP"
    value: "mmsbouygtel.com"
    type: XCAP
    bearerBitmask: "3|9|10|11|14|15|20"
    authtype: 1
    protocol: IPV6
  }
}
configs {
  config {
    key: "carrier_certificate_string_array"
    textArray {
      item: "A0058F6467628EA2031C4C9D8519ABECB2671F6A1752B15A89369CDCB8D2952B"
    }
  }
  config {
    key: "carrier_cross_sim_ims_available_bool"
    boolValue: false
  }
  config {
    key: "carrier_default_wfc_ims_mode_int"
    intValue: 1
  }
  config {
    key: "carrier_supports_ss_over_ut_bool"
    boolValue: true
  }
  config {
    key: "carrier_ussd_method_int"
    intValue: 2
  }
  config {
    key: "carrier_volte_available_bool"
    boolValue: true
  }
  config {
    key: "carrier_wfc_ims_available_bool"
    boolValue: true
  }
  config {
    key: "editable_wfc_mode_bool"
    boolValue: false
  }
  config {
    key: "iwlan.child_sa_rekey_hard_timer_sec_int"
    intValue: 7400
  }
  config {
    key: "iwlan.child_sa_rekey_soft_timer_sec_int"
    intValue: 7300
  }
  config {
    key: "iwlan.diffie_hellman_groups_int_array"
    intArray {
      item: 14
    }
  }
  config {
    key: "iwlan.ike_rekey_hard_timer_in_sec"
    intValue: 14800
  }
  config {
    key: "iwlan.ike_rekey_soft_timer_sec_int"
    intValue: 14700
  }
  config {
    key: "iwlan.key_error_policy_config_string"
    textValue: "[{\"ApnName\": \"*\",\"ErrorTypes\": [{\"ErrorType\": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"9000\", \"10000\"],\"RetryArray\": [\"0\", \"0\"],\"UnthrottlingEv
ents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT\", \"WIFI_CALLING_DISABLE_EVENT\"]}, {\"ErrorType\": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"1050
0\"],\"RetryArray\": [\"3600\", \"-1\"],\"UnthrottlingEvents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT\", \"WIFI_CALLING_DISABLE_EVENT\"]}, {\"ErrorType\
": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"11002\", \"11003\"],\"RetryArray\": [],\"UnthrottlingEvents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT
\", \"WIFI_CALLING_DISABLE_EVENT\"]}]}]"
  }
  config {
    key: "maxImageHeight"
    intValue: 1944
  }
  config {
    key: "maxImageWidth"
    intValue: 2592
  }
  config {
    key: "maxMessageSize"
    intValue: 614400
  }
  config {
    key: "show_4g_for_lte_data_icon_bool"
    boolValue: true
  }
  config {
    key: "supportHttpCharsetHeader"
    boolValue: false
  }
}

As you can see in the config part, it has an indication that VoLTE is available. And when it is available, it will show the 4G icon in the status bar (instead of the LTE icon). I know that this works, because I tested with my brother's SIM card which is on that exact network.

There is one file, called '/product/etc/CarrierSettings/others.pb' (on the phone) which has carrier specs for ALL other networks in the world. However, these specs seem to be rather minimal. Not all networks are even there (I am currently on Belgian Youfone which is missing from that file). I checked, for example, for the Proximus network in Belgium and there very little configuration, e.g. no indication of VoLTE (which I know is there).

Maybe - but I'm not 100% sure - network info can be added via these files.

I fiddled around with this others.pb file. First, decompile the .pb (protobuf) into text, then modify test, then recompile the text into pb (protobuf) format, then (using a Magisk bind mount) overwrite /etc/product/CarrierSettings/others.pb on the phone.

And tada, when I refreshed the APN info, my Youfone network and APN spec were there, automatically selected by the phone.

I'm not 100% sure, but maybe VoLTE/5G can be added as well through these files.

You need to do some research. First read the article: https://source.android.com/devices/tech/config/carrierid, this explains a bit how the Carrier pb files are

You will need the protoc tool (see https://github.com/protocolbuffers/protobuf). I downloaded the source and built it from source. It allows you to decompile/recompile the pb files, e.g. on Linux:

Code:
Decompile pb file into text:

> protoc -I. --decode=MultiCarrierSettings carriersettings.proto < ~/pixel/raven-sd1a.210817.037/mnt/product/etc/CarrierSettings/others.pb > out.txt

The carriersettings.proto file can be downloaded from: https://github.com/daradib/carriersettings-extractor

Then edit the out.txt file, modify/add your network details, remove the last 3 lines of the file (some sort of version indicator I'm guessing), finally recompile into protobuf using:

Code:
Recompile text file into protobuf:

> cat out.txt | protoc --encode=MultiCarrierSettings carriersettings.proto > others.pb

You will need a Magisk module to 'replace' the others.pb file on your phone. Module is attached, download it (the original phone's 'other.pb' file is in there).

First, unzip it, then copy YOUR modified pb file, then re-zip it.

Code:
> cd temp
> unzip ~/replaceotherspb.zip
> cp mymodifiedpbfile.pb system/product/etc/CarrierSettings/others.pb
> zip -r ~/mymagisk.zip .
> adb push ~/mymagisk.zip /sdcard/

Then install the module mymagisk.zip using the Magisk app. Go to settings > network > your SIM > access points, tap the 3 dots and 'refresh'. Your modified carrier details should be loaded now.

Again, I'm absolutely not an expert in this ... so can't really support ... I'm not even sure if this will allow you to activate VoLTE/5G, but worth a try. Good luck.
I'm looking to replace tmobile_us with the version from 13 DP1. Making a magisk module that replaces that file doesn't seem to work or enable the Vo5G/VoNR toggle. Do I need to overwrite additional files?
 

foobar66

Senior Member
Jan 8, 2011
2,084
2,146
Brussels
Google Pixel 6 Pro
I'm looking to replace tmobile_us with the version from 13 DP1. Making a magisk module that replaces that file doesn't seem to work or enable the Vo5G/VoNR toggle. Do I need to overwrite additional files?
Are you 100% sure that the replaced file on the Magisk module is actually the one which you changed?
It works for sure for me (./system/product/etc/CarrierSettings/others.pb) as I added an APN which appears correctly in Settings > Network > SIM > Access point names.

I don't have Vo5G/VoNR (I don't even know what VoNR is to be honest) so would not be able to check/test. However, you may also need to look at the xml file in /data/user_de/0/com.android.phone/files/carrierconfig-com.google.android.carrier-8932002100401134483-1365.xml (actual file name will differ for your network).

It could be that you have to add some additional settings to that file as well. There is an explanation of those settings here: https://developer.android.com/reference/android/telephony/CarrierConfigManager.

Hope this help ... let us know how far you get ...
 

LLStarks

Senior Member
Jun 1, 2012
1,891
1,087
/data/user_de/0/com.android.phone/

That directory doesn't exist.

Edit: Nvm
 
Last edited:

andreipaval

Senior Member
Jul 13, 2010
248
29
HTC U11+
Nokia 1
Does changing "data/user_de/0/com.android.phone/files/carrierconfig-com.google.android.carrier-8932002100401134483-1365.xml" work for you now ?
For me after the March patch, changing that file did not activate VoLTE and VoWifi anymore. Previously they worked.
 

fuadhdmini

Senior Member
Oct 16, 2010
498
103
Xiaomi Mi 10
Google Pixel 5
I found some other stuff. But it's not for the fainth of heart ;-)

In /product/etc/CarrierSettings directory you have .pb (protobuf) files which contain carrier info (read: https://source.android.com/devices/tech/config/carrierid). For example there are specific files for US networks (e.g. sprint_us.pb), networks in France (e.g. bouygues_fr.pb), networks in UK (e.g. ee_gb.pb). I would say these will be "fully" supported by Google. There are 130 files there.

Just as an example, here is the config for the bouygues_fr.pb (Bouygues network in France):

Code:
canonicalName: "bouygues_fr"
version: 30000000317
apns {
  apn {
    name: "Bouygues Telecom"
    value: "mmsbouygtel.com"
    type: DEFAULT
    type: SUPL
    type: MMS
    authtype: 1
    mmsc: "http://mms.bouyguestelecom.fr/mms/wapenc"
    protocol: IPV6
  }
  apn {
    name: "Bouygues Telecom IMS"
    value: "ims"
    type: IMS
    protocol: IPV4V6
    userVisible: false
  }
  apn {
    name: "Bouygues XCAP"
    value: "mmsbouygtel.com"
    type: XCAP
    bearerBitmask: "3|9|10|11|14|15|20"
    authtype: 1
    protocol: IPV6
  }
}
configs {
  config {
    key: "carrier_certificate_string_array"
    textArray {
      item: "A0058F6467628EA2031C4C9D8519ABECB2671F6A1752B15A89369CDCB8D2952B"
    }
  }
  config {
    key: "carrier_cross_sim_ims_available_bool"
    boolValue: false
  }
  config {
    key: "carrier_default_wfc_ims_mode_int"
    intValue: 1
  }
  config {
    key: "carrier_supports_ss_over_ut_bool"
    boolValue: true
  }
  config {
    key: "carrier_ussd_method_int"
    intValue: 2
  }
  config {
    key: "carrier_volte_available_bool"
    boolValue: true
  }
  config {
    key: "carrier_wfc_ims_available_bool"
    boolValue: true
  }
  config {
    key: "editable_wfc_mode_bool"
    boolValue: false
  }
  config {
    key: "iwlan.child_sa_rekey_hard_timer_sec_int"
    intValue: 7400
  }
  config {
    key: "iwlan.child_sa_rekey_soft_timer_sec_int"
    intValue: 7300
  }
  config {
    key: "iwlan.diffie_hellman_groups_int_array"
    intArray {
      item: 14
    }
  }
  config {
    key: "iwlan.ike_rekey_hard_timer_in_sec"
    intValue: 14800
  }
  config {
    key: "iwlan.ike_rekey_soft_timer_sec_int"
    intValue: 14700
  }
  config {
    key: "iwlan.key_error_policy_config_string"
    textValue: "[{\"ApnName\": \"*\",\"ErrorTypes\": [{\"ErrorType\": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"9000\", \"10000\"],\"RetryArray\": [\"0\", \"0\"],\"UnthrottlingEv
ents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT\", \"WIFI_CALLING_DISABLE_EVENT\"]}, {\"ErrorType\": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"1050
0\"],\"RetryArray\": [\"3600\", \"-1\"],\"UnthrottlingEvents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT\", \"WIFI_CALLING_DISABLE_EVENT\"]}, {\"ErrorType\
": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"11002\", \"11003\"],\"RetryArray\": [],\"UnthrottlingEvents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT
\", \"WIFI_CALLING_DISABLE_EVENT\"]}]}]"
  }
  config {
    key: "maxImageHeight"
    intValue: 1944
  }
  config {
    key: "maxImageWidth"
    intValue: 2592
  }
  config {
    key: "maxMessageSize"
    intValue: 614400
  }
  config {
    key: "show_4g_for_lte_data_icon_bool"
    boolValue: true
  }
  config {
    key: "supportHttpCharsetHeader"
    boolValue: false
  }
}

As you can see in the config part, it has an indication that VoLTE is available. And when it is available, it will show the 4G icon in the status bar (instead of the LTE icon). I know that this works, because I tested with my brother's SIM card which is on that exact network.

There is one file, called '/product/etc/CarrierSettings/others.pb' (on the phone) which has carrier specs for ALL other networks in the world. However, these specs seem to be rather minimal. Not all networks are even there (I am currently on Belgian Youfone which is missing from that file). I checked, for example, for the Proximus network in Belgium and there very little configuration, e.g. no indication of VoLTE (which I know is there).

Maybe - but I'm not 100% sure - network info can be added via these files.

I fiddled around with this others.pb file. First, decompile the .pb (protobuf) into text, then modify test, then recompile the text into pb (protobuf) format, then (using a Magisk bind mount) overwrite /etc/product/CarrierSettings/others.pb on the phone.

And tada, when I refreshed the APN info, my Youfone network and APN spec were there, automatically selected by the phone.

I'm not 100% sure, but maybe VoLTE/5G can be added as well through these files.

You need to do some research. First read the article: https://source.android.com/devices/tech/config/carrierid, this explains a bit how the Carrier pb files are

You will need the protoc tool (see https://github.com/protocolbuffers/protobuf). I downloaded the source and built it from source. It allows you to decompile/recompile the pb files, e.g. on Linux:

Code:
Decompile pb file into text:

> protoc -I. --decode=MultiCarrierSettings carriersettings.proto < ~/pixel/raven-sd1a.210817.037/mnt/product/etc/CarrierSettings/others.pb > out.txt

The carriersettings.proto file can be downloaded from: https://github.com/daradib/carriersettings-extractor

Then edit the out.txt file, modify/add your network details, remove the last 3 lines of the file (some sort of version indicator I'm guessing), finally recompile into protobuf using:

Code:
Recompile text file into protobuf:

> cat out.txt | protoc --encode=MultiCarrierSettings carriersettings.proto > others.pb

You will need a Magisk module to 'replace' the others.pb file on your phone. Module is attached, download it (the original phone's 'other.pb' file is in there).

First, unzip it, then copy YOUR modified pb file, then re-zip it.

Code:
> cd temp
> unzip ~/replaceotherspb.zip
> cp mymodifiedpbfile.pb system/product/etc/CarrierSettings/others.pb
> zip -r ~/mymagisk.zip .
> adb push ~/mymagisk.zip /sdcard/

Then install the module mymagisk.zip using the Magisk app. Go to settings > network > your SIM > access points, tap the 3 dots and 'refresh'. Your modified carrier details should be loaded now.

Again, I'm absolutely not an expert in this ... so can't really support ... I'm not even sure if this will allow you to activate VoLTE/5G, but worth a try. Good luck.
meaning, if able to use this module, our carrier is now as if natively supported by Pixel? no longer need for magisk module for volte switch?
 

reas0n

Senior Member
Dec 23, 2010
1,786
1,350
Google Pixel 6
hi, we just opened a bounty for anyone who unlocks 5G for not officially supported countries. Feel free to take a look here for details
 
  • Like
Reactions: ibrahim52 and HSOC

spinoza23

Senior Member
Apr 27, 2012
580
162
Doral, FL
Does changing "data/user_de/0/com.android.phone/files/carrierconfig-com.google.android.carrier-8932002100401134483-1365.xml" work for you now ?
For me after the March patch, changing that file did not activate VoLTE and VoWifi anymore. Previously they worked.
It works for me on Android 12 April update and in android 13 developer preview 2...
You are doing something wrong...
 

heij20032003

Member
Mar 23, 2009
15
5
hi all,

I have rooted the phone and flash the module VoEnabler and other modules for Pixel 5a.
After checking *#*#4636#*#*, VoLTE provisions button is on, but grey in colour.
VoLTE or VoWfi is not available yet for use.

In the past, people need to change the mbn file for the activation. is this still the case for Pixel 6 Pro?
 
  • Like
Reactions: Utini

billybobjones

Senior Member
Jun 2, 2008
230
57
so if i enable the volte switch for some reason if people call me from this one specific telco i never receive their call even though on their end it shows as ringing. i was forced to disable it
 

liggerz87

Senior Member
May 11, 2013
387
100
I'm paying £20 for unlimited data with Smarty Mobile (UK) and get 5G on my mobile router but only 4G on my phone because of Google still not certifying it on the network 🤬
Yep it's stupid google don't support smarty which is owned by three and uses exactly the same network I saw someone post about it on mse money saving expert website
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    Hey guys, here is a tuto that worked for several of us :
  • 11
    What should we do with this file?

    Seeing that this user has only posted 12 messages, I'm guessing this was among their first 10. Last I remember, XDA requires 10 messages to be posted by a user in order to get some kind of further permissions, although I don't remember what, although that was back on the old forum software. These days there are also achievements to get "XP" and "levels", and that might've been one.

    Long story medium, the user likely posted nearly useless information to get their post-count up to 10. As his only useful comment says in the OP "no thanks". :) I'm not even downloading something that I don't know what I'm expecting, much less looking in the zip or doing anything else, and some of the settings accessible via the dialer code are likely dangerous unless you know exactly what you're doing, so without actual instructions detailing what the code has to do with the title of the thread, I wouldn't bother.

    I'm tempted to report the thread. Normally I wouldn't bother as this kind of thread from new users is a dime a dozen but it's pretty blatantly a misleading thread title without more information, and with no description of what the file is supposed to be, and the only words in the OP being "no thanks" just screams "what the bloody hell" to me.

    [/rant] :D

    *#*#0702#*#*

    no thanks
    10
    I found some other stuff. But it's not for the fainth of heart ;-)

    In /product/etc/CarrierSettings directory you have .pb (protobuf) files which contain carrier info (read: https://source.android.com/devices/tech/config/carrierid). For example there are specific files for US networks (e.g. sprint_us.pb), networks in France (e.g. bouygues_fr.pb), networks in UK (e.g. ee_gb.pb). I would say these will be "fully" supported by Google. There are 130 files there.

    Just as an example, here is the config for the bouygues_fr.pb (Bouygues network in France):

    Code:
    canonicalName: "bouygues_fr"
    version: 30000000317
    apns {
      apn {
        name: "Bouygues Telecom"
        value: "mmsbouygtel.com"
        type: DEFAULT
        type: SUPL
        type: MMS
        authtype: 1
        mmsc: "http://mms.bouyguestelecom.fr/mms/wapenc"
        protocol: IPV6
      }
      apn {
        name: "Bouygues Telecom IMS"
        value: "ims"
        type: IMS
        protocol: IPV4V6
        userVisible: false
      }
      apn {
        name: "Bouygues XCAP"
        value: "mmsbouygtel.com"
        type: XCAP
        bearerBitmask: "3|9|10|11|14|15|20"
        authtype: 1
        protocol: IPV6
      }
    }
    configs {
      config {
        key: "carrier_certificate_string_array"
        textArray {
          item: "A0058F6467628EA2031C4C9D8519ABECB2671F6A1752B15A89369CDCB8D2952B"
        }
      }
      config {
        key: "carrier_cross_sim_ims_available_bool"
        boolValue: false
      }
      config {
        key: "carrier_default_wfc_ims_mode_int"
        intValue: 1
      }
      config {
        key: "carrier_supports_ss_over_ut_bool"
        boolValue: true
      }
      config {
        key: "carrier_ussd_method_int"
        intValue: 2
      }
      config {
        key: "carrier_volte_available_bool"
        boolValue: true
      }
      config {
        key: "carrier_wfc_ims_available_bool"
        boolValue: true
      }
      config {
        key: "editable_wfc_mode_bool"
        boolValue: false
      }
      config {
        key: "iwlan.child_sa_rekey_hard_timer_sec_int"
        intValue: 7400
      }
      config {
        key: "iwlan.child_sa_rekey_soft_timer_sec_int"
        intValue: 7300
      }
      config {
        key: "iwlan.diffie_hellman_groups_int_array"
        intArray {
          item: 14
        }
      }
      config {
        key: "iwlan.ike_rekey_hard_timer_in_sec"
        intValue: 14800
      }
      config {
        key: "iwlan.ike_rekey_soft_timer_sec_int"
        intValue: 14700
      }
      config {
        key: "iwlan.key_error_policy_config_string"
        textValue: "[{\"ApnName\": \"*\",\"ErrorTypes\": [{\"ErrorType\": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"9000\", \"10000\"],\"RetryArray\": [\"0\", \"0\"],\"UnthrottlingEv
    ents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT\", \"WIFI_CALLING_DISABLE_EVENT\"]}, {\"ErrorType\": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"1050
    0\"],\"RetryArray\": [\"3600\", \"-1\"],\"UnthrottlingEvents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT\", \"WIFI_CALLING_DISABLE_EVENT\"]}, {\"ErrorType\
    ": \"IKE_PROTOCOL_ERROR_TYPE\",\"ErrorDetails\": [\"11002\", \"11003\"],\"RetryArray\": [],\"UnthrottlingEvents\": [\"APM_ENABLE_EVENT\", \"WIFI_DISABLE_EVENT\", \"WIFI_AP_CHANGED_EVENT
    \", \"WIFI_CALLING_DISABLE_EVENT\"]}]}]"
      }
      config {
        key: "maxImageHeight"
        intValue: 1944
      }
      config {
        key: "maxImageWidth"
        intValue: 2592
      }
      config {
        key: "maxMessageSize"
        intValue: 614400
      }
      config {
        key: "show_4g_for_lte_data_icon_bool"
        boolValue: true
      }
      config {
        key: "supportHttpCharsetHeader"
        boolValue: false
      }
    }

    As you can see in the config part, it has an indication that VoLTE is available. And when it is available, it will show the 4G icon in the status bar (instead of the LTE icon). I know that this works, because I tested with my brother's SIM card which is on that exact network.

    There is one file, called '/product/etc/CarrierSettings/others.pb' (on the phone) which has carrier specs for ALL other networks in the world. However, these specs seem to be rather minimal. Not all networks are even there (I am currently on Belgian Youfone which is missing from that file). I checked, for example, for the Proximus network in Belgium and there very little configuration, e.g. no indication of VoLTE (which I know is there).

    Maybe - but I'm not 100% sure - network info can be added via these files.

    I fiddled around with this others.pb file. First, decompile the .pb (protobuf) into text, then modify test, then recompile the text into pb (protobuf) format, then (using a Magisk bind mount) overwrite /etc/product/CarrierSettings/others.pb on the phone.

    And tada, when I refreshed the APN info, my Youfone network and APN spec were there, automatically selected by the phone.

    I'm not 100% sure, but maybe VoLTE/5G can be added as well through these files.

    You need to do some research. First read the article: https://source.android.com/devices/tech/config/carrierid, this explains a bit how the Carrier pb files are

    You will need the protoc tool (see https://github.com/protocolbuffers/protobuf). I downloaded the source and built it from source. It allows you to decompile/recompile the pb files, e.g. on Linux:

    Code:
    Decompile pb file into text:
    
    > protoc -I. --decode=MultiCarrierSettings carriersettings.proto < ~/pixel/raven-sd1a.210817.037/mnt/product/etc/CarrierSettings/others.pb > out.txt

    The carriersettings.proto file can be downloaded from: https://github.com/daradib/carriersettings-extractor

    Then edit the out.txt file, modify/add your network details, remove the last 3 lines of the file (some sort of version indicator I'm guessing), finally recompile into protobuf using:

    Code:
    Recompile text file into protobuf:
    
    > cat out.txt | protoc --encode=MultiCarrierSettings carriersettings.proto > others.pb

    You will need a Magisk module to 'replace' the others.pb file on your phone. Module is attached, download it (the original phone's 'other.pb' file is in there).

    First, unzip it, then copy YOUR modified pb file, then re-zip it.

    Code:
    > cd temp
    > unzip ~/replaceotherspb.zip
    > cp mymodifiedpbfile.pb system/product/etc/CarrierSettings/others.pb
    > zip -r ~/mymagisk.zip .
    > adb push ~/mymagisk.zip /sdcard/

    Then install the module mymagisk.zip using the Magisk app. Go to settings > network > your SIM > access points, tap the 3 dots and 'refresh'. Your modified carrier details should be loaded now.

    Again, I'm absolutely not an expert in this ... so can't really support ... I'm not even sure if this will allow you to activate VoLTE/5G, but worth a try. Good luck.
    9
    *#*#0702#*#*

    no thanks
    8
    If someone manages to unlock VoLTE/VoWifi via this method it will trully be a game changer. There are a lot of people owning this phone outside of the supported countries that are flooding the Pixel Support forums regarding this issue.

    I, for one, am willing to also donate for the person who manages this. Let's hope it can be done, thanks!