Closed
Bug 875484
Opened 12 years ago
Closed 12 years ago
MCC / MNC between Carrier (SIM card) and Operator (mobile network connection/antenna) values are getting mixed up when roaming.
Categories
(Firefox OS Graveyard :: General, defect)
Tracking
(Not tracked)
RESOLVED
INVALID
People
(Reporter: nhirata, Assigned: edgar)
Details
(Whiteboard: dev-doc-needed)
Attachments
(2 files)
Gecko http://hg.mozilla.org/releases/mozilla-b2g18_v1_0_1/rev/a3a49f8d101e
Gaia 09299399500b50de72cdd3b4365fc6455bbbb145
BuildID 20130522070210
Version 18.0
1. plug in Movistar SIM into a phone in the US
2. reboot phone
3. do:
adb logcat | grep -E 'MCC|MNC'
- waiting for device -
D/ICCIO_QC_B2G( 112): MCC = 214, MNC = 07
D/ICCIO_QC_B2G( 112): MCC = 214, MNC = 07
4. look at logcat
05-23 13:28:05.129: I/Gecko(112): -*- QCContentHelper_QC_B2G: sendMessage to content process: RIL:DataInfoChanged{connected : false,emergencyCallsOnly : false,roaming : true,type : 'edge',signalStrength : -99,relSignalStrength : 22,network : {mcc : '310', mnc : '260', longName : 'T-Mobile', shortName : 'T-Mobile'},cell : {gsmLocationAreaCode : 275, gsmCellId :23991},state : 'registered'}
Expected: logcat MCC value and MNC values should match
Actual: they don't.
Note:
1. Settings shows : T-Mobile even though I'm using a Movistar SIM.
2. It would be good to show both the network operator and SIM carrier values somewhere; having said that these values for MCC and MNC should be consistant.
Hi, Naoki-san
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #0)
> 1. plug in Movistar SIM into a phone in the US
> 2. reboot phone
> 3. do:
> adb logcat | grep -E 'MCC|MNC'
> - waiting for device -
> D/ICCIO_QC_B2G( 112): MCC = 214, MNC = 07
> D/ICCIO_QC_B2G( 112): MCC = 214, MNC = 07
This is the MCC/MNC from SIM card.
Wherever you go around the world, these values are always 214/07 because they come from you SIMc ard.
> 4. look at logcat
> 05-23 13:28:05.129: I/Gecko(112): -*- QCContentHelper_QC_B2G: sendMessage to
> content process: RIL:DataInfoChanged{connected : false,emergencyCallsOnly :
> false,roaming : true,type : 'edge',signalStrength : -99,relSignalStrength :
> 22,network : {mcc : '310', mnc : '260', longName : 'T-Mobile', shortName :
> 'T-Mobile'},
This is the MCC/MNC from network operator
Also you are in roaming,
so now you're in US, you will get MCC/MNC from T-Mobile,
if you go to another country, you will get another set of MCC/MNC from the local operator.
>
> Expected: logcat MCC value and MNC values should match
> Actual: they don't.
>
Did I misunderstand your question?
Otherwise I think they are not neccesary to be the same.
> Note:
> 1. Settings shows : T-Mobile even though I'm using a Movistar SIM.
> 2. It would be good to show both the network operator and SIM carrier values
> somewhere;
There's a SPN (Service Provider Name from the SIM card) field, in this case, Movistar.
Under some condition we should display SPN instead of operator name to the User.
But if you're in roaming mode, operator name will always be displayed.
Comment 2•12 years ago
|
||
Can we confirm if this a bug or not?
Flags: needinfo?(nhirata.bugzilla)
Whiteboard: [tef-triage]
Comment 3•12 years ago
|
||
Krupa - in triage it was discussed that the true bug here (and user impact) is in marketplace/cost control apps which would use the same source of info as we pull from logcat on commercial RIL. Can you confirm if this is true and also what the impact is when the info does not match?
Flags: needinfo?(krupa.mozbugs)
| Reporter | ||
Comment 4•12 years ago
|
||
The problem is as krupa/lsblakk have pointed out.
I am also confused, you mean the MCC/MNC can equal the SPN in when the phone is roaming in a different country?
What I am seeing is that in the same session (ie you boot the phone and do both commands), MCC/MNC have different values depending on where you look. I think that in itself is a bug.
Unforuntately I forgot the SIM card at home, so I will have to test when I get back home.
Flags: needinfo?(nhirata.bugzilla)
| Reporter | ||
Updated•12 years ago
|
Flags: needinfo?(nhirata.bugzilla)
| Reporter | ||
Comment 5•12 years ago
|
||
* Unagi Master/MozCen 2013-05-28-03-11-00_MC_unagi mozril:
** logcat :
05-28 10:38:54.872: I/Gecko(398): -*- RILContentHelper: Received message 'RIL:DataInfoChanged': {"connected":false,"emergencyCallsOnly":false,"roaming":true,"network":{"rilMessageType":"operatorchange","mcc":"310","mnc":"260","longName":"T-Mobile","shortName":"T-Mobile","batch":true},"lastKnownMcc":null,"cell":{"gsmLocationAreaCode":258,"gsmCellId":22871},"type":"edge","signalStrength":-71,"relSignalStrength":67,"state":"registered"}
** adb logcat | grep -E 'MCC|MNC' :
API : I/Gecko ( 108): RIL Worker[0]: MCC: 214 MNC: 07
* unagi-mozilla-b2g18-20130528070209-ril01.01.00.019.109 :
** logcat :
05-28 10:53:26.567: I/Gecko(440): -*- RILContentHelper: Received message 'RIL:DataInfoChanged': {"connected":false,"emergencyCallsOnly":false,"roaming":true,"type":"edge","signalStrength":-73,"relSignalStrength":64,"network":{"mcc":"310","mnc":"260","longName":"T-Mobile","shortName":"T-Mobile"},"cell":{"gsmLocationAreaCode":258,"gsmCellId":22871},"state":"registered"}
** adb logcat | grep -E 'MCC|MNC' :
D/ICCIO_QC_B2G( 1691): MCC = 214, MNC = 07
* Inari Partner Build:
** 05-28 11:08:24.243: I/Gecko(113): -*- QCContentHelper_QC_B2G: sendMessage to content process: RIL:DataInfoChanged{connected : false,emergencyCallsOnly : false,roaming : true,type : 'hspa',signalStrength : -75,relSignalStrength : 61,network : {mcc : '310', mnc : '260', longName : 'T-Mobile', shortName : 'T-Mobile'},cell : {gsmLocationAreaCode : 40497, gsmCellId :19945821},state : 'registered'}
** API doesn't seem to be in this build?
https://bugzilla.mozilla.org/show_bug.cgi?id=828307#c65
This issue appears in all builds. Commercial, non commercial and will most likely appear in partner build.
Flags: needinfo?(nhirata.bugzilla)
Comment 6•12 years ago
|
||
The MCC and MNC codes in the SIM never changes. The ones from both the voice and data connection change when the user is in roaming. This is not a bug.
Comment 7•12 years ago
|
||
Marking invalid then according to comment 6
Status: NEW → RESOLVED
blocking-b2g: tef? → -
Closed: 12 years ago
Flags: needinfo?(krupa.mozbugs)
Resolution: --- → INVALID
Whiteboard: [tef-triage]
| Reporter | ||
Comment 8•12 years ago
|
||
Android shows the network connecting to T-Mobile, however the MCC / MNC is movistar.
APN on android shows Movistar, Movistar MMS:
01-06 09:38:46.590: I/IccUtils(2218): [MccMncConvert] Convert Result :21407
01-06 09:38:47.155: D/Mms/MmsApp(2408): [start] onConfigurationChanged(),newConfig={1.0 214mcc7mnc en_US layoutdir=0 sw320dp w320dp h508dp nrml long port finger -keyb/v/h -nav/h s.5 FlipFont=0}
01-06 09:38:47.155: D/Mms/MmsApp(2408): [end] onConfigurationChanged(),newConfig={1.0 214mcc7mnc en_US layoutdir=0 sw320dp w320dp h508dp nrml long port finger -keyb/v/h -nav/h s.5 FlipFont=0}
01-06 09:40:56.850: I/ActivityManager(1982): Config changed: {1.0 214mcc7mnc en_US layoutdir=0 sw320dp w533dp h294dp nrml long land finger -keyb/v/h -nav/h s.6 FlipFont=0}
01-06 09:40:58.235: I/ActivityManager(1982): Config changed: {1.0 214mcc7mnc en_US layoutdir=0 sw320dp w320dp h508dp nrml long port finger -keyb/v/h -nav/h s.7 FlipFont=0}
01-06 09:41:02.435: I/ActivityManager(1982): Config changed: {1.0 214mcc7mnc en_US layoutdir=0 sw320dp w533dp h294dp nrml long land finger -keyb/v/h -nav/h s.8 FlipFont=0}
Available networks show:
T-Mobile
AT&T
I believe that this is a bug. Having the values confused based on the network operator may cause future bugs based on roaming.
Status: RESOLVED → REOPENED
Resolution: INVALID → ---
| Reporter | ||
Updated•12 years ago
|
blocking-b2g: - → tef?
| Reporter | ||
Updated•12 years ago
|
Summary: MCC / MNC between Carrier (SIM card) and Operator (mobile network connection/antenna) values are getting mixed up. → MCC / MNC between Carrier (SIM card) and Operator (mobile network connection/antenna) values are getting mixed up when roaming.
Comment 9•12 years ago
|
||
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #8)
> Android shows the network connecting to T-Mobile, however the MCC / MNC is
> movistar.
There is no anything wrong here. The SIM reports its MCC and MNC codes (Movistar's ones) and the device is connected to a T-Mobile Network (since you are in US).
> APN on android shows Movistar, Movistar MMS:
That's correct because the subscriber's SIM belongs to Movistar.
> Available networks show:
> T-Mobile
> AT&T
Are you expecting to see the Movistar Network in the US?
> I believe that this is a bug. Having the values confused based on the
> network operator may cause future bugs based on roaming.
I don't see anything wrong here. Why do you think this is a bug? The values are not confused. This is how it is supposed to work.
| Reporter | ||
Comment 11•12 years ago
|
||
I think this is a bug because of this return value in logcat: {"mcc":"310","mnc":"260","longName":"T-Mobile","shortName":"T-Mobile"}
Android returns the correct value :
214mcc7mnc
Flags: needinfo?(nhirata.bugzilla)
Comment 12•12 years ago
|
||
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #11)
> I think this is a bug because of this return value in logcat:
> {"mcc":"310","mnc":"260","longName":"T-Mobile","shortName":"T-Mobile"}
I guess this is the voice or data connection. I would need to see the context in which logcat is showing this.
> Android returns the correct value :
> 214mcc7mnc
Could you provide both the full |adb logcat| (RIL log activated if possible) and the |adb logcat -b radio| outputs please?
| Reporter | ||
Comment 13•12 years ago
|
||
Here is the |adb logcat -b radio| from the android device.
They store the Network Operator in SS (Service State) and override the Service State for roaming. They do not change the MCC/MNC as far as I can tell from the log.
Comment 14•12 years ago
|
||
José, with Naoki's logs, do you think should be a blocker?
Flags: needinfo?(josea.olivera)
Comment 15•12 years ago
|
||
(In reply to Andrew Overholt [:overholt] from comment #14)
> José, with Naoki's logs, do you think should be a blocker?
I would need the |adb logcat| output from a device on B2G.
From what I see in the Android logs the MCC and MNC codes in the SIM corresponds to a subscriber's SIM from Movistar.
> I think this is a bug because of this return value in logcat:
> {"mcc":"310","mnc":"260","longName":"T-Mobile","shortName":"T-Mobile"}
Why is this a bug?. We show in the logs the MCC and MNC codes from the voice connection, the data connection and the SIM. So maybe you are seeing the ones coming from the voice connection (that are from T-Mobile since you are in roaming in the US) Please, provide the full log (from a device on B2G) and that way we can know the context from the info above.
Flags: needinfo?(josea.olivera)
Updated•12 years ago
|
Flags: needinfo?(nhirata.bugzilla)
| Reporter | ||
Comment 16•12 years ago
|
||
It's a bug because if new dev are not aware of the difference between voice and card, they may end up thinking that it's the same thing when it's not. Android has variables that are different so that there is no confusion.
Flags: needinfo?(nhirata.bugzilla)
| Reporter | ||
Updated•12 years ago
|
blocking-b2g: tef? → -
| Reporter | ||
Comment 17•12 years ago
|
||
Also for troubleshooting purposes, it's also misleading and confusing.
The logcat is seen in the very first comment.
| Reporter | ||
Comment 18•12 years ago
|
||
logcat of movistar SIM.
| Reporter | ||
Updated•12 years ago
|
Attachment #757954 -
Attachment description: logcat → logcat of movistar SIM in b2g device
Comment 19•12 years ago
|
||
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #16)
> It's a bug because if new dev are not aware of the difference between voice
> and card, they may end up thinking that it's the same thing when it's not.
New devs should take a look at API specs when coding and IMHO (in this case) the documentation provided in mozMobileConnection API (see [1]) is clear enough.
> Android has variables that are different so that there is no confusion.
IMHO logs are clear enough as well:
06-04 17:37:00.299: I/Gecko(146): -*- QCContentHelper_QC_B2G: sendMessage to content process: RIL:VoiceInfoChanged{connected : true,emergencyCallsOnly : false,roaming : true,type : 'unknown',signalStrength : -99,relSignalStrength : 40,network : {mcc : 310, mnc :260, longName : 'T-Mobile', shortName : 'T-Mobile'},cell : {gsmLocationAreaCode : 275, gsmCellId :23991},state : 'registered'}
06-04 17:37:00.299: I/Gecko(146): -*- QCContentHelper_QC_B2G: sendMessage to content process: RIL:DataInfoChanged{connected : false,emergencyCallsOnly : false,roaming : true,type : 'unknown',signalStrength : -99,relSignalStrength : 40,network : {mcc : 310, mnc :260, longName : 'T-Mobile', shortName : 'T-Mobile'},cell : {gsmLocationAreaCode : 275, gsmCellId :23991},state : 'searching'}
06-04 17:37:00.409: I/Gecko(465): -*- RILContentHelper: Received message 'RIL:IccInfoChanged': {"iccid":"8934077100001208576","mcc":214,"mnc":7,"msisdn":null,"spn":null,"isDisplayNetworkNameRequired":true,"isDisplaySpnRequired":false}
So this bug is not a matter of malfunction but a nice-to-have improvement in way the info is logged by the RIL, isn't it? WORKSFORME?
[1] http://mxr.mozilla.org/mozilla-central/source/dom/network/interfaces/nsIDOMMobileConnection.idl
| Reporter | ||
Comment 20•12 years ago
|
||
I agree to place it down in priority, having said that it is not a WFM.
The logcat showing 2 different mcc/mnc causes an issue.
This can also be seen in the code when searching for mcc/mnc when we should use a different variable such as what android uses service state.
Due to this issue, the potential to use the wrong mcc/mnc for coding or diagnosing support issues is likely and a bug won't be noticed until the phone is in roaming in a different network.
Comment 21•12 years ago
|
||
Team -
What's the next step on this? Who needs to fix?
Marketplace app devs need to be able to readily identify the correct mcc/mnc value in order to display the regional Marketplace accurately.
Caitlin
blocking-b2g: - → koi?
Comment 22•12 years ago
|
||
team - emailed over this with clee
mcc / mnc is a really big deal for marketplace
we've promised carriers and oems a way to show regional content and we use mcc / mnc on devise in order to do that
we have a hack in place for launch for wave 1 launches, but the hack is really easy to break during the build cycle and is not a permanent solution
noming to leo+
blocking-b2g: koi? → leo?
Updated•12 years ago
|
blocking-b2g: leo? → leo+
Updated•12 years ago
|
Assignee: nobody → kchang
Comment 23•12 years ago
|
||
There is no bug here. We print out several mcc/mnc values in the logcat, ones coming from the SIM, ones coming from the camping network, etc. but I don't understand how that could be considered as a bug. If marketplace guys needs to read mcc/mnc values I guess they read such values from the appropriated API and not from the logcat.
| Reporter | ||
Comment 24•12 years ago
|
||
in the code it's an different object that holds the variables for the value of the network you are connecting to and the network the SIM refers to.
If a gaia developer misunderstand which mcc/mnc he needs to refer to, that could cause an issue. I believe that the web api points to the SIM mnc, so that should be fine.
Looking at the log, both variables state MCC/MNC which causes confusion for trouble shooting. Android makes a clear distinction between the MCC/MNC of the SIM card and the Service State (the network we are connecting to which is NOT the MCC/MNC of the SIM card). Why are we calling the Service State and the Sim card both MCC/MNC?
Updated•12 years ago
|
Assignee: kchang → echen
| Assignee | ||
Comment 25•12 years ago
|
||
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #24)
> in the code it's an different object that holds the variables for the value
> of the network you are connecting to and the network the SIM refers to.
>
> If a gaia developer misunderstand which mcc/mnc he needs to refer to, that
> could cause an issue. I believe that the web api points to the SIM mnc, so
> that should be fine.
>
> Looking at the log, both variables state MCC/MNC which causes confusion for
> trouble shooting. Android makes a clear distinction between the MCC/MNC of
> the SIM card and the Service State (the network we are connecting to which
> is NOT the MCC/MNC of the SIM card). Why are we calling the Service State
> and the Sim card both MCC/MNC?
If your concern is about the logging, actually we have a clear distinction for the MCC/MNC of SIM card and the network device is connecting to.
*IccInfoChanged* means the information from sim card:
06-04 17:35:58.269: I/Gecko(146): -*- QCContentHelper_QC_B2G: sendMessage to content process: RIL:IccInfoChanged{ iccid : null, mcc : 214, mnc : 7, msisdn : null, spn : null, isDisplayNetworkNameRequired : false, isDisplaySpnRequired : false, }
*VoiceInfoChanged* means the information from voice registration states (The voice network device is connecting to):
06-04 17:37:00.299: I/Gecko(146): -*- QCContentHelper_QC_B2G: sendMessage to content process: RIL:VoiceInfoChanged{connected : true,emergencyCallsOnly : false,roaming : true,type : 'unknown',signalStrength : -99,relSignalStrength : 40,network : {mcc : 310, mnc :260, longName : 'T-Mobile', shortName : 'T-Mobile'},cell : {gsmLocationAreaCode : 275, gsmCellId :23991},state : 'registered'}
It is quite clear to me, how do you think, :nhirata?
Flags: needinfo?(nhirata.bugzilla)
| Reporter | ||
Comment 26•12 years ago
|
||
Doing : adb logcat | grep -E 'MCC|MNC' will not show the information either way of which mcc|mnc the api is using.
Flags: needinfo?(nhirata.bugzilla)
| Assignee | ||
Comment 27•12 years ago
|
||
Renoming: The api and code are all good, the only concern is about the logging.
blocking-b2g: leo+ → leo?
| Assignee | ||
Comment 28•12 years ago
|
||
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #26)
> Doing : adb logcat | grep -E 'MCC|MNC' will not show the information either
> way of which mcc|mnc the api is using.
For the MOZ RIL, grep 'MCC|MNC' is showing the information from the sim card. If you want to get the operator information, please grep 'Operator'.
logcat | grep -E 'MCC|MNC|Operator'
I/Gecko ( 108): RIL Worker[0]: MCC: 466 MNC: 92 <---- MCC/MNC from the sim card
I/Gecko ( 108): RIL Worker[0]: Operator: Chungwa,Chungwa,46692 <--- operator information that device is connecting to
It is quite clear to me.
For the debug logging of commercial RIL, there is nothing we can do, it is controlled by partner.
Comment 29•12 years ago
|
||
Not blocking by partners, Wayne will check if blocking by mozilla re marketplace.
Flags: needinfo?(wchang)
Updated•12 years ago
|
Flags: needinfo?(wchang)
Whiteboard: [mozilla-triage]
| Reporter | ||
Comment 30•12 years ago
|
||
I see. Why do we call it Operator when in one logcat output and RIL:VoiceInfoChanged{MCC/MNC} in another? It's not consistent.
| Assignee | ||
Comment 31•12 years ago
|
||
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #30)
> I see. Why do we call it Operator when in one logcat output and
> RIL:VoiceInfoChanged{MCC/MNC} in another? It's not consistent.
RIL:VoiceInfoChanged is an IPC message sent to content side. It contains a set of voice related information, ex. network's mcc/mnc, signal strength, cell information .... etc.
| Reporter | ||
Comment 32•12 years ago
|
||
Given this information, I will go ahead and close this out. Hopefully no one will make a mistake in the future between the 2 mnc/mccs either in the log or the code.
Status: REOPENED → RESOLVED
Closed: 12 years ago → 12 years ago
Resolution: --- → INVALID
Updated•12 years ago
|
blocking-b2g: leo? → ---
Whiteboard: [mozilla-triage]
Updated•12 years ago
|
Whiteboard: dev-doc-needed
You need to log in
before you can comment on or make changes to this bug.
Description
•