Estoy usando un módulo SIMCOM 5320A como este para intentar establecer una conexión TCP.
Estoyrevisando
Los comandos AT que estoy usando pueden muy bien estar funcionando, pero no estoy seguro de cuál sea la mejor manera de verificar esto. Más tarde, planeo construir sobre esta conexión TCP para agregar una conexión de protocolo MQTT a los servidores AWS de Amazon para IoT. Pero me gusta hacer "pruebas de unidad" más pequeñas y construir mi camino, así que cuando llego al MQTT y no funciona, sé que mi base TCP no es el problema.
Creo que mis pasos preliminares para esto están funcionando bien (registro a GPRS, conexión a través de APN, establecimiento de contexto PDP, conexión de red abierta, socket TCP abierto). Al menos, parece que me están dando los valores de retorno esperados del comando AT que indican que están bien. Es desde ese punto donde tengo mis dudas.
Actualmente, lo que estoy haciendo es conectarse a un servidor web (sucede que está usando la dirección IP de Adafruit) y le envío un mensaje simple, como:
AT+CIPSEND=0,5 // send 5 chars to link 0
> HELLO
OK
Cuando envío el comando para ver enviado / recibido, informa que se enviaron 5 caracteres, se recibieron 0. No creo que el servidor de Adafruit esté configurado para hacer nada en respuesta a mis datos enviados, como si no estuviera haciendo una solicitud HTTP GET o algo así, así que no hace nada. Así que, de nuevo, podría estar funcionando, pero no lo sé.
Pensé que la mejor manera de probar esto podría ser un servidor de eco. Busqué por un buen tiempo tratando de encontrar servidores de eco gratuitos en línea a los que pudiera conectarme, quienes simplemente enviarían de vuelta mi "HOLA" con toda cortesía. Hay todo un protocolo UNIX para esto, pero parece que está obsoleto.
Luego intenté configurar un servidor de eco local en mi PC y conectarme a eso. Creo que lo configuré correctamente, porque cuando ejecuté un servidor y también un cliente (en la misma máquina, conectado a la dirección IP localhost ), obtuve ecos en ambos terminales. Pero cuando intenté conectarme a él desde mi módulo SIMCOM, no pude establecer ninguna conexión. Me metí con la configuración del firewall para siempre, y probablemente abrí todos los puertos a los hackers en el proceso, pero no a los dados.
Estoy un poco fuera de mi experiencia con estas cosas de Internet (más de un circuito / integrador), así que espero que alguien pueda ayudarme a orientarme en la dirección correcta.
Finalmente, hay dos preguntas similares a esto en Stack Exchange, pero estoy teniendo problemas para contactar a esos tipos para ver cómo habían configurado sus pruebas.
¿Es posible enviar comandos AT a través de TCP? ?
¿Cómo Puedo enviar datos a través de TCP desde un SIM5320A?
Básicamente, solo quiero conectarme a un socket TCP en modo transparente (modo vs. datos), enviar algunos datos de una manera, y leer algunos datos con éxito, luego cerrar la conexión. Cualquier ayuda muy apreciada.