(Español) OTAP con SMS
Posted by blogElectronica in 2.DISPOSITIVOS (práctico), Comunic. GSM/GPRS, TelefoníaSome time ago I posted about how to do an OTAP with a Siemens modem (a TC65, XT65, TC65T, MTX65 or MTX65+G GPRS modem). In that post I wrote in detail about how to perform the OTAP from the HyperTerminal but I didn’t write a clear example of how to perform the OTAP with an SMS, some of you have already mentioned this to me.
So today I am going to write a small, very practical post about how to start an OTAP process with an SMS. There are various ways of approaching the process. I am going to outline the simplest way so that everyone that does the following steps will be able to do them without any problems.
Let’s propose that we have OTAP data saved on the modem before sending an SMS. You could send the data with SMSs but for convenience let’s imagine that they were saved in the modem’s configuration beforehand.
To do this let’s write (notice the quotation marks):
AT^SJOTAP=”blogElectronica”,”http://www.blogelectronica.com/TEMP/
HelloWorld.jad”,”a:”,,,”gprs”,”airtelnet.es”,”vodafone”,”vodafone”,”080.058.000.033″,
If we turn the modem off and turn it back on can we see that this information isn’t volatile with the command AT^SJOTAP?
Well after having done this t he modem is ready. Now we can send an SMS message to the modem to start the OTAP process. As I am poor and at home I only have a modem (that’s borrowed) so I will send the SMS from the modem itself.
To do this, I configure SMS text messages (yes text not PDU)
at+cmgf=1
OK
Let’s configure the SMS parameters:
at+csmp=17,167,0,245
OK
And with all this we only have to send an SMS message with the text:
OTAP_IMPNG
PWD:blogElectronica
START:install
Obviously we aren’t going to send this message as such. We will convert it to hexadecimal, just as we would on an 8-bit PDU code. We will substitute each character by its corresponding hexadecimal value (O=4F, T=54, A=41, P=50 etc. Remember that the end of each line has to end in 0A including the last line).
For the slackers I’ve put a little program here that I just made to encode the SMS text to hexadecimal properly. I have also included the project with the source code, made in Visual Basic 6.0 for those who want to use, copy or browse it.
As you can see this small program’s source code is very simple-minded:
sting = “”
hexValue = “”
For i = 1 To Len(Text1.Text)
hexValue = Hex(Asc(Mid(Text1.Text, i, 1)))
If Len(hexValue) = 1 Then hexValue = “0″ & hexValue
string = string & hexValue
Next i
If hexValue <> “0A” Then string = string & “0A”
string = Replace(string, “0D”, “”)
Text2.Text = string
So once you have done this you can send an SMS to the modem. To do this send the command at+cmgs (you already know that first you send at+cmgs = telephone number and we press ENTER, then past the long hexadecimal string that we got from using the small program that I made and press CTRL+ z and the SMS will be sent instantly.
at+cmgs=66627xxxx
>4F5441505F494D504E470A5057443A626C6F67456C656374726F6E69
63610A53544152543A696E7374616C6C0A
After a few seconds have passed you will see the modem’s LED start to blink differently, indicating the OTAP is working. When the process is finished the modem resets itself and you can see how to load HelloWorld.jar and .jad files onto the modem with MES.
I hope that this has been interesting, see you next time.
Post relacionados:
- (Español) Versión 1.1 de la plataforma OTAP Sorry, this entry is only available in Español. FacebookTwitter...
- GPRS Siemens Modem. Managing a TCP/IP Connection with Java In my last post we saw how to use a...
- (Español) Utilización de OTAP en los módems Siemens TC65, XT65 y MTX65 Sorry, this entry is only available in Español. FacebookTwitter...
- (Español) Servidor de ficheros para OTAP Sorry, this entry is only available in Español. FacebookTwitter...
- (Español) Plataforma OTAP para módems gprs Siemens – Cinterion Sorry, this entry is only available in Español. FacebookTwitter...
Hola!
Correndo en comando AT+CMGS=66627xxxx
> 4F5441505F494D504E470A5057443A626C6F67456C656374726F6E69
63610A53544152543A696E7374616C6C0A
la TC65 realiza la instalación correctamente.
Me pregunto si se puede enviar el mismo mensaje SMS através del móvil (4F544…).
He intentado pero no hay retorno de la TC65 …
Mutchas gracias y felicitaciones (siempre) en su blog!
José
Hola Jose,
la verdad es que no lo he probado, pero si el móvil manda un mensaje de texto (no pdu) y mandas exactamente lo mismo que mandas con el TC65 debiera de ir. De todas maneras no es muy ortodoxo utilizar un móvil para una operación como esa. He de decirte que pese a que en este artículo utilizo un mensaje de texto, lo normal es utilizar un mensaje PDU. Te recomiendo el uso de un módem gsm para la operación, para evitarte problemas futuros incluso aunque consigas iniciar el procedimiento desde el teléfono móvil.
Salu2
Hola,
No consigo hacer la actualizacion a través de sms.
Por un lado tengo un JAR ejecutandose. En la configuracion inicial ejecuta el comando at^sjotap con los siguietes parametros:
at^sjotap =
“pwd”,”http://server.com/HFS/ModuloRemoto.jad”,,”a:”,,,”gprs”,,,,,,
Tras esto mando el siguiente SMS en hexadecimal:
OTAP_IMPNG
PWD:pwd
APNORNUM:movistar.es
NETUSER:movistar
NETPWD:movistar
START:install
El SMS se recibe correctamente pero no he visto que el modulo se actualice con el jad que hay en el servidor HFS (server.com es un nombre generico
Hay algo se me esté escapando?
Muchas gracias!!
Hola Juan,
acuérdate del trace:
AT^SCFG=Trace/Syslog/OTAP,1
(lo tienes explicado en http://www.blogelectronica.com/otap-siemens-tc65/)
¿Qué te sale al recibir el SMS? ¿Puedes probar dejando configurado el apn, user y password en el AT^SJOTAP?
Salu2.
Hola buenas tardes, muchas gracias por tu pagina y por la info que pones, me esta siendo de gran utilidad.
Pero tengo un pequeño problema que he intentado mediante sms y no logro nada. Lo unico que me devuelve es ERROR cuando envio el sms al numero de telefono mediante hexadecimal.
Aqui explico un poco los pasos que hago.
Primer Paso:
AT^SJOTAP=pwd,”http://server.com/.jad”,”a:”,,,”gprs”,”airtelnet.es”,”vodafone”,”vodafone”,,”http:/server.com”
Segundo Paso:
AT+CMGF=1
Tercer Paso:
at+csmp=17,167,0,245
Cuarto Paso:
at+cmgs=”666666666″ (El numero que utilizo es el mismo que el modem, por falta de recursos)
Quinto Paso:
OTAP_IMPNG
PWD:pwd
START:install
Cuando me aparece el simbolo “>” escribo lo siguiente
En hexadecimal
4F5441505F494D504E470A5057443A7077640A53544152543A696E7374616C6C0A
****Al final al me devuelve ERROR por lo que no puedo realizar el trace.
Alguien tiene alguna solucion? la verdad es que me he quedado ahi y ni para adelante ni para atras…
Hola S,
¿has comprobado que tienes cobertura, estás registrado en la red, no tienes PIN etc etc?
Prueba también antes de enviar el SMS configurar el módem con AT+CMEE=2 para tener una descripción del ERROR, sino es difícil saber qué pasa.
Salu2.
Hola buenos dias,
Llevo buscando en un manual pero no llego a encontrar cual es el comando AT que me devuelve a que compañia pertenece la tarjeta que tengo en el modem, el caso es que un dia probando lo encontre pero cometi el error de no guardarlo
Recuerdo que devolvia algo parecido a esto
0,1 “vodafone ES” o algo asi.
Muchas gracias por todo
Hola Sergio,
AT+COPS?
Salu2.
Hola,
El AT+COPS) te dirá a la red en la cual estas conectado. No te valdrá si estas en roadming.
Puedeas usar tambien el at+imi . este te da el imsi de tu tarjeta. los 5 primeros números son los importantes, de ellos los tres primeros son el pais y los dos segundos corresponden al operador. En http://www.gsmworld.org puedes encontrar la correspondencia entre estos numeros y el operador
Salu2
Pua
Hola,
Muchas Gracias Pua, quizas me interesa bastante mas el comando at+imi ya que para la aplicacion que estoy desarrollando es mas practico.
Solo recalcar para la gente que le interese que tambien puede ver la correspondencia en http://es.wikipedia.org/wiki/Mobile_country_code ya que la pagina de GSMWORLD temporalmente esta en construccion.
Gracias de nuevo y un saludo
Sergio
Hola, queria hacer una consulta.
Al momento de Aplicar otap lo que hago yo es mandar un primer mensaje indicandole al modem de que url va a tener que bajar la aplicacion, y despues mando otro mensaje diciendole bueno dale ahora bajatela y instalala.
Hay forma de mandar un unico SMS para que haga todo de una sola vez?
Hola Luciano,
sí, teniendo preprogramados los parámetros en el módem. Es decir, puedes tener parámetros preconfigurados con el comando AT^SJOTAP= …
De esa forma no te es necesario enviar todos en el SMS y te cabrá en uno solo.
Salu2.