问题描述:
插入用户物理卡恢厂/刷机后,SIM卡未注册成功;
【预置条件】
设备装移动SIM卡
【问题描述】
恢厂/刷机后,SIM卡未注册成功
【测试步骤】
1.设备恢厂/刷机
2.重启设备
【预期结果】
1.设备正常启动,实体卡注网成功
【实际结果】
1.未注册到网络
问题分析:
切制式前,卡2已经在GSM上发起了attach,说明协议栈已经开启了;
切制式后又导致detach,从后面的日志看卡2的testmode一直是10(GSM only),应该是命令在哪里卡住了,命令没执行完也不会再发起注册。
//attach:
570-184 13:45:20.194 SIM2 FF -> ATTACH_REQUEST
//切制式:
623-175 13:45:21.986 FF MNHPONE: GetLteTestModeEx, testmode[0][1][2][3]=6,10,10,10
……
//detach:
624-140 13:45:22.024 SIM2 FF -> DETACH_REQUEST 0:00:13.309
//开协议栈:
642-32 13:45:22.097 F0 [VAT] MUX_Get_Data_Block, mux_index=1,data_ptr=AT+SFUN=4
642-44 13:45:22.097 FF ATC: ATC_RecNewLineSig,link_id:33,sim:1,len:10,line:AT+SFUN=4
642-46 13:45:22.098 FF MNHPONE: GetLteTestModeEx, testmode[0][1][2][3]=6,10,10,10
//卡2一直是GSM,应该是命令在哪卡住了:
808-38 13:46:22.178 FF MNHPONE: GetLteTestModeEx, testmode[0][1][2][3]=6,10,10,10
展锐平台设制式要在开协议栈之前,这个我们是知道的,之前也遇到过很多问题,现在这种场景下又遇到了。
展锐给出的说明可参照:
AT+SPTESTMODEM
Description:
The command is used to set test mode for spread-trum’s product.It should be setted before the modem stack is started by AT+SFUN=4.
Set command:
AT+SPTESTMODEM=<test_mode_value,test_mode_value >
Return:OK/ERROR
Parameter:
< test_mode_value >:
0---- SV LTE
1---- TD LTE_ONLY
2---- LTE FDD ONLY
3---- TD-LTE&FDD LTE Dual Mode
4---- LTE FDD/W/GSM CSFB MultiMode Dual Standby
5---- TD LTE/W/GSM CSFB MultiMode Dual Standby
6---- TD LTE/LTE FDD/W/GSM CSFB MultiMode Dual Standby //four mode7---- TD LTE/TD/GSM CSFB MultiMode Dual Standby //three mode
8---- TD LTE/LTE FDD/TD/GSM CSFB MultiMode Dual Standby
9--- TD LTE/LTE FDD/TD/W/GSM CSFB MultiMode Dual Standby //Five mode
10----GSM ONLY
11----W ONLY
12----TD ONLY
254----NO SIM
255----TG Dual Mode/WG Dual Mode
13----TG Dual Mode
14----WG Dual Mode
15-----GSM ONLY AND Master Card
16-----M GSM Prefer in WG Dual Mode
17---- WCDMA or TD only
18------WCDMA only master card
19------TD only master card
20------TG/WG master card
21------LTE and GSM
24-----LTE and WCDMA
SPTESTMODE和SPTESTMODEM的区别,展锐给的解释:
SPTESTMODEM是AP重启协议栈;
SPTESTMODE是CP重启协议栈
看样子区别不大。
解决方案:
切制式前先关闭协议栈切,切完制式再开协议栈。
如:
1、关协议栈:AT+SFUN=5
2、设制式:AT+SPTESTMODE=11,3
3、开协议栈:AT+SFUN=4
开关协议栈的AT:
AT+SFUN
Description:
Close protocol stack or SIM
Set command:
AT+SFUN=<oper >
Return :OK
Parameter:
oper | Description |
0 | Close protocol & SIM note:not achieve currently |
1 | Open SIM, not initialize phone book |
2 | Open SIM, and initialize phone book |
3 | Close SIM |
4 | Open protocol stack |
5 | Close protocol stack |
<oper>