Hola a todos,
Me conseguí un ESP-12E aquí en Perú, y la verdad me ha dejado sorprendido, al principio tuve unos inconvenientes que comparto por si les llega a pasar:
1. Adicionalmente de conectar los Pines Tx, Rx, En, VCC y GND, se deben conectar los pines GPIO15=0, GPIO0=1 y GPIO2=1 [1=VCC, 0=GND] ya sea directamente a un pin del micro o a fuente o tierra según corresponda. En caso de conectar a fuente, hacerlo mediante una resistencia en Pull-up de 1.5k.
En mi caso lo conecté directo a los pines del micro para tener más control e investigar un poco mas del funcionamiento.
2. Al inicio el módulo envía data en un baudiaje especial: 76800, luego de enviar una serie de datos finalmente cambia al baudiaje 115200, y queda listo para recibir los comandos AT.
Aqui pueden construir rutinas para mostrar la data si es que les interesa o simplemente espera que termine de enviar datos para inicializar la conexión WIFI.
3. El comando de recepción de datos es asincrono, solo lo recibes si hay una conexión abierta previamente, y la cabecera es +IP,<longitud>,<data>
4. Los pines de control GPIO15, GPIO0 y GPIO2, sirven para iniciar el modulo en diferentes modos, el modo que probé es el que describo en el punto 1, los otros modos son utilizados para reprogramar el firmware del modulo ESP entre otras cosas así que tengan cuidado con jugar con ellos, siempre al cambiar de modo, deben poner cero y luego a uno el pin de EN.
Aún sigo programando una pequeña aplicación del tipo data logger, que recolectará información y la enviará vía conexión TCP a un servidor, hasta ahora lo he probado manualmente y funciona (enviando los comandos AT), ahora voy a implementar en código C (C18), pero estoy viendo que toda la gestión de comunicación con el módulo se hace mediante intercambio de tramas en ASCII, por lo que me parece va a ser un tanto tedioso estar comparando cadenas... ¿Alguien ya hizo este trabajo en el foro? O ¿Tiene algun ejemplo con un modulo similar?, de modo que sea mas rápida la implementación de esta librería para el ESP8266..
Si tienen alguna ayuda bienvenida sea.
Saludos!
Data del ESP12E:
ets Jan 8 2013,rst cause:1, boot mode:(3,6)
load 0x40100000, len 1396, room 16
tail 4
chksum 0x89
load 0x3ffe8000, len 776, room 4
tail 4
chksum 0xe8
load 0x3ffe8308, len 540, room 4
tail 8
chksum 0xc0
csum 0xc0
2nd boot version : 1.4(b1)
SPI Speed : 40MHz
SPI Mode : DIO
SPI Flash Size & Map: 8Mbit(512KB+512KB)
jump to run user1 @ 1000
SDK \0xef
Ai-Thinker Technology Co.,Ltd.
ready
Referencias:
http://vogelchr.blogspot.pe/2014/12/esp8266-firmware-upgrade-odd-baudrate.htmlhttps://room-15.github.io/blog/2015/03/26/esp8266-at-command-reference/http://espressif.com/ <---Web del fabricante
http://www.electrodragon.com/w/Category:ESP8266_Firmware_and_SDK <---Wiki del firmware del ESP8266 & SDK