Closed Bug 961577 Opened 10 years ago Closed 8 years ago

[DSDS] Manual network operator searching is not working.

Categories

(Firefox OS Graveyard :: Gaia::Settings, defect)

x86_64
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: echu, Unassigned)

References

Details

(Keywords: regression, Whiteboard: dsdsrun1.3-2)

Attachments

(1 file)

After disable automatic selection in Network Operator item under Cellular&Data settings of either SIM 1 or SIM 2, it's like device is not searching at all. Press Search again button, "searching" only flash a second then gone. 

It's a regression bug. 
Failed build:
Gaia      fd2154a0f288820933bf727c2b2af3b1b1f47896
Gecko     d8919d498a7bc7c49d7c0eebe5bf340e094c47c0
BuildID   20140117145953
Version   28.0a2

Passed build:
Gaia      a119a0692c24c5ed7c55bab838bae3ecdb9dbec9
Gecko     15ee4e78431b45922b41dea882464b0ccb6b4fac
BuildID   20140110174141
Version   28.0a2
Hi Sam:
 Could you please help check what's wrong with REQUEST_QUERY_AVAILABLE_NETWORKS request?
Thanks!!
Shawn

01-20 12:32:08.810 I/Gecko   (  107): RIL Worker[0]: Received chrome message {"requestId":"id{9f24585f-c934-4b40-89d3-3062aa03d9f8}","rilMessageToken":18,"rilMessageType":"getAvailableNetworks"}
01-20 12:32:08.810 I/Gecko   (  107): RIL Worker[0]: Getting available networks
01-20 12:32:08.850 I/Gecko   (  107): RIL Worker[0]: Handling parcel as REQUEST_QUERY_AVAILABLE_NETWORKS
01-20 12:32:08.850 I/Gecko   (  107): -*- RadioInterface[0]: Received message from worker: {"requestId":"id{9f24585f-c934-4b40-89d3-3062aa03d9f8}","rilMessageToken":18,"rilMessageType":"getAvailableNetworks","rilRequestType":48,"rilRequestError":2,"errorMsg":"GenericFailure"}
Flags: needinfo?(sam.hua)
01-03 22:15:37.580   103   289 D RILC    : [w] [0103]> QUERY_AVAILABLE_NETWORKS  
01-03 22:15:37.580   103   289 D RIL     : [w] onRequest: QUERY_AVAILABLE_NETWORKS  sState=4
01-03 22:15:37.580   103   289 D RIL     : [w] channel1 state: '0' 
01-03 22:15:37.580   103   289 D RIL     : [w] get Channel ID '1'
01-03 22:15:37.580   103   289 D AT      : [w] Channel1: AT> AT+COPS=?
01-03 22:16:23.830   103   272 D AT      : [w] Channel1: AT< +COPS: (2,"CHN-UNICOM","CUCC","46001",2),(1,"CHN-UNICOM","CUCC","46001",0),(3,"CHINA MOBILE","CMCC","46000",0),,(0-4),(0-2)
01-03 22:16:23.830   103   272 D AT      : [w] Channel0: AT< +CSQ: 0,99
01-03 22:16:23.830   103   272 D RILC    : [w] [UNSL]< UNSOL_SIGNAL_STRENGTH {[signalStrength=0,bitErrorRate=99,                CDMA_SS.dbm=-1,CDMA_SSecio=-1,                EVDO_SS.dbm=-1,EVDO_SS.ecio=-1,                EVDO_SS.signalNoiseRatio=-1,                LTE_SS.signalStrength=-1,LTE_SS.rsrp=-1,LTE_SS.rsrq=-1,                LTE_SS.rssnr=-1,LTE_SS.cqi=-1]}
01-03 22:16:23.840   103   272 D AT      : [w] Channel1: AT< OK
01-03 22:16:23.840   103   289 D RIL     : [w] Searched available network list numbers = 3
01-03 22:16:23.840   103   289 D RILC    : [w] [0103]< QUERY_AVAILABLE_NETWORKS  {CHN-UNICOM,CUCC,46001,current,UTRAN,CHN-UNICOM,CUCC,46001,available,GSM,CHINA MOBILE,CMCC,46000,forbidden,GSM}
Flags: needinfo?(sam.hua)
I don't know why fail,any condition?
and,there are some errors in gecko,maybe u can handle it.

