Usando ESP8266 con el IDE de Arduino
En este tutorial explicaremos como instalar el plugin en el IDE de Arduino para poder programar el ESP8266 (sin usar la placa Arduino), y desarrollaremos algunos ejemplos básicos con el fin de comparar las funcionalidades del ESP8266 y Arduino.
El ESP8266 es un SoC (System on Chip), con capacidades de 2.4 GHz Wi-Fi (802.11 b / g / n, soporte WPA / WPA2), 16 GPIO de propósito general (entrada / salida), I²C, convertidor analógico-digital (ADC de 10 bits), SPI, I²S, UART y modulación de ancho de pulso (PWM), emplea un CPU RISC de 32 bits basado en el Tensilica Xtensa LX106 funcionando a 80 MHz (o overclocked a 160 MHz). Tiene una memoria ROM de inicio de 64 KB, memoria RAM de instrucciones de 64 KB y 96 KB de RAM de datos. Memoria flash externa de 4MB pero este último varía entre diferentes versiones de modulo.
En pocas palabras podemos decir que nuestro ESP8266 es un microcontrolador con WIFI incorporado. Y al igual que muchos microcontrolador podemos reprogramar a nuestra necesidad, por defecto o de fábrica nuestro ESP8266 viene con un firmware de comandos AT, que nos permite manipular el ESP8266 desde otro microcontrolador, nosotros en este tutorial vamos a programar el ESP8266 pero usando el IDE Arduino.
El chip ESP8266 comercialmente se lo encuentra en diferentes módulos cuya diferencia son la cantidad de pines disponibles y en algunos casos el tamaño de memora flash. En el siguiente link pueden revisar los diferentes tipos de módulos, nosotros detallaremos dos de los más comerciales:
ESP-01
Este módulo es comúnmente llamado Modulo wifi y está diseñado para usar como un transiver Wifi, para ser controlado de forma serial con un microcontrolador usando comandos AT.
Solo posee los pines de comunicación, de alimentación y dos GPIO.
ESP-12E
Este módulo es uno de los más usados, tiene disponible todos los pines que el chip ESP8266 posee.
Este chip es la base de varias plataformas de Iot, siendo las más populares NodeCMU y Wemos
En los ejemplos del tutorial trabajaremos con estas tres placas ESP-01, NodeMCU y WeMos D1 Mini
Instalando Plugin del ESP8266 para Arduino.
Este paso es necesario para que nuestro IDE de arduino reconozca a nuestro ESP8266 como una tarjeta.
Debemos tener ya instalado nuestro Arduino IDE con versión 1.6.4 o superior.
Seguidamente vamos a archivo>Preferencias y en la casilla “Gestor de URLs Adicionales de Tarjetas” agregamos:
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Seguidamente vamos a Herramientas>placa: … >Gestor de Tarjetas
Y buscamos en la lista “esp8266 by ESP8266 Community“, lo seleccionamos e instalamos
La instalación va a demorar un poco, al finalizar, el ítem del ESP8266 les debe marcar como instalado.
Ahora en herramientas>placas, deben de estar las nuevas placas instaladas.
Conexión ESP8266
Esto dependerá del modelo ESP que tengan:
ESP-01:
Este modelo tal vez sea el más molestoso para conectar: para que el modulo funcione es necesario conectar los pines VCC (3.3V), GND y CH_PD( a 3.3V) con esto empieza a funcionar. Adicionalmente como necesitamos la conexión con la PC vamos conectar el RX y el TX a un conversor USB serial, con esto ya está la comunicación con la PC, pero solo para programar se necesita que el ESP8266 arranque con el pin GPIO0 en estado LOW, de esta forma el ESP entra a modo de programación.
Después de programar puedes desconectar el GPIO0 para que no entre nuevamente en estado de programación cada vez que se enciende el módulo.
Notar que usamos un regulador de 3.3V, esto porque dependiendo del conversor USB serial que usen los 3.3V no podría tener la suficiente corriente para alimentar el ESP y esto podría causar que se cuelgue o reinicie el modulo.
NodeMCU (ESP-12E)
En este caso solo necesitan conectar su cable USB y conectar un led en el pin D4, esto para el primer ejemplo que veremos más adelante.
El pin D4 es el pin GPIO2 del ESP-12E, desde el IDE de arduino nos guiaremos por los GPIO en lugar de la numeración de pines de la palca:
A continuación pueden ver la distribución de pines GPIO en el NodeMCU:
WeMos (ESP-12E)
El Wemos que usaremos será el Wimos D1 Mini y al igual con el MCU solo necesitan conectar el Led al pin D4 (GPIO2), esta conexión será para el primer ejercicio que desarrollaremos.
La distribución de pines GPIO en el WeMos Mini D1 es de la siguiente forma:
Ej.1 Blinking LED con ESP8266
En este ejemplo haremos el hola mundo de microcontroladores que es hacer parpadear un led.
EL código e el siguiente:
void setup() { pinMode(2, OUTPUT); } void loop() { digitalWrite(2, HIGH); // Led ON delay(1000); // pausa 1 seg digitalWrite(2, LOW); // Led OFF delay(1000); // pausa 1seg }
Como se observa el código es igual como si se estuviera programando un arduino.
En el caso del ESP01 (módulo wifi) es necesario que al momento de cargar el ESP esté en modo de programación (debe haber iniciado con el GPIO2 en Low) y en el caso del NodeMCU o el WeMos tan solo hay que cargar desde el IDE como si fuera una arduino.
En cualquiera de los casos hay que verificar que en el IDE se haya seleccionado la placa y el puerto correspondiente (En el caso del ESP-01 debe estar seleccionado la placa: Generic ESP8266 Module)
A diferencia de un arduino durante el proceso de carga, en la parte inferior del IDE nos muestra el porcentaje de la carga que se está realizando:
Si han realizado bien todos los pasos anteriores, debe parpadear el LED, en el caso del NodeMCU y WeMos notaran que también parpadea el Led del ESP-12E, esto porque el GPIO2 generalmente se usa como TX1 para hacer debugging y el Led muestra el estado del pin GPIO2 pero negado.
Si su led Parpadea entonces significa que tienen todo configurado correctamente y están listos para realizar los siguientes ejemplos:
Ej.2 Lectura analógica con ESP8226
EL ESP8266 tiene una sola entrada analógica y al igual que un arduino es de 10 bits pero trabaja con un voltaje de referencia interno de 1V. En el NodeMCU y WeMos en la entrada A0 tiene un divisor de voltaje, para adaptar el rango hasta los 3.3V.
Este ejemplo no podrán implementar los que están trabajando con el ESP-01, y en el caso del NodeMCU y WeMos deben conectar un potenciómetro en el pin A0 pero usando los 3.3v
A nivel de código es igual como si se trabajase con la entrada A0 de un arduino, como se muestra en el siguiente sketch:
void setup() { //Iniciamos la Comunicacion Serial a 9600 baudios Serial.begin(9600); } void loop() { int sensorValue = analogRead(A0); //Lectura del ADC float voltage = sensorValue * (3.3 / 1023.0); //escalamos a voltaje //Enviamos por el puerto serie Serial.print("ADC= "); Serial.print(sensorValue); Serial.print(" Voltaje= "); Serial.println(voltage); delay(100); }
Notar también que estamos usando la comunicación serial y en este ejemplo lo utilizamos para enviar el valor de la lectura analogía a la PC
Otro punto que hay que tener en cuenta es que el rango no es exactamente hasta 3.3V esto porque el divisor de voltaje esta hecho con valores comerciales de resistencias e incluso una resistencia por más precisa que sea puede tener pequeñas variaciones, y si necesitamos un valor exacto del voltaje es necesario escalar el voltaje correctamente.
Para obtener la ecuación correcta para escalar, necesitamos conectar el pin A0 a 3.3V, seguidamente debemos de anotar el valor del ADC, en nuestro caso 966, dicho valor deberán poner en la ecuación en remplazó del número 1023.
float voltage = sensorValue * (3.3 / 966.0); //escalamos a voltaje
Ej.3 Usando el PWM del ESP8266.
En el ESP8266 podemos usar todos sus pines GPIO como salidas de PWM, la resolución del PWM es de 10 bits a diferencia de un arduino que es de 8bits.
Otra diferencia positiva para el ESP8266 es que podemos modificar la frecuencia del PWM, siendo por defecto de 1KHZ.
Para realizar el ejemplo se puede usar la conexión inicial (el Led en el GPIO2) pero les recomendamos usar esta función en otro pin puesto que le GPIO2 siempre va a parpadear al iniciar el modulo.
void setup() { pinMode(2, OUTPUT); } void loop() { for (int PWM_duty = 0; PWM_duty < 1023; PWM_duty++) { analogWrite(2, PWM_duty); delay(1); } delay(500); for (int PWM_duty = 1023; PWM_duty >= 0; PWM_duty--) { analogWrite(2, PWM_duty); delay(1); } delay(500); }
Después de cargar el código el led debe de aumentar y disminuir su intensidad.
En caso quieran modificar la frecuencia del PWM deben de poner la siguiente línea de código en el void setup () con la frecuencia deseada:
analogWriteFreq(2000); //2KHz
Ej.4 Controlando servos con el ESP8266
En este caso hay que tener cuidado con el Pin que usemos, por ejemplo el Pin GPIO2 se utiliza como salida de datos para depurar, por esta razón siempre cuando se inicie o recete el ESP el GPIO2 va a enviar datos por ese pin, eso podría causar movimientos involuntarios en el servo.
En el ejemplo trabajaremos con ese pin pues el ESP-01 solo tiene disponible el GPIO2 pero los que estén trabajando con el NodeMCU o WeMos pueden cambiar de pin.
El código es el siguiente
#include <Servo.h> Servo myservo; void setup() { myservo.attach(2); // servo en el pin 2 } void loop() { for (int angulo = 0; angulo <= 180; angulo += 1) { myservo.write(angulo); delay(10); } for (int angulo = 180; angulo >= 0; angulo -= 1) { myservo.write(angulo); delay(10); } }
Ej.5 Servidor web con ESP8266
En este ejemplo veremos la comunicación wifi y usaremos el ESP8266 como un servidor web.
Manipularemos un led que está conectado al GPIO2 del ESP a través de un navegador web.
La conexión es la misma del primer ejemplo y el código es el siguiente:
#include <ESP8266WiFi.h> const char* ssid = "WifiNaylamp"; const char* password = "123456789"; WiFiServer server(80); void setup() { Serial.begin(9600); delay(10); //Configuración del GPIO2 pinMode(2, OUTPUT); digitalWrite(2,LOW); Serial.println(); Serial.println(); Serial.print("Conectandose a red : "); Serial.println(ssid); WiFi.begin(ssid, password); //Conexión a la red while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi conectado"); server.begin(); //Iniciamos el servidor Serial.println("Servidor Iniciado"); Serial.println("Ingrese desde un navegador web usando la siguiente IP:"); Serial.println(WiFi.localIP()); //Obtenemos la IP } void loop() { WiFiClient client = server.available(); if (client) //Si hay un cliente presente { Serial.println("Nuevo Cliente"); //esperamos hasta que hayan datos disponibles while(!client.available()&&client.connected()) { delay(1); } // Leemos la primera línea de la petición del cliente. String linea1 = client.readStringUntil('r'); Serial.println(linea1); if (linea1.indexOf("LED=ON")>0) //Buscamos un LED=ON en la 1°Linea { digitalWrite(2,HIGH); } if (linea1.indexOf("LED=OFF")>0)//Buscamos un LED=OFF en la 1°Linea { digitalWrite(2,LOW); } client.flush(); Serial.println("Enviando respuesta..."); //Encabesado http client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println("Connection: close");// La conexión se cierra después de finalizar de la respuesta client.println(); //Pagina html para en el navegador client.println("<!DOCTYPE HTML>"); client.println("<html>"); client.println("<head><title>Naylam Mechatronics</title>"); client.println("<body>"); client.println("<h1 align='center'>Test ESP8266</h1>"); client.println("<div style='text-align:center;'>"); client.println("<br />"); client.println("<button onClick=location.href='./?LED=ON'>LED ON</button>"); client.println("<button onClick=location.href='./?LED=OFF'>LED OFF</button>"); client.println("<br />"); client.println("</div>"); client.println("</body>"); client.println("</html>"); delay(1); Serial.println("respuesta enviada"); Serial.println(); } }
En el código deben modificar las variables correspondientes al nombre y clave de la red.
Después de cargar el programa es necesario abrir el monitor serial para ver si se ha conectado correctamente a la red, y a la vez ver la IP que se nos ha asignado.
Posteriormente debemos abrir un navegador e ingresar la IP, es necesario que la pc o celular estén en la misma red al que está conectado el ESP8266. Si todo va bien les debe cargar la siguiente página:
Ahora al presionar el botón nuestro ESP realizará la acción correspondiente.
En el monitor serial pueden monitorear las peticiones que se hacen al ESP8266, solo mostramos la primera línea de cada petición http pues es allí donde están los datos que pasamos por URL.
Si**** ***dy 04/11/2023 Responder
Que buenos son sus tutoriales, aparte de ser una fuente confiable para comprar, son los mejores, muy satisfecho con sus servicios y gracias por proporcionar documentación y tutoriales, eso los destaca por encima de los demás, porque no son solo una simple tienda, sino que ayudan a la comunidad con conocimiento, gracias :)Ma**** 27/09/2023 Responder
No puedo conectarme al esp quien tendrá los driverro***** ****ue 03/08/2021 Responder
No funciona la dirección IP. Hay otra?Fe******* ****os 12/07/2021 Responder
Gracias y tengo una duda. Como podría hacerse para usar otra red WiFi o datos móviles para hacerlo funcionar igual pero que no estén conectados a la mismaho*** ****is 18/04/2021 Responder
Thank information!Du****** 17/01/2021 Responder
Todo genial, muchas por compartir. Un saludo desde Colombia!jo*** 25/07/2020 Responder
De una salio funcionando.Una sola cosa el efecto de encender y apagar a traves de la web me lo hace invertido (cuando preiono para encender , apaga el led y a la inversa en el otro sentido)
Ro**** **** ******nd 18/11/2020 Responder
Eso sucede porque el PIN D4, tiene una resistencia PULL-UP (Conectado a positivo), entonces para encender se envía un 0 ("LOW") y para apagar se envía un 1 ("HIGH"), Puedes conectarlo al PIN D0:GPIO16 (16).Br*** 27/05/2020 Responder
Gracias por la informacion, disculpe como se conecta el Módulo NodeMCU ESP8266 con arduino serialta*** 24/05/2020 Responder
hola tengo el ESP8266 decir que soy un mero aficionado pero quería montar si es posible un timbre inalámbrico conectado al video portero de mi casa ya que cuando estoy en la terraza si llaman no me entero y queria algo a sihttps://auta.es/wp-content/uploads/TIMBRE-INAL%C3%81MBRICO-HEB-HI-401.pdf
si podeis ayudar o algun tutorial
gracias
Ab** 03/05/2020 Responder
Hola me gustaria sabes cmo puedo agregar mas botones y poder ensender mas leds gracias de antemanojo*** 05/03/2020 Responder
Es una genialidad lo que has explicado, con ejemplos y todo lo que hace falta para los novatos como yo...Excelente
ri***** 21/01/2020 Responder
Excelente; En el ejemplo 5 del servidor web, es posible que pueda estar conectado a otra red wifi??Go***** ***di 09/11/2019 Responder
Hola, me sirvió de mucho la información de la pag en especial la conexión de los leds en un servidor web ya que estoy haciendo una casa domotica, lo único que quería preguntar es que si se puede conectar un arduino mega/UNO a mi NodeMCU (ESP-12E) para ampliar las entradas lógicas... GraciasPr*** 01/05/2022 Responder
Mejor integra un protocolo de comunicación entre tarjetas, así con dos pines y usando I2C o SPI por ejemplo, se comunicas con una segunda tarjeta con muchas entradas y salidas.Ad** 27/12/2019 Responder
Si se puede conectar un arduino con un nodemcu por el protocolo spi(GPIO12-15) pero si no requieres el procesamiento del arduino es mas economico utilizar un circuito integrado(un multiplexor/demultiplexor u otro comunicable) para expandir entradas/salidas digitalesle****** 11/10/2019 Responder
MARAVILLOSO. a la 1ª,Po** 26/08/2019 Responder
Hola, me sirvio mucho. Solo una pregunta, como se alimenta la tarjeta? es atraves del puerto Micro USB ya que este da 5 voltios. O es con una fuente por separado?Ad** 27/12/2019 Responder
Hola, lo puedes alimentar con 3.3V en sus terminales, el modulo tiene un regulador de voltaje que lo baja de 5 a 3.3V cuando lo alimentas por micro usbHa**** ****is 15/05/2019 Responder
Hola amigos mi problema es el siguiente:Mi internet es limitado pues vivo en cuba, entonces ya descargue el .zip para programar el NodeMCU con el IDE de Arduino pero no se donde ponerlo para que el IDE me de la opcion de programar dicha placa. Les agradeceria un monton si me contactaran al correo [email protected] y me explicaran en que directorio pego dicho .zip(se llama esp8266.zip y es la version 2.5, la ultima tngo entendido) por favor soy un estudiante de mecatronica y me encantan estas cosas pero el internet aqui es caro y lento y paginas como estas se nos hace practicamente imposibles volver a encontrarlas y/o registrarnos. Espero su correo, no obstante mi whatsapp es +5352561792 por si me pueden explicar por ahi tmbien. MIL GRACIAS!
Os*** ******* 04/05/2019 Responder
saludos amigos, tengo el mismo problema que mencionan algunas personas, no me puedo conectar al router, se queda esperando en puntos suspensivos y no pasa nada, tambien cambie el tipo de seguridad de WAP a WAP2 y tampoco me funciono,pero probé compartiendo wifi desde mi celular y se conecta sin problema, osea que la causa si esta en la configuración del router, si alguien logro solucionar el problema le estaría muy agradecido que nos lo compartiera.Pa** 23/02/2019 Responder
Hola, muchas gracias por tu programa, me sirve en parte, pues estoy haciendo un programa de riego remoto. ¿sabrias cómo poner un boton físico para cambiar el estado del GPIO2 ?un saludo
Ad** 27/12/2019 Responder
Una terminal del boton a 3V3 y la otra terminal a la entrada GPIO2, y agregando una resistencia de 1kOhm desde GPIO2 a GND por eso de que no quede volando la entrada digitaljo** *****do 24/01/2019 Responder
Hola, Me gusto mucho la informacion y me fue de mucha utilidad,Estoy comenzando en esto de arduino, y me gustaria saber si es posible
basado en la informacion que compartiste, podemos encender y apagar un LED,
tambien hacer que el LED parpade pero al terminar su secuencia se detiene,
como hacer para que la secuencia continue sin utilizar el while?
Saludos
Ne**** ****la 25/09/2018 Responder
De los mejores tutoriales que he visto, muy bien explicado, felicitaciones .....fe**** 12/08/2018 Responder
hola todo funciona muy bien hasta conectarse me indica a la red que se conecto y me mi IP 192.168.0.19 cuando voy al navegador no accede a test esp8266 aparecen muchas paginas con el mismo IP ya revise mas de una y en ninguna esta ayer hice el mismo ejercicio con otro modulo y me decia que no podía conectarse a esa pagina el modulo si esta conectado a mi modemLe****** 29/06/2018 Responder
Hola amigo, por favor sacáme de la duda, en mi caso cargo un código en esta placa y se ejecuta perfectamente, pero cuándo le quito la alimentación y lo vuelvo a enchufar, no funciona, es como si no quedase cargado el sketch en la memoria flash, luego abro el ide de Arduino, vuelvo a cargar el sketch y vuelve a funcionar, es como que sólo guarda el programa en la menoria ram y lo ideal es que sea comoo el arduino, que guarda el programa incluso si se desconecta de la electricidad y se lo vuelve a conectar.Espero haber sido claro, desde ya muchas gracias.
al*************** 06/05/2018 Responder
Hola: Tengo una pregunta que es muy probable que muchos estén interesados. Alguien pudiera ayudarme con el siguiente proyecto...El tema es hacer una pequeña red con tres módulos para empesar y la idea fundamental es que un módulo sea servidor y los demás clientes. Cuando un módulo en la entrada de un pin es activo alto, los demás a la salida de uno de sus pones también será activo en alto. Agradecería su ayuda. Por suerte excelente sitio explican de la A a la Z.
Da**** 02/03/2018 Responder
Hola, seguí el ejemplo 5, Servidor web con ESP8266 y me funcionó prefecto. Muchas gracias. Quería saber como adiciono mas leds y mas botones ON/OFF. Saludos desde Colombia.Da**** *****es 23/09/2018 Responder
Tengo la misma duda?mi***** 24/02/2018 Responder
Hola, lo primero felicitarte por el artículo.He seguido los pasos que indicas pero cuando subo el sketch obtengo el siguiente error:
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
podrias ayudarme?
ro***** *****da 16/02/2018 Responder
buen tutorialuna pregunta que tan probable es q se pueda usar con un piranometro de medicion solar
jo****** 12/02/2018 Responder
Estimados,excelente aporte, felicitaciones
solo tengo una duda
como lo hago para acceder desde una red distinata
o sea que el modulo este conectado a un wifi y controlar el led desde un celular conectado a red GSM en un lugar remoto ?
muchas gracias
ro***** 04/02/2018 Responder
Hola. Muchas gracias por el tutorial. Está buenísimo. Estoy teniendo el mismo problema que mencionan por acá. Después de unas horas el nodeMCU se desconecta de WiFi y tengo que resetearlo manualmente. Alguno sabe como solucionar este problema?Muchas gracias.
Saludos.
sa*** 28/10/2017 Responder
Hola, una consultilla, es normal que se demore tanto para conectarse a la red wifi?Cuando abro el monitor serial, me sale conectado a la red: XXXXXXXX
y luego se queda cargado, aparecen una serie de puntitos, pero no carga nada más.
Ro**** 20/10/2017 Responder
Estimado, cuando trato de subir un sketch al nodeMCU12E me sale lo siguiente:Uploading 226352 bytes from C:UsersFamiliaAppDataLocalTempbuildcba67a2011a0423ff79a7e3abdcaf1b4.tmp/Blink.ino.bin to flash at 0x00000000
warning: espcomm_send_command: didn't receive command response
warning: espcomm_send_command(FLASH_DOWNLOAD_BEGIN) failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed
Como lo solucionno?
Jo*** **za 30/09/2017 Responder
Muchas Gracias, Excelente explicación sobre todo cuando va uno empezando, seguiré este sitio más de cerca.Excelente explicación, claro, y motivante.
Saludos
MTY.MX
Jo** 24/09/2017 Responder
Estimado amigo muy buena ayuda, como consulta en el caso de querer mostrar un dato o valor como la pulsación de un boton (HIGH o LOW "1 - 0") o Temperatura de DHT11 en el caso del HTML como se lo podria mostrar.En espera de una respuesta favorable me despido deseándole éxitos.
Ra*** 07/08/2017 Responder
que tal me sirvió muchisimo tu post !! mi pregunta es la siguiente hay alguna manera de recibir datos de una pagina web en un servidor externo a la placa como por ejemplo de alguno de pago o de mi localhost a la placa ?Na***** 29/08/2017 Responder
Hola Ramon, para conectarse a un servidor, el ESP8266 tiene que usarse como cliente. Guíate de nuestro tutorial Arduino y ESP8266 como cliente web , el mismo proceso tienes que realizar usando el ESP8266 como arduino.Jo*** 02/08/2017 Responder
Hola, tengo el mismo problema que Luis y Darío, a alguien más le pasa? Saben cómo solucionarlo. Gracias.No** 15/10/2019 Responder
Yo tambien tengo ese problema con el wifi. Tengo seguridad Wep vere si puedo cambiarla a wap 2Jo***** 30/10/2017 Responder
Buenos días, yo tenía el mismo problema, sobre todo si accedía varias veces seguidas o de varios dispositivos, tras un par de controles que le agregue al código llegue a la conclusión que el bug sucedía en el " while(!client.available()&&client.connected())". Lo eliminé y me funciona a la perfección y muy estable.Na***** 29/08/2017 Responder
Hola Jorge, revisa las características de tu red, Mira si usa IP fija o DHCP, podría haber conflictos de IP. Si el tipo de seguridad de la clave wifi es WEP intenta cambiarlo a WAP2.Ju** 18/07/2017 Responder
Hola, He llevado el HTML a una publicación en el IIS , pero como el ejemplo obtiene la IP del sensor tengo problemas ya que siempre se invoca a esta IP. Sucede que la publicación ejecuta con la IP de mi PC ...Como puedo trabajar en este escenario?Gracias
ju*** 30/06/2017 Responder
Hola buenas, el tema es que me he fabricado un termostato con el ESP8266 y puedo gestionar la temperatura de la caldera desde cualquier parte del mundo desde mi móvil, viendo en todo momento Tª y humedad. El problema me surge cuando han pasado unas horas, el módulo se desconecta del wifi y me toca reiniciarlo físicamente. Había implementado un watchdog, pero al final no me sirve puesto que al reiniciar el módulo mediante SW tb me reinicia las patillas GPIO y la conexión con la caldera se pierde.¿Te ha pasado algo así?, ¿alguna sugerencia?
Gracias
Na***** 30/07/2017 Responder
Hola julio, cuando el ESP8266 pierde la conexión wifi, de forma automática vuelve a conectarse. Trata de implementar indicadores para saber cuál es realmente el problema, puede ser que pierda la conexión wifi, se queda sin acceso a Internet, o algún desbordamiento de alguna variable.Ca**** ****ra 29/06/2017 Responder
Hola, es de los mejores tutoriales que he encontrado, muchas gracias, una duda todo me funciona bien, solo que después de pasados unos minutos el led se apaga y tengo que reiniciar de nuevo el modulo para encenderlo y apagarlo.Na***** 30/06/2017 Responder
Hola Carlos, en qué ejemplo tienes ese problema? podría ser problema de fuente, el ESP8266 es sensible al ruido, para descartar intenta agregar un condensador de 100uF entre el vcc y gnd o probar con una fuente estable de 5V y de 1A.an**** 14/06/2017 Responder
Saludos.Como seria la conección fisica, para conectarle un Relay? https://es.aliexpress.com/item/1-Channel-5V-Relay-Module-Low-level-for-SCM-Household-Appliance-Control-FREE-SHIPPING-For-Arduino/1625076508.html?spm=2114.17010208.99999999.276.xPaKIH
Tengo entendido que no tiene salida de 5v.
De antemano gracias.
Na***** 30/06/2017 Responder
Hola Andres, si trabajas con el NodeMCU no tiene salida de 5V, para alimentar el modulo tendrás que usar una fuente externa de 5V, si usas el WeMos si tiene salida de 5V. El pin de dato del modulo relay si puede ir conectado directo al NodeMCUDa*** 18/05/2017 Responder
Yo tengo el mismo problema que Luis, mi NodeMCU no se conecta a la red wifi del router de la casa pero si le comparto Internet de mi celular se conecta con éxito, cómo puede resolver este problema?Na***** 31/05/2017 Responder
Podría ser la configuración del router, prueba en otra red wifi que funcione y compara las configuraciones del router.Se**** 02/05/2017 Responder
Hola amigo. Tengo una duda y me gustaría compartirla para lograr resolverla. No soy nada experto en Arduino o nodemcu pero esta última placa me agrada por las posibilidades que ofrece, wifi y muchos puertos gpio. Estos puertos gpio, deseo usarlos como entrada de datos, específicamente para leer el cambio de estado de varios Sensor de luz y luminosidad con resistencia LDR. Estos traen pines A0 y D0, imagino serán salidas analógicas y digitales. Mi pregunta es: ¿podría usar esos valores de salida del sensor como entrada al nodemcu y de ser posible, cuál? ¿El A0 o D0? Gracias de antemano y disculpa mi ignorancia.Na***** 31/05/2017 Responder
Hola Sergio, puedes usar cualquiera de las dos salidas del módulo LDR, si usas la analógica tienes que conectar al pin analógico A0 de NodeMCU. Y si usas la salida digital del módulo puedes conectar a cualquier pin GPIO del NodeMCU.Os*** 24/04/2017 Responder
Hola, yo cuento con un nodemcu lolin V3, todo parece estar bien alcargar un programa pero cuando termina parece que no responde ya e intentado encender un led con diferentes gpio pero ninguna parece responderNa***** 18/02/2017 Responder
Hola Luis, la forma más fácil seria solicitarle al cliente un usuario y contraseña, si los datos son correctos recién mostrarle la información del arduino, similar al acceso de configuración de un router.Lu** ***as 05/02/2017 Responder
Hola muchas gracias genial tu aporte me sirve mucho, tengo una pregunta sobre como mejor la seguridad del servidor?. de nuevo muchas gracias.Na***** 18/02/2017 Responder
Hola, la forma más fácil seria solicitarle al cliente un usuario y contraseña, si los datos son correctos recién mostrarle la información del arduino, similar al acceso de configuración de un router.Jo*** 02/01/2017 Responder
Comparto un adaptador DIP para el ESP12E(ideal para pruebas en protoboard)
https://mega.nz/#!9UkAyBRa!Jyji4riXKnQK3LbNtU03Zv7CqWEkQQkiyFXeOJjicNc
http://www.mediafire.com/file/7l7t7l48fx6hnd3/esp12E-adap.brd
Jo*** 02/01/2017 Responder
el pcb está en EagleLu** 22/12/2016 Responder
Buen día, tengo problemas al acceder al modo Servidor web con ESP8266 con mi router de casa, ingreso el nombre de la red y la contraseña, cargo al dispositivo y luego al momento de visualizar la comunicación de recepción de la IP que obtiene el dispositivo, aparece:Conectandose a red : VHDL_FPGA
............................... ................................................
y sigue los puntos suspensivos para conectar a la Red. y no logra conectarse a la Red.
He hecho la prueba con mi celular, compartir el internet al ESP8266 y el resultado es exitoso. Pero no resulta el mismo resultado con el router de casa, podrían darme algunas sugerencias....!!!
Da*** 18/05/2017 Responder
Hola Luis, ya solucionaste este problema con la conexión al router de casa, yo tengo el mismo inconvenientes y no he podido solucionarloFe****** 14/11/2016 Responder
Más que comentario es una pregunta todo super bien explicado y funciona muy bien ,vyo tengo un problema que me está volviendo loco , cuando conecto el node mcu por primera vez a la tableta con Windows 10 se conecta al serial y se desconecta con una frecuencia de un segundo hasta que oprimo el botón rst luego puedo cargar el programa sea cual fuere , y cuando termina de cargar por ejemplo el Code del servidor y quiere conectar el terminal serie empieza otra vez a desconectarse y conectarse dándome error , tengo dos placas node las dos me hacen lo mismo .No probé con un ordenador todavía pero no encuentro la solución , Ah mi placa es nodemcu lolin con Driver ch340 G desde ya gracias Fernando desde Ibiza
Na***** 16/11/2016 Responder
Hola Fernando, suele pasar eso cuando el cable está fallando, pero en tu caso no creo que sea eso puesto que te deja programar. Lo más probable es que un segundo procesos o programa en la tableta esté abriendo y cerrando los puertos seriales en busca de algún dispositivofe****** 26/11/2016 Responder
Solucione el problemaEn el momento que conecto la nodemcu en la tableta por otg cae la tensión así se lo atribuyo
A qué la tableta no es capaz de alimentar .
Conecte en el ordenador y no tuve inconveniente .
Así el que quiera programar en una tableta con Windows 10 sabe a que atenerse .