ELS61 hangs after AT^SISR command | Telit Cinterion IoT Developer Community
February 21, 2018 - 12:25pm, 4732 views
Hi,
I try to evaluate ELS61 and I found a problem.
Look at my listing please:
^SYSLOADING
^SYSSTART
AT+CPIN?
+CPIN: READY
OK
AT+COPS=0
OK
AT+CREG?
+CREG: 0,1
OK
AT+CMGF=0
OK
ATI1
Cinterion
ELS61-E
REVISION 01.000
A-REVISION 00.014.00
OK
+PBREADY
AT+CSQ
+CSQ: 18,99
OK
AT+CGATT=1
OK
AT^SICS=1,conType,GPRS0
OK
AT^SICS=1,alphabet,1
OK
AT^SICS=1,user,""
OK
AT^SICS=1,passwd,""
OK
AT^SICS=1,apn,"**********"
OK
AT^SICS=1,inactTO,30
OK
AT^SISS=2,srvType,"Socket"
OK
AT^SISS=2,alphabet,1
OK
AT^SISS=2,tcpMR,3
OK
AT^SISS=2,tcpOT,3000
OK
AT^SISS=2,address,"socktcp://172.23.0.102:50661"
OK
AT^SISS=2,conId,1
OK
AT^SISO=2
OK
AT
OK
AT+CSQ
+CSQ: 17,99
OK
AT^SISR=2,0
ERROR
AT
OK
AT+CSQ
+CSQ: 17,99
OK
AT^SISR=2,0
ERROR
AT
OK
AT+CSQ
+CSQ: 17,99
OK
after some time waiting for incoming data I get a message:
AT^SISR=2,0
^SISR: 2,-2
OK
AT^SISR=2,32
^SISR: 2,-2
OK
AT
OK
^SIS: 2,0,14,"An established connection was aborted, possibly due to a data transmission time-out or protocol error"
AT+CSQ
AT+CSQ
AT+CSQ
AT+CSQ
AT+CSQ
AT^SISR=2,0
AT
The module hangs and dosn't respond any more. This sitation happened several *****, so it's repeatable error. I also found this problem earlier in JAVA application using ATCommand on the same module.
I was looking for on this forum similar topics but I have not found solution. Is it possible only I have such a problem?
Hello,
I can see in the log that there is no URC with information that there is data available to read. And you try to read 0 length each time. Maybe there is a problem on the other side that nothing is sent.
But as I understand this does not happen each time but only sometimes. Doe it always stuck in the same place after this ^SIS: 2,0,14 URC? What if you tried to close the connection after first ^SISR: 2,-2 URC?
Is it possible to recover from that situation or reboot is necessary?
Is there any other logic running on the moulder at the same time?
Regards,
Bartłomiej
Hi Bartłomiej,
The pooling metod of checking available data I have been using for several years in Cinterion modules eg. BGS2 and TC65i and I have not had a problem so far.
The module usually hangs while pooling for available data, but also it happend once at the beggining of communication - during initialization with the first commands.
Till today the device has hunged up several ***** (three or four) - so it isn't very often - but it's embarrassing because the only way to revive it is restart.
In my solution I use only one serial port for communication with external microcontroller and no other process is working at the same time on the module.
Best regards
Andrzej
Hello,
The firmware version that you have is currently the latest, so I can't offer you any update.
Have you tried to reproduce this with your PC or connect the module to PC when it happens or grab any traces from serial interface to make sure that this is not any problem on the microcontroller side? How is the interface configured - flow control, power saving, baudrate etc.? Which lines are connected?
Please also paste AT^SCFG? and AT&V outputs.
Anyway if you suspect the problem in the module I think that you should report it to your distributor or Gemalto support line. We can't do much about this on the forum - some tests would need to be done to verify if it can be reproduced.
Best regards,
Bartłomiej
Hi,
There is module configurtation:
AT&V
ACTIVE PROFILE:
E0 Q0 V1 &C1 &D2 &S0 \Q3
S0:000 S3:013 S4:010 S5:008 S6:000 S7:060 S8:000 S10:002
+CR: 0
+CMGF: 0
+CNMI: 1,0,0,0,0
+ICF: 3
+IPR: 115200
+CMEE: 0
+CSMS: 0,1,1,1
+CREG: 0,1
+CEREG: 0,1
+COPS: 0,0,"Plus",7
+CGSMS: 1
OK
AT^SCFG?
^SCFG: "GPRS/AutoAttach","enabled"
^SCFG: "Gpio/mode/ASC1","gpio"
^SCFG: "Gpio/mode/DCD0","gpio"
^SCFG: "Gpio/mode/DSR0","gpio"
^SCFG: "Gpio/mode/DTR0","gpio"
^SCFG: "Gpio/mode/FSR","gpio"
^SCFG: "Gpio/mode/PULSE","gpio"
^SCFG: "Gpio/mode/PWM","gpio"
^SCFG: "Gpio/mode/RING0","gpio"
^SCFG: "Gpio/mode/SPI","gpio"
^SCFG: "Gpio/mode/SYNC","gpio"
^SCFG: "Ident/Manufacturer","Cinterion"
^SCFG: "Ident/Product","ELS61-E"
^SCFG: "MEShutdown/Fso","0"
^SCFG: "MEShutdown/sVsup/threshold","0","0"
^SCFG: "MEopMode/CFUN","0","1"
^SCFG: "MEopMode/CregRoam","0"
^SCFG: "MEopMode/SoR","off"
^SCFG: "MeOpMode/SRPOM","0"
^SCFG: "Radio/Band/2G","0x00000014"
^SCFG: "Radio/Band/4G","0x00080085"
^SCFG: "Radio/Mtpl/2G","0"
^SCFG: "Radio/Mtpl/4G","0"
^SCFG: "Radio/OutputPowerReduction","4"
^SCFG: "Serial/Interface/Allocation","0","0"
^SCFG: "Serial/USB/DDD","0","0","0409","1E2D","005B","Cinterion Wireless Modules","ELSx",""
^SCFG: "Tcp/IRT","3"
^SCFG: "Tcp/MR","10"
^SCFG: "Tcp/OT","6000"
^SCFG: "Tcp/WithURCs","off"
^SCFG: "Trace/Syslog/OTAP","0"
^SCFG: "URC/Ringline","local"
^SCFG: "URC/Ringline/ActiveTime","2"
^SCFG: "Userware/Autostart","1"
^SCFG: "Userware/Autostart/Delay","0"
^SCFG: "Userware/DebugInterface","0.0.0.0","0.0.0.0","0"
^SCFG: "Userware/DebugMode","off"
^SCFG: "Userware/Passwd",
^SCFG: "Userware/Stdout","null",,,,"off"
^SCFG: "Userware/Watchdog","0"
OK
AT^SPOW?
^SPOW: 1,0,0
OK
As you can see power saving is disabled. Serial interface settings: 115200 N81 with flow control, connected and permanently set RTS signal.
Andrzej
And how often do you send AT commands in the polling mode? Are there any particular delay configured?
Regards,
Bartłomiej
Hi Bartłowmiej,
I'm sending AT commands without any delay.
Andrzej
The background of my question was to check if you are not overloading the module.
According to the documentation your device should always wait at least 100 ms before sending the next command.
If you don't add any delay that might probably couse some problems.
There was some code added that had bypassed the 100ms wait for sending some commands in a row. Enforcing the 100ms wait solved the exact problem the person had described. Thanks!