01-03 22:24:15.600   109   224 I Gecko   : RIL Worker[0]: Error processing operator tuple: Error: Invalid network tuple (should be 5 or 6 digits): CUCC
01-03 22:24:15.600   109   224 I Gecko   : RIL Worker[0]: Error processing operator tuple: Error: Invalid network tuple (should be 5 or 6 digits): CHINA MOBILE
01-03 22:24:15.600   109   224 I Gecko   : RIL Worker[0]: Error processing operator tuple: Error: Invalid network tuple (should be 5 or 6 digits): GSM
and,there are some errors in gecko,maybe u can handle it.

01-03 22:24:15.600   109   224 I Gecko   : RIL Worker[0]: Error processing operator tuple: Error: Invalid network tuple (should be 5 or 6 digits): CUCC
01-03 22:24:15.600   109   224 I Gecko   : RIL Worker[0]: Error processing operator tuple: Error: Invalid network tuple (should be 5 or 6 digits): CHINA MOBILE
01-03 22:24:15.600   109   224 I Gecko   : RIL Worker[0]: Error processing operator tuple: Error: Invalid network tuple (should be 5 or 6 digits): GSM
Hi Sam:
 Please help update the ril response to long_name/short_name/mcc_mnc/status only for each PLMN record, do *not* pass AcT information.

AOSP do *not* define AcT information in QUERY_AVAILABLE_NETWORKS.
Thanks!!
Shawn


01-03 22:16:23.840   103   289 D RILC    : [w] [0103]< QUERY_AVAILABLE_NETWORKS  {CHN-UNICOM,CUCC,46001,current,UTRAN,CHN-UNICOM,CUCC,46001,available,GSM,CHINA MOBILE,CMCC,46000,forbidden,GSM}


https://code.google.com/p/linux-on-android/source/browse/radio/headers/ril.h?r=b215b81d9f58e428e347cbce9a8743b4d7483fcc#1689
/**
 * RIL_REQUEST_QUERY_AVAILABLE_NETWORKS
 *
 * Scans for available networks
 *
 * "data" is NULL
 * "response" is const char ** that should be an array of n*4 strings, where
 *    n is the number of available networks
 * For each available network:
 *
 * ((const char **)response)[n+0] is long alpha ONS or EONS
 * ((const char **)response)[n+1] is short alpha ONS or EONS
 * ((const char **)response)[n+2] is 5 or 6 digit numeric code (MCC + MNC)
 * ((const char **)response)[n+3] is a string value of the status:
 *           "unknown"
 *           "available"
 *           "current"
 *           "forbidden"
 *
 * This request must not respond until the new operator is selected
 * and registered
 *
 * Valid errors:
 *  SUCCESS
 *  RADIO_NOT_AVAILABLE
 *  GENERIC_FAILURE
 *
 */
Flags: needinfo?(sam.hua)
BTW, the error we got here is listed as below. is there any parameter(s) missed?

