Autor Tema: transmisión de datos UDP por motorola G30 con PIC  (Leído 1953 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gatofreak

  • PIC10
  • *
  • Mensajes: 3
transmisión de datos UDP por motorola G30 con PIC
« en: 08 de Junio de 2011, 19:31:40 »
bueno espero que me puedan ayudar en esto. Tengo implementado un sistema con un GSM/GPRS motorola G30 conectado al hercules para configurarlos y enviar datos y como saben trae TCP/UDP embebido. Por otro lado tengo un servidor con ip fija y un puerto UDP en modo escucha. A modo de ilustración de mi duda ahi van los pasos desde cero hasta llegar a mi consulta

Conectando el modulo

AT   //verifica el estado de la conexión es recomendable si trabajan con pic tener led para mostrar el estado del CTS y DSR y leer el mensaje de respuesta

OK

AT+CPIN?

+CPIN:READY

OK

AT+CGREG=1  // para recibir reporte no solicitados de la gprs

OK

AT+IPR=115200 //velocidad para funcionar con el hercules si quieren conectarlo a un pic uso 19200, además este comando guarda la velocidad de conexión luego de un power off

+IPR=115200

AT+COPS?

+COPS: 0,0,"CL ENTEL PCS" //en chile

OK

AT+mipcall=1,"bam.entelpcs.cl","entelpcs","entelpcs"  <- para entel en chile
OK

+MIPCALL: 10.108.7.218 //respuesta

Ah modo de prueba realizare un envío de datos a www.google.cl
AT+MIPOPEN=1,1500,"WWW.GOOGLE.CL",80,0 //socket 1 puerto 1500 del g30 al puerto 80 de google y más compacto que otros comandos AT de otros modulos
+MIPOPEN: 1,1

OK

AT+MIPSEND=1,"44480D0A" //con un CR y LF sin eso no responde
+MIPSEND: 1,0,1368

OK
AT+MIPPUSH=1
+MIPPUSH=1,0  // el dato se envío

luego de eso tiene que aparecer una respuesta ya que estamos enviando a TCP 80, la respuesta corresponde a un reporte no solicitado del g30

+MIPRTCP:1,0,663D2F2F7777772E676F6F676C652E636F6D2F2069643D673E3C696D67207372633D2F2F7777772E676F6F676C652E636F6D2F696D616765732F6C6F676F5F736D2E67696620616C743D476F6F676C653E3C2F613E0A20203C703E3C623E3430302E3C2F623E203C696E733E54686174E280997320616E206572726F722E3C2F696E733E0A20203C703E596F757220636C69656E7420686173206973737565642061206D616C666F726D6564206F7220696C6C6567616C20726571756573742E20203C696E733E54686174E280997320616C6C207765206B6E6F772E3C2F696E733E0A

+MIPSTAT:1,1  // este reporte no solicitado indica el socket 1, 1= broken protocol stack (aún le estoy buscando alguna explicación)

ahora si quiero enviar
 al puerto UDP

AT+MIPOPEN=1,1500,"X.X.X.X",3800,1 //soket 1 puerto 1500 del g30 dirección puerto 3800 y 1=UDP
+MIPOPEN=1,1

OK

AT+MIPSEND=1," XXXXXXXXXXXXX"  <- ahí envío una combinación de números pero no tengo idea si debe tener algún carácter especial, encabezado, o final para que lo tome el puerto
+MIPSEND=1,1,XXXX  <- bytes libres en el buffer de envío

AT+MIPPUSH=1
+MIPPUSH=1,0 -> el dato se envío

ahora si responde el puerto debería aparecer de nuevo un reporte del tipo

+MIPRUDP=1,X(cuando queda por enviar, recuerden que el buffer tiene un espacio de 1372), XXXXXXXXXXXXXXXXXXXXX y la informacíon


abueno estoy parado en la última parte donde quiero enviar un dato udp y no llega al servidor, al menos el G30 me dice que se envío pero al server no le llega nada de nada y no se si el puerto del server tiene que tener alguna característica especial aparte de ser udp y que la ip sea fija y publica.

Alguna recomendación o información relacionada a este problema sobre server con puertos UDP en modo escucha.



Saludos, espero que al publico le sirva el procedimiento

Desconectado RICHI777

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1498
Re: transmisión de datos UDP por motorola G30 con PIC
« Respuesta #1 en: 08 de Junio de 2011, 20:11:06 »
Hola, revisa las configuraciones del router y del firewall de tu PC.

Saludos !