Hola de nuevo
Me he comprado una placa WEMOS Mega +WiFi R3 ATmega2560+ESP8266 para cambiar mi alarma basada en Uno+Sim900 por un Mega+Sim900 y así disponer de unos cuantos pins mas, además de acceder desde internet.
De momento estoy en pruebas, pero tengo una duda. En todos los ejemplos que veo montan la web (el http) en el ESP8266 y desde ahí, vía serial3, le mandan las ordenes al mega (apagar o encender led) y este obedece
En esta placa es un lio cargar el sketch en el ESP, puesto que hay que modificar los dips para cargar, otra vez para probar y una tercera y definitiva para usar el mega. Y cada uno con su correspondiente "parón" de la placa
Y la pregunta: ¿Es posible usar el MEGA enlazado con el ESP8266? me refiero a hacer un sketch genérico de conexión, server y poco mas para el ESP8266 y desde el mega, vía serial3, leer y enviar los datos. De esta forma solo se utilizaría el ESP8266 como simple enlace wifi y una vez conseguido hacerlo funcionar con lo mínimo, no tocarlo mas
Pues no soy capaz de usarla como quiero.
Mi idea es montar la alarma, que ya funciona en un UNO, sobre un mega al que le conectaré en el serial2 el SIM900 y el ESP, que en teoría se conecta por el serial3, usarlo de servidor web vía wifi por comandos AT. Pero no hay forma de que el ESP responda a los AT que le mando (o no se hacerlo)
Me comprare un mega "solo" con un ESP 01 (o similar) para hacer las pruebas, puesto que hay mucha información sobre esa pareja
Si, ya se que hay poca gente con esa placa y paciencia tengo.
El ingles y yo nos llevamos muy mal, aún así he visto y remirado todo lo que aparece por google y en ningún sitio doy con la respuesta. Los ejemplos son los que he expuesto aquí, aunque hay otras funciones que no me aclaro a usar
Dado el precio del mega y el del ESP01 (unos 10€ con envío gratis) y aceptando que me tiraré unos 2 meses haciendo pruebas antes de pensar en ponerme en serio.... casi los pido.
Y si por algún extraño motivo cayese en mis manos algún sketch para el Wemos, pues se prueba. La razón por la que lo compré fue porque desde 12V ya tenía todo alimentado y me ha salido "rarito"
mas o menos y me explico
En ese modo, en teoría, hay conexión del mega al ESP vía Serial3. Y ahí es donde no puedo. Por mas que hago pruebas no hay forma que el ESP escuche al mega vía serial. Sin embargo el mega si que oye al ESP. En teoría, y como ocurre con los ESP2866, a través de serial3, se debería poder "ordenar" vía AT lo que tiene que hacer y que el ESP le conteste al mega para ejecutar las funciones que hagan falta. Pues no, no se deja
Con unos sketchs simples, uno para mega y otro para el ESP, he probado también con todas las combinaciones probables de dips y tampoco funciona. Los sketchs son ejemplos que hay para conectar un mega y un ESP01. Algo no va bien en esta placa o no lo he/han pillado, porque hay pots en internet desde 2017 y siempre acaban funcionando por separado
Y como hacer una prueba con el ESP son de 5 a 10 minutos, al final te cansas y lo dejas por hoy, y así llevo mas de un mes, haciendo pequeñas pruebas cada día hasta el punto que casi me he cargado los minúsculos dips
Y sigo intentandolo
Me ha llegado a mis manos este código (gracias deepl translator) pero tengo una duda
/*
1. Poner el dip switch en modo "especial":
(1=on, 2=on, 3=on, 4=on, 5=off, 6=off, 7=off, 8=off) see the the description of the product.
( http://www.ebay.com/itm/Mega-WiFi-R3-ATmega2560-ESP8266-USB-TTL-Arduino-Mega-NodeMCU-WeMos-ESP8266-/222305385421)
2. Ponga el interruptor en RXD3
3. Ejecuta el siguiente sketch, cambia los valores SSID y PASSWORD. esto es solo para probar que
Arduino y el ESP8266 están trabajando juntos. El código se originó en BISSA ORBOEA en Element14.
*/
#include "ESP8266.h"
#define SSID "...."
#define PASSWORD "........"
ESP8266 wifi(Serial3,115200);
void setup() {
Serial.begin(9600);
Serial.println("Restart");
wifi.restart();
delay(1000);
Serial.println("FW Version:");
Serial.println(wifi.getVersion().c_str());
if (wifi.setOprToStation()) {
Serial.println("OprToStation ok"); }
else {
Serial.println("OprToStation error");
}
if (wifi.joinAP(SSID, PASSWORD)) {
Serial.println("Join AP success");
Serial.print("IP:");
Serial.println( wifi.getLocalIP().c_str());
} else {
Serial.println("Join AP failure");
}
}
void loop()
{
}
Se que es para hacer pruebas y no "hace nada", pero cuando tengo 10-15 minutos que perder me lio.
La duda, y he perdido varias horas, está en la primer linea: #include "ESP8266.h"
En mi pc con win10 no existe ese archivo y tengo las librerías ES2866 instaladas. Hay otros .h como ESP8266FtpServer.h. Y en internet tampoco encuentro ese .h.
¿alguien sabe donde puedo encontrarlo?
Hasta aquí he llegado. Si alguien cree que la tarjeta MEGA+WiFi R3 ATmega2560+ESP8266, ya sea Wemos o RobotDyn puede solucionarle algún problema se equivoca.
Esta tarjeta no funciona correctamente. Si la compras, tendrás a tu alcance un AT mega 2560 y, por otro lado, un ESP8266 pero es imposible hacerlos funcionar juntos y/o interactuar entre ellos
Por tal motivo, y necesitando poner mi alarma en internet, pido a los expertos que me aconsejéis que tarjeta wifi comprar para unir a un mega+SIM900 para crear un servidor web desde el mismo mega. Es decir, que la programación esté toda en el mega, desde donde controlarlo todo y que el "wifi" solo sea un bypass entre internet y el mega
Y a ser posible que se alimente a 5v o que haya un regulador para bajar desde 12v (realmente puede llegar a ¿15V? porque son baterías). Esto lo digo por las conexiones Tx-Rx. Si no hay problema con que estas lineas tengan un divisor con resistencias, entonces pido la tarjeta wifi mas "estable"