• General
  • Carrier names or MNCs not shown

On my Pixel 8 (GOS), when I turn off automatic network selection, I get the following list of signals: "T-Mobile (Connected) T-Mobile, Roaming, Roaming.". On my Galaxy S20 (Android), I get "T-Mobile, AT&T, C Spire, Southern Linc, 3131000, Verizon, 310830."

What controls the displaying or not displaying of the names of the available carriers? The phone will only tell me that I'm roaming but CellMapper knows perfectly well the names of the MNCs it sees.

My question is, if GOS has access to the available MNCs and why they would withhold the information from the user if it's available? I understood GOS to be pro-user.

    DRNewcomb What controls the displaying or not displaying of the names of the available carriers?

    I think it's a mixture of code and data. I suspect in this case mostly data.

    DRNewcomb On my Pixel 8 (GOS), when I turn off automatic network selection, I get the following list of signals: "T-Mobile (Connected) T-Mobile, Roaming, Roaming.". On my Galaxy S20 (Android), I get "T-Mobile, AT&T, C Spire, Southern Linc, 3131000, Verizon, 310830" [...] The phone will only tell me that I'm roaming but CellMapper knows perfectly well the names of the MNCs it sees.

    I suspect the Galaxy has a carrier database from Samsung. My understanding is that the Pixel running GrapheneOS has a carrier database that is mostly from Google but with some tweaks. I don't know where CellMapper gets its database, but I suspect it's different from the Samsung database, the Google database, and the GrapheneOS database.

    DRNewcomb My question is, if GOS has access to the available MNCs and why they would withhold the information from the user if it's available? I understood GOS to be pro-user.

    I'm not sure what basis there is for jumping from "It doesn't display exactly what I want" to "Why would somebody withhold information from me?".

    The why is clear, it's the way that the carriers wanted it. They don't want their customers knowing what other signals are available and which ones can be roamed. This is why the phone manufacturers changed their phones' behavior to only show "Roaming" rather than the names or MNCs. There is an internal lookup table from MNC-to-name in the phone. Since, the OTA signal only provides MNC.

    This is such an anti-customer feature that I would have assumed that GOS would have been sure to have overridden it.

      DRNewcomb This is such an anti-customer feature that I would have assumed that GOS would have been sure to have overridden it.

      GrapheneOS is an AOSP fork that is focused on security and privacy. Though in this case it is not doing exactly what you would like, I am not perceiving a security or privacy risk.

      GrapheneOS is an open-source project, which doesn't have "customers" (see: On open source and "complaining to the manager").

      Again, my understanding is that the GrapheneOS carrier database is not primarily created by the GrapheneOS project; I think it is similar to the carrier database used by Google's stock OS on Pixels. I don't know where CellMapper's database comes from; their requirement that CellMapper users are non-commercial suggests CellMapper may have created their database themselves and may consider it to be proprietary.

      If CellMapper wished to create carrier information to the GrapheneOS project, that might well work out. Likewise, if interested GrapheneOS users are in a position to contribute carrier information, that might work out too.

      I seriously doubt the GrapheneOS project is "withholding" carrier information from users. And, because this does not appear to be a security or privacy issue, I'm also not surprised if the GrapheneOS project does not consider this to be a top priority. Finally, since it's an open-source project, those who have the ability to contribute to it may well bring about improvements.

      Please note that I do not speak for the GrapheneOS project.

        de0u GrapheneOS is an open-source project, which doesn't have "customers" (

        I was speaking as a customer of T-Mobile. I probably should have said "anti-user" as in "We strip out anti-user configuration requiring provisioning for tethering, forbidding disabling 2G, etc." Since GOS does concern themselves with "anti-user" configurations such as limitations on tethering & disabling 2G, I was hoping that other "anti-user" provisions, such as making the available carrier list unavailable, might attract some interest.

          DRNewcomb I was hoping that other "anti-user" provisions, such as making the available carrier list unavailable, might attract some interest.

          Is this a carrier restriction, or is it some other thing, like standard AOSP behavior? In your OP, you said that a Samsung device displayed the full list of available carriers. If a Samsung device displays the list, but GrapheneOS doesn't, I'd suspect the reason is Samsung made a change to display the list, not because they have chosen to ignore a carrier restriction. I'd suspect Samsung respects most if not all of the settings carriers push on their customers.

          DRNewcomb The why is clear, it's the way that the carriers wanted it. They don't want their customers knowing what other signals are available and which ones can be roamed. This is why the phone manufacturers changed their phones' behavior to only show "Roaming" rather than the names or MNCs.

          Do you have some inside information about what carriers want, or are you making an assumption?

          DRNewcomb if GOS has access to the available MNCs and why they would withhold the information from the user if it's available? I understood GOS to be pro-user.

          DRNewcomb This is such an anti-customer feature that I would have assumed that GOS would have been sure to have overridden it.

          DRNewcomb Since GOS does concern themselves with "anti-user" configurations such as limitations on tethering & disabling 2G, I was hoping that other "anti-user" provisions, such as making the available carrier list unavailable, might attract some interest.

          You're the first person I've seen who has asked about this, so I'm confident you're incorrect about how much other GrapheneOS users want this feature.

          As de0u pointed out, GrapheneOS is "an AOSP fork that is focused on security and privacy." It's not clear why you think a feature to display carrier names would be a priority for the project. Again, I think you're confusing differences between OSes as a carrier restriction without any evidence.

            other8026 Do you have some inside information about what carriers want, or are you making an assumption?

            Educated guess, based on over 25 years of watching carriers try to dumb-down GSM/3GPP phones, providing their customers more bells and whistles but fewer real options. There is no other explanation for the difference in behavior of the newer phone (2023) hiding the other carriers' names while the older phone (2020) displays them. It serves no other purpose than to keep the customers in the dark, which is the carriers' goal,

            • de0u replied to this.

              DRNewcomb There is no other explanation for the difference in behavior of the newer phone (2023) hiding the other carriers' names while the older phone (2020) displays them. It serves no other purpose than to keep the customers in the dark, which is the carriers' goal,

              Not every observable event occurs because of a "purpose", in the sense of a deliberate decision.

              The original post reported that the Samsung device reported two carriers by number rather than name: 3131000 and 310830. I tried looking them up on mcc-mnc.net; for 3131000 I didn't get a hit, and for 310830 I got Sprint. Is the suggestion that the Samsung device displayed Southern Linc but not Sprint because Samsung was somehow bowing to the dastardly desires of Southern Linc (or of Sprint)?

              Maybe the carrier database on the Samsung device just doesn't list Sprint because of an oversight, not because of a "purpose".

              Meanwhile, if "3131000" was a typo and what was observed was 313100 instead, mcc-mnc.net reports that as "FirstNet". I think FirstNet is a special carrier restricted to police, firefighters, etc., so perhaps Samsung left that one out because they didn't think lots of people would manually select roaming onto FirstNet (I suspect that just won't work, because the network is closed).

              I think there are lots of plausible explanations for the described phenomena.

              DRNewcomb I was hoping that other "anti-user" provisions, such as making the available carrier list unavailable, might attract some interest.

              I think if you have evidence that the GrapheneOS project is removing entries from a carrier list as part of their build process, or otherwise "withholding" carrier information, this would be a good time to present that evidence. Otherwise it might be a good time to retract your repeated claims that the GrapheneOS project is making available information unavailable.