Enviar comandos AT via GPRS a GPS SkyPatrol TT8750
El mundo de la tecnologia GPS cada vez hace mucha más parte de nuestro presente, cada día más personas están enteradas y muchas más quieren enterarse. Por este motivo quiero presentar en mi blog esta categoria de GPS y GPRS para quienes apenas están empezando o quienes quieran conocer más puedan apoyarse.

En mi antiguo blog de wordpress hace algunos meses habia publicado una entrada donde indicaba una parte importante de Enviar comandos AT a GPS SkyPatrol TT8750 el cual tuvo muchos comentarios y a parte de eso, además de dar soluciones generó muchas dudas al respecto, con él supe la cantidad de personas que estaban inciando desarrollos con dispositivos de rastreo satelital, de muchos paises y hoy quiero agrandar un poco más la información al respecto.
Como lo indicaba, para comunicación con estos equipos por GPRS no basta con enviarle el comando AT que se envía por el cable de programación, debemos indicarle un encabezado a la trama de datos que enviamos.
Para no repetir esa parte los invito a visitar el post si no lo han visto.
Ahora quiero compartir con ustedes un ejemplo hecho en lenguaje C# de cómo se debe preparar la trama que debemos enviar:
string tramaString = "xxxxAT$IOGP3=1"; //Comando que se enviará //Las 4 xxxx son un espacio reservado para el encabezado que añadiremos más adelante //Convertir a un arreglo de bytes la trama que enviaremos byte[] trama = Encoding.Default.GetBytes(tramaString); //Añadir encabezado de la trama de datos. trama[0] = 0x00; trama[1] = 0x01; trama[2] = 0x04; trama[3] = 0x00; //Enviar la trama por el socket ...
El código puede usarse casi igual para Java (Cambia la conversión de String a byte[])
El encabezado anterior solamente funciona para UDP, cuando se comunican por TCP deben usar el siguiente:
//Reservando espacio para 5 bytes string tramaString = "xxxxxxAT$IOGP3=1"; //Comando que se enviará //Añadir encabezado de la trama de datos. trama[0] = 0x00; trama[1] = 0x1A; trama[2] = 0x00; trama[3] = 0x01; trama[4] = 0x04; trama[5] = 0x00;
Saludos.