01-20 11:05:32.470   100   284 D RILC    : [w] [0115]> QUERY_AVAILABLE_NETWORKS  
01-20 11:05:32.470   100   284 D RIL     : [w] onRequest: QUERY_AVAILABLE_NETWORKS  sState=4
01-20 11:05:32.470   100   284 D RIL     : [w] channel1 state: '0' 
01-20 11:05:32.470   100   284 D RIL     : [w] get Channel ID '1'
01-20 11:05:32.470   100   284 D AT      : [w] Channel1: AT> AT+COPS=?
01-20 11:05:32.510   100   272 D AT      : [w] Channel1: AT< +CME ERROR: 3
01-20 11:05:32.510   100   284 D RILC    : [w] [0115]< QUERY_AVAILABLE_NETWORKS  fails by E_GENERIC_FAILURE
See Also: → 960374
The bug can be reproduced right after reboot device. But somehow after a while, searching can works correctly. Need to reboot first to repro the bug.
QUERY_AVAILABLE_NETWORKS doesn't have any parameters.
Flags: needinfo?(sam.hua)
Sam,
Please also check comment 6. Thanks!!
shawn
Flags: needinfo?(sam.hua)
Channel1: AT< +CME ERROR: 3  means operation not allowed.
I will ask our modem team about it.

and i will change RILC response following AOSP.
Flags: needinfo?(sam.hua)
I suggest move the discussion about the RILC response to bug 960374.
And makes this bug only focus on the error replied from modem.
How dose this sound? :)

Thank you.
Hi edgar,

It is said that gecko should close the data link first before manual network operator searching.

u can try it .

thanks!
(In reply to sam.hua from comment #13)
> Hi edgar,
> 
> It is said that gecko should close the data link first before manual network
> operator searching.
> 
> u can try it .
> 
> thanks!

Does it means fugu doesn't support manual network searching when data connection is established?
Hi,

In our android phone,it will pop an window of "Close data link?" to let user to confirm.
so it can work correctly when no data link.

actually,i think sometime it works even it has data link.
By 3GPP spec., there is no network scan available when DCS mode.
that's why Sam said disconnect PDP first.

However,

my case is there is no data connection in my device (did not open data service on my sim).
(In reply to shawn ku [:sku] from comment #16)
> By 3GPP spec., there is no network scan available when DCS mode.
> that's why Sam said disconnect PDP first.
Got it.
Thanks this information, Sam and Shawn.
(In reply to Enpei from comment #0)
> Created attachment 8362351 [details]
> time stamp: 12:32, 1/20

Hi Enpei,

From the log you provide, it seems data call is established.

---
01-20 12:31:51.920 I/Gecko   (  288): -*- RILContentHelper: Received message 'RIL:DataInfoChanged': {"clientId":0,"data":{"connected":true,"emergencyCallsOnly":false,"roaming":false,"network":{"longName":"Chunghwa","shortName":"CHT","mcc":"466","mnc":"92"},"cell":{"gsmLocationAreaCode":10235,"gsmCellId":19233895},"type":"umts","signalStrength":-75,"relSignalStrength":100,"state":"registered","apn":"internet"}}
---

As mention in comment #13 and comment #15. By 3GPP spec., there is no network scan available if data is activated.
Could you help to try to test this again with data link disabled?

Thank you.
Flags: needinfo?(echu)
Hi Edgar,

What I found on fugu is that for passed case, even SIM 1 is data call enabled, I can still search operators. SIM 2 can search operator as well which is no data call enabled.

But once I browse a website, then go to SIM 1 and SIM 2, I cannot search operators. 

So is it design/spec that when data call is active, not dormant, user cannot scan network operators?
blocking-b2g: 1.3? → ---
Flags: needinfo?(echu) → needinfo?(echen)
(In reply to Enpei from comment #19)
> Hi Edgar,
> 
> What I found on fugu is that for passed case, even SIM 1 is data call
> enabled, I can still search operators. SIM 2 can search operator as well
> which is no data call enabled.
> 
> But once I browse a website, then go to SIM 1 and SIM 2, I cannot search
> operators. 
> 
> So is it design/spec that when data call is active, not dormant, user cannot
> scan network operators?

Hi Sam, It seems if data call is in dormant, modem still can scan network. Is this expected behavior?
Thank you.
Flags: needinfo?(echen) → needinfo?(sam.hua)
Hi edgar,

I think so.
Flags: needinfo?(sam.hua)
close according to above comments
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: