

Módem HSDPA EU3. Interfaces de comunicación y stack TCP/IP
Escrito por blogElectronica en Comunic. GSM/GPRS, Comunicaciones UMTSHoy voy a comentar un poco por encima los interfaces de comunicación del nuevo módulo HSDPA EU3 y veremos un ejemplo de uso del stack TCP/IP integrada en este módulo, ya que cambia un poco a lo que estábamos acostumbrados con los módulos MC55i, XT65, TC63i y TC65i.
Interfaces de comunicación.
El módulo EU3 cuenta con un puerto serie y un puerto USB. Si conocéis el módulo HC25, a diferencia de éste, con el EU3 si es posible usar simultáneamente el puerto serie y el puerto USB. De hecho hay varias formas de configurar estos interfaces. Para ello usaremos el comando AT^SDPORT (comando muy importante para la primera toma de contacto con este módulo), que debe estar correctamente configurado.
Con AT^SDPORT podemos configurar 4 modos de funcionamiento.
Modo 1: modo por defecto, debería servir sólo para configurar una velocidad adecuada con AT+IPR y luego cambiar a SDPORT=2, SDPORT=3 ó SDPORT=4
Modo 2: modo uart. Podremos usar el EU3 sólo por puerto serie.
Modo 3: modo USB. Para usar el EU3 sólo por puerto USB (se crea un puerto COM módem y un puerto COM virtual de aplicación (es decir, por ejemplo, para enviar comandos AT de estado al módem a la vez que tenemos establecida una conexión 3G/HSDPA por el COM módem).
Modo 4: modo USB + uart. Para usar el puerto USB en conexiones 3G/HSDPA y la uart para ir consultando el estado del módem mediante comandos AT.
A continuación, como indicaba al comienzo del post, vamos a ver cómo crear una conexión 3G/HSDPA y, usando la pila TCP/IP interna del módem, es decir, vamos a crear un socket contra un servidor remoto para enviar/recibir datos.
Ejemplo conexión TCP/IP cliente:
Lo primero que hacemos es definir el perfil de conexión con el contexto, por ejemplo, 101.
AT+CGDCONT=101,”ip”,”movistar.es”
OK
Nota: Es importantísimo usar un nº de contexto entre 101 y 116, ya que son los adecuados para poder usar perfiles de servicio (para crear sockets). Si ponéis valores entre 1 y 16 NO FUNCIONARÁ ya que éstos son para usarlos con un stack TCP/IP externo.
Después, simplemente activamos el contexto 101 que acabamos de crear
AT+CGACT=1,101
OK
Y tras recibir el OK el módem EU3 debería estar conectado a 3G/HSDPA, es decir, debería tener una dirección IP asignada dl operador. Para comprobarlo podemos ejecutar el comando:
AT+CGPADDR=3
+CGPADDR: 101,”80.27.183.15″
OK
Fíjate que no nos ha hecho falta especificar ni login ni password para iniciar la conexión 3G/HSDPA (para qué dejar de facturar por un simple login o password pensará el operador ). En cualquier caso, si hubiese hecho falta tendríamos que usar el comando AT^SGAUTH con algo como:
AT^SGAUTH=101,1,MOVISTAR,MOVISTAR
OK
Bueno, una vez tenemos IP, ya podemos conectarnos a un servidor remoto, para ello procederemos de manera SIMILAR a lo que hacemos con el resto de la familia Siemens/Cinterion MC55i,XT65, TC63i y TC65i, configurando un perfil de servicio, en este caso un socket cliente TCP/IP
AT^SISS=0,”srvType”,”TCPclient”
OK
AT^SISS=0,”address”,”83.56.192.251:20010″
OK
AT^siss=0,”conID”,101
OK
y ya podemos abrir el socket para conectarnos:
AT^siso=0
OK
Si usamos el entrenador como socket listener podremos ver como la conexión del módem ha entrado:
La lectura / escritura en un socket es igual a como lo hacíamos con los MC55i, XT65, TC63i y TC65i, por lo que no me voy a extender. Cualquier duda me lo preguntáis.
Novedades.
Una novedad de la pila del EU3 es la posibilidad de usarla de manera transparente, es decir, sin tener que usar los comandos AT^SISR ni AT^SISW. En pocas palabras, podemos hacer que todo lo que enviemos por el puerto serie del módem se envíe directamente vía 3G/HSDPA y todo lo que se recibe vía 3G/HSDPA sea reenviado directamente por el puerto serie del módem directamente, es decir, de forma transparente.
Para ello, podemos usar el comando AT^SIST (T de Transparent) una vez abierto el servicio con AT^SISO=x. Como hemos abierto el perfil de servicio “0″ …
AT^SIST=0
CONNECT
Vemos que aparece un CONNECT, igual que sucede cuando realizamos una llamada CSD. A partir de ese momento ya tenemos una conexión 3G/HSDPA transparente. Para salir de ese modo, también de manera también análoga a las llamadas CSD, basta con enviar “+++” para salir a “modo comandos”.
Y eso es todo, como véis el stack TCP/IP de este módulo EU3 es algo diferente a lo que estábamos acostumbrados con el resto de los módulos de la familia Siemens/Cinterion.
Ahora, mi valoración personal. Lo mejor de este stack TCP/IP es que se puede usar también un socket en modo transparente, para muchas aplicaciones puede ser muy cómodo/interesante. Lo que no me gusta tanto es que por el momento, con el firmware actual, no se permite crear sockets TCP Server. La razón es que el módulo está muy orientado a aplicaciones M2M y en estas aplicaciones es cierto que la mayoría de las ocasiones se usan sockets TCP/Client para enviar datos a servidores remotos.
Por último, un detalle a destacar. Con el módulo EU3 Cinterion ha usado el mismo conector B2B y (casi) el mismo pinout que en el TC63i. Por ello, a quien esté diseñando una placa para usar el TC63i, le recomiendo que de un vistazo a una nota de aplicación de nombre EU3_e-migration (que forma parte de la documentación del EU3) donde se indica las pequeñas diferencias a tener en cuenta en una migración del TC63i al EU3. O dicho de otra manera, ese documento nos permitirá diseñar una placa de manera que pueda usar el TC63i ó EU3 indistintamente, con las ventajas evidentes que eso conllevará en un futuro. Si alguno está también dubitativo entre usar un MC55i o un TC63i en un nuevo diseño (como veo muchas veces que ocurre) este detalle de compatibilidades con EU3 es para tenerlo en cuenta, al menos a mi me acabaría de decidir.
Espero que haya sido de interés. Otro día más.
Post relacionados:
- Usando el módem umts / hsdpa MTX-H25 bajo Linux Muy buenas. En el post de hoy voy a poner...
- MTX-H15 – Modem UMTS / HSDPA terminal Hace ya algún algún tiempo, concretamente hace ya un par...
- Controlar una pantalla SPI con un módem gprs Cinterion Hace poco tuve que echar una mano en un proyecto...
- MTX65-ULP. Módem GRPS Ultra Low Power basado en Siemens/Cinterion Hoy voy a hablar de un nuevo terminal, del...
- Cómo implementar un WebServer en un módem TC65 ó MTX65 Bueno, ya estoy aquí de vuelta de vacaciones. Esta Semana...
Etiquetas: cinterion, hsdpa, umts
Saludos desde Bs. As.
Antes que nada quería felicitarte por el blog, la verdad es interesantísimo, hace 2hs que estoy por escribir esto pero cada vez veo algún artículo, llama mi atención y me quedo leyendo.
Quería aprovechar la experiencia que veo q tienes en este campo para consultar y conocer tu opinión hacia lo que quiero hacer.
Tengo un equipo (un PC) la cual voy a montar en un vehículo, va a grabar video localmente y tiene un pequeño cliente web al que necesitaré acceder remotamente mientras transita así que agregar alguna conexión 3G.
Tengo estas opciones:
1) Colocarle un modem USB.
2) buscar algun router que soporte chip GSM.
3) colocarle un módulo gsm (pero mini pci-express, ya q el mother de la pc tiene un puerto de esos) (vi q los modulos de los que hablas en los artículos son distintos)
Que crees que es mejor?
Y luego de estas observaciones?
Tener en cuenta:
*WIFI y GPS* Parte del proyecto también sería agregarle conexión wifi (para cuando el vehículo esta en casa no usar el 3g) y GPS para agregar funcionalidad de rastreo (la mayoría de los router GSM traen wifi, por ejemplo, y por otro lado hay módulos gsm que traen GPS…)
*SO* aun no decidimos si llevará Windows o Linux, preferimos lo segundo, pero no se que complejidad lleve instalar y configurar un modulo mini pci-e GSM en un linux. El router no porque ya entrega el servicio en el RJ45.
*baja de costos* la idea es poder reducir los costos lo mas posible.
Bueno, te dejo a pensar, tal vez ya tienes la respuesta pero son varias variables y la verdad no conozco tantos dispositivos y tecnologías como tú, así que seguramente me podrás ayudar.
Desde ya, muchas gracias por la ayuda y por compartir conocimiento con todos.
Aguardo tus comentarios.
Flavio Fernandes.
Hola Flavio, buenas.
Pues esa es una aplicación que ya he visto muchas veces. Hay muchos vehículos en la actualidad que montan en vehículos un PC + un módem HSDPA MTX-HC25 (conexión USB).
Con ese módem puedes tener conectividad 3G y además tiene GPS. Si usas Windows no hay problema pq viene con los drivers CMUX que necesitarás si quieres usar, además de la conectividad, 3G el GPS. Si usas Linux es algo más complejo lo del CMUX, porque no se suministran drivers para éste y deberás buscarlos por Internet.
Ahora existe otro módem, el MTX-HSDPA-PH8, también con conectividad USB, que es HSPA (todavía más rápido) y dispone también de GPS. Para este caso no es necesario ningún driver CMUX por lo que el más sencillo de usar tanto en Windows como en Linux. Probablemente este último módem sea la mejor opción para ti si quieres usar Linux.
Salu2!!!