Commands with EHS6-T in RS232 | Telit Cinterion IoT Developer Community
January 23, 2017 - 2:36pm, 5155 views
Hello,
In RS232 link, my EHS6-T USB don't accept my old initialisation string like "ATEV1&C2&D2".
It respond always "ERROR"
What should I do ?
Hi,
Have you tried "ATE0V1&C2&D2" or "ATE1V1&C2&D2".
I got it working on my EHS6T USB REVISION 03.001, A-REVISION 00.000.42.
On the other hand, according to the AT manual, Commands starting with AT&; To be used standalone.
Best Regards,
Antero
Antero Markkula
Communication and Mechatronics
Enkom Active Oy – www.enkom-active.fi
Upseerinkatu 3 A, 02600 Espoo, Finland
Mobile: +358 400 411368
Office: +358 10 204 0000
Fax: +358 10 204 0010
E-mail: antero.markkula@enkom-active.fi
Hello,
I'have a problem with EHST6T module.
It seems that Internet Service Commands does not work correctly.
Here my initialisation
ATZ<CR>
OK
ATE0V1&C2&D2<CR>
OK<CR><LF>
AT+CREG=0;+CMEE=0;+IPR=0;&W<CR>
OK<CR><LF>
AT^SCFG="Tcp/WithURCs","on"<CR>
OK<CR><LF>
AT^SICS=0,"conType","GPRS0"<CR>
OK<CR><LF>
AT^SICS=0,"alphabet","1"<CR>
OK<CR><LF>
AT^SICS=0,"apn","M2MPREMIUM"<CR>
OK<CR><LF>
AT^SICS=0,"user",""<CR>
OK<CR><LF>
AT^SICS=0,"passwd",""<CR>
OK<CR><LF>
AT^SICS=0,"inactTO","20"<CR>
OK<CR><LF>
AT^SISS=0,"srvType","Socket"<CR>
OK<CR><LF>
AT^SISS=0,conId,0<CR>
OK<CR><LF>
AT^SISS=0,"address","socktcp://listener:2404"<CR>
OK<CR><LF>
AT^SISO=0<CR>
OK<CR><LF>
Then, with polling Internet Connection Information, iEHS6T give the IP address:
AT^SICI=0<CR>
^SICI: 0,1,1,"0.0.0.0"<CR><LF>
AT^SICI=0<CR>
^SICI: 0,2,1,"92.88.136.46"<CR><LF>
OK<CR><LF>
Then, when the client connect to the EHS6T:
^SIS: 0,5<CR><LF>
+PBREADY<CR><LF>
^SIS: 0,1,1,"185.47.80.46:37339"<CR><LF>
^SISR: 1,1<CR><LF>
So, I don't know what is this address 185.47.80.46 ?
Why EHST6 send "^SISR: 1,1" ?
Then I open the Internet Service :
AT^SISO=1<CR>
OK<CR><LF>
^SISW: 1,1<CR><LF>
Why EHST6 send "^SISW: 1,1" ?
Then, I poll with "AT^SISR=1,300", and when datas are received (6 bytes), it is OK :
AT^SISR=1,300<CR>
^SISR: 1,6<CR><LF>
456789
But the big problem, is when I want to send datas, the EHS6T don't response with an URC "^SISW", and don't send the datas to the client :
AT^SISW=1,6<CR>
OK<CR><LF>
123456
What should I do ?
Regards
Arnaud
Hello,
The "^SIS:" URC shows you the source address and port of the incoming connection. "^SISW: 1,1" URC indicates that the connection is ready for data transmission.
When you send data with AT^SISW command you should get back the URC indicating that you should enter the data now and after sending the data tehre should be OK reply. Did you receive OK for the preceding command before sending AT^SISW=1,6?
There are examples for different scenarios in the AT commands specification document.
Regards,
Bartłomiej
Hello,
Now, it is OK.
I have to repeat AT^SISW on time to obtain the URC indication ^SISW
Thank you Bartolomiej
Hello,
Great that it's working now.
If the scenario is executed by a script (not manually) maybe the problem was that AT^SISW was sent too fast or before OK from the previos AT^SISR command.
Regards,
Bartłomiej
Hello,
I have a new problem with EHS6T used in RS232 and with Internet Service Commands
My problem is that sometimes, I receive several contiguous frames, in only one "^SIR:1,xx", while they are sent separately. And my RTU can't interpret them.
What should I do to receive separately frames ?
Regards
Arnaud
Hello,
Could you specify what you mean by frames? If these are the frames of some protocol that you use on top of the socket to communicate with some device connected to the module then I think that you may need some additional software layer to grab the data from socket and split into desired frames before forwarding to your device with the proper time intervals that would ****** that the device will be able to interprete everything correctly.
The TCP protocol ******s that the data that you send will be received in the same order and nothing will be lost in between. Possibly you might try to force the protocol to send each of your higher layer frames as separate TCP packet. But you have no influence on network paths, delays etc. and if finally no more than one packet will be delivered at the same time. And I suppose that the module's firmware would forward to AT interface all the data that is available in a buffer if no more is comming at the moment. And it would be no more than 1500 bytes at a time.
Best regards,
Bartłomiej
Hello,
Thank you.
OK, il will do that.
yes, It's frames of a communication protocol.
But I have also onther problem : sometimes, EHS6T send unexpected rmessages "^SIR : 1,1".
By example, when the master send trough xG a frame of 16 bytes, EHS6T modem send on RS232 messages mike that :
EHS6T send : AT^SIR=1,300 // Request
EHS6T response : ^SIR=1,0 OK // OK, no bytes received
EHS6T response : ^SIR=1,1 // Unexpected message
EHS6T send : AT^SIR=1,300 // Request
EHS6T response : ^SIR=1,0 OK // OK, no bytes received
I don't understand why EHS6T send an unexpected message ^SIR=1,1 ?
Regards
Arnaud
EHS6T response : ^SIR=1,16 ********** OK // OK, 16 bytes received
Hello,
The URC "^SISR: 1,1" indicates that the service is ready to read data, that would mean that some data must have been received. Then you can send the command for reading ("AT^SIR=1,300") and some data should be returned.
Regards,
Bartłomiej