Paso 2: Software
Hay tres bits de código Python para este Instructable.
1) "tcp_server.py" -> Python este código proporciona un servidor TCP que la ESP8266 puede conectarse. Simplemente editar el código para que la IP número en el código de fuente concuerde con el número IP de la máquina su ejecución esta en. El servidor simplemente permite a un cliente establecer una conexión TCP acepta unos datos y envía algunos datos basura. Eso es todo. El servidor apenas se inicia y luego espera en un bucle sin fin de clientes para conectarse.
2) "tcp_client.py" -> Python este código proporciona una manera de "tcp_server.py" la prueba está funcionando correctamente. Por lo tanto, con el código de servidor ejecuta en una máquina, ejecutar "tcp_client.py" en otro ordenador de tu red. Ejecutar al cliente como "tcp_client.py aquí van algunos datos que enviar." La aplicación cliente envía todo lo que se da en la línea de comandos. En este caso, el cliente enviará "algunos datos va aquí" al servidor. El cliente y el servidor mostrará alguna salida que indica a una transferencia exitosa.
3) por último, "Test_ESP8266.py" puede utilizarse ahora para probar una conexión TCP con el servidor de Python. Si todo va bien, el servidor y "Test_ESP8266.py" muestran alguna salida que indica a una transferencia exitosa. Una vez más, antes ejecutando "Test_ESP8266.py" edición el código para que la IP números de partido. Como "Test_ESP8266.py MySSID MyPasscode" - el SSID y la clave deben coincidir con la configuración WiFi.
Utilice el código de Python Test_ESP8266 aprendí un par de cosas sobre el módulo. Después de conseguir todo trabajando y verificar con el servidor que simplemente probé usando una contraseña mal, como una prueba para ver qué pasaría. Todo parecía normal hasta que el comando real para formar la conexión TCP. El comando que no estaba "AT + CIPSTART = 'TCP',"192.168.1.130"9999". Sin embargo, habría esperado que el comando "AT + CWJAP?" a fallar primero. El comando "AT + CWJAP?" devuelve el SSID y el RSSI del AP el ESP8266 está conectado a. Con una mala contraseña debe no han sido capaces de conectar.
Haciendo el tonto con el código creo que he descubierto un truco. Después de conectar al AP, pida el número de IP de ESP8266. Incluso con una buena contraseña puede devolver "ERROR". No se preocupe, apenas viven un par de segundos y volver a preguntar. Con una buena SSID y la clave de la ESP8266 finalmente devolverá el número IP. Después de una buena IP número devuelve que el comando de conexión de TCP siempre parece funcionar.
Otro truco, si es una contraseña mal utilizado el ESP8266 módulo se atasca! Sin importar el comando enviado el módulo devuelve "buzy ahora...". Se ignora incluso el comando "AT + RST" (reset). El trabajo alrededor es utilizar el regulador de ciclo de alimentación al módulo. Usando el pin RTS en el convertidor FTDI USB a serie - que se conecta al regulador de activar pin - puede desactivarse la salida regulador 3.3Vdc. Un tiempo de 10 segundos parece que funciona bien.
Bueno, eso es. Espero que esto ayude,
Jim
BTW: por el motivo de actualizaciones más reciente y más grande