• GeneralSolved
  • Settings for VoLTE/VoWiFi do not appear for TDC (Denmark)

I have a SIM card for Danish operator TDC (MCC=238, MNC=01). When I put that SIM into a stock Samsung Galaxy S10e running Android 12, the options for both VoLTE and VoWiFi appear and can be enabled.

When the same SIM card is put into Pixel 6 running GrapheneOS (SQ3A.220705.003.A1.2022070600), neither setting appears in the UI. Operator settings version is "default-34000000048.48", which I am interpreting as meaning that there are no carrier settings for this operator. Is this right?

Does this mean that operators such as TDC submit their carrier settings to downstream Android packagers such as Samsung and at the same time do not submit the settings to upstream Android and/or Google?

Please check using
* # * # 4636 # * # *
that VoLTE is provisioned. This does NOT have to be available to toggle but even greyed out is in the ON position.

If it is it should work if not this should be taken up with your carrier unless @flawedworld can add anything further.

The setting is in the off position. I believe that this is expected, given that the carrier settings are "generic" and 5G/VoLTE/VoWiFi need to be opted in via operator settings — unless I am misunderstanding how this works in Android.

Can the operator force (some of) those to be enabled over the air even when there are no settings in the phone side?

The fact that the same SIM works in Samsung phone makes me assume that the difference is that Samsung has the right operator settings but Graphene/Pixel don't, because the network is obviously the same for both. This makes me wonder how Samsung can ship with the settings if they are not in AOSP.

Am I missing something?

    lbschenkel my understanding is that if these toggles are off then the carrier needs to provision them for the device you are currently using. We have had people who have had them toggled on already and then the carrier settings needed to be updated to make it work but not the other way round.

    The dev I tagged is the carrier setting and config guru.

      MetropleX I'm still confused if provisioning can happen in lieu of lack of operator settings in the device.

      Assuming that provisioning can happen unilaterally by the carrier, even when the settings are absent in the device, does the fact that I don't see in on the Pixel 6 but see it on the Samsung device mean that the carrier is looking at the device IMEI, seeing that it is a Google Pixel, and refusing to provision VoLTE/IMS?

      Or: could it be that the lack of settings in the device is inhibiting the provisioning to happen? My understanding of how Android works is that these new features are strictly opt-in and must be present in the carrier settings for the device to activate them.

      Any clarification would be greatly appreciated.

      GrapheneOS only ships carrier profiles from the stock OS. We can only really provide support for carriers supported by Google on the stock OS.

        flawedworld Hi. I understand this and I have read the linked page multiple times. I am not asking for support. I am just hoping to get some clarification about how Android/GrapheneOS works in terms VoLTE/IMS provisioning because I'm a developer myself, and I like to understand how things work.

        I will restate my questions, I hope it helps:

        1. Does "default-34000000048.48" mean that Pixel does not have any specific operator settings for this carrier, and it is using generic defaults?
        2. In the absence of operator settings at the Android side, can a carrier unilaterally enable VoLTE/IMS anyway? Or are the settings absolutely required?
        3. If the carrier provisions VoLTE/IMS, but there are no operator settings enabling the respective flags (my understanding is that Android requires some flags in the operator settings to be enabled), would Android allow the respective settings to be enabled by the user?
        4. If VoLTE/IMS works in a Samsung phone, but not when the same SIM is in a Pixel, is that due to the former having operator settings not shipped with the later, or is this just because the carrier is doing something different based on IMEI? If it's due to settings, aren't they part of AOSP? Do carriers just send their settings to OEMs like Samsung but not Google and/or AOSP?

          lbschenkel responding as the issue has maintained my curiosity too if your settings are default, what are your APN settings? Have you tried checking the carriers latest to see if they match or you need to add another APN with them?

            MetropleX The APN settings are fine: 2 of them show up ("internet" and "mms") and they match what I can see in other phones and on the carrier website. I have no connectivity problem apart from the lack of VoLTE (controlled by "operator settings" in the phone and/or carrier provisioning over the network).

            As far as I know the APN settings and "operator settings" are not the same thing, but do enlighten me in case I am wrong.

              lbschenkel having searched around it would appear that this might explain the issue:

              https://forum.yousee.dk/mobil-og-telefoni-79/volte-paa-google-pixel-4a-106743

              I cant find Pixel listed. The only way to determine if this is correct would be to flash stock on the Pixel 6 and retest. Likely wont work still and you will need to take it up with TDC/Yousee. Also likely why there aren't any stock carrier settings for the Pixel too.

              Just reiterating that I am aware that stock won't work either and I'm not claiming that this is a downstream GrapheneOS bug. I just want to understand a bit better how this works on a lower level inside Android because I'm a naturally curious person. I hope that flawedworld can answer my questions above.

                lbschenkel

                1 - Yes

                2 - Yes but that doesn't mean the OS will use it

                3 - No, but this may vary

                4 - It working in another device is irrelevant. The OEM and the carrier need to collaborate and deploy relevant carrier settings for each respective device. It's not really part of AOSP, there are configs in AOSP, but that isn't complete.

                GrapheneOS just extracts the carrier config protobuf files which are used by the proprietary CarrierSettings app on the stock OS and converts them to the XML based carrierconfig format used by AOSP.

                  2 months later

                  flawedworld GrapheneOS just extracts the carrier config protobuf files which are used by the proprietary CarrierSettings app on the stock OS and converts them to the XML based carrierconfig format used by AOSP.

                  Just been searching around for VoWiFi issues and saw this thread.
                  Is there a copy of what's extracted and placed into carrierconfig somewhere?

                  • de0u replied to this.

                    in my country few providers support pixel phone while samsung is widely supported
                    depend if they have implemented the model

                    6 months later

                    Cancunia Is there a copy of what's extracted and placed into carrierconfig somewhere?

                    It looks as if maybe it's dynamically generated during the build process, as opposed to being in a repository somewhere. At least that's what I think based on the carriersettings-extractor README.