Comunicación directa Cliente-Servidor entre ESP8266

Como veo que es una pregunta frecuente en el foro el comunicar ESP8266 sin necesidad de router intermedio, dejo en mi página un ejemplo lo más simple posible de cliente-servidor entre dos ESP8266.
En el cliente hay una fotoresistencia que al bajar su luminosidad, provoca el encendido de un LED en el servidor.

Cliente-Servidor entre ESP8266

Hola, gracias por tus aportes.
He estado "trasteando" con diferentes módulos wifi ESP8266 que inicialmente me dieron problemas pero que felizmente he resuelto, pero tengo un par de módulos bluetooth que aún no he utilizado y la pregunta es, qué ventajas o inconvenientes tiene el conectar dos módulos wifi o 2 módulos bluetooth.

wifi vs BT

Dentro de mis expectativas actuales (placas controlando diferentes mecanismos dentro de mi vivienda) la única ventaja que le vería al wifi sería la posibilidad de interconectar varios módulos. Repito, aún no me he "metido" en el tema de las placas bluetooth.
En tu experiencia, de cara a fiabilidad en las conexiones?

Pues a ver...la fiabilidad es la misma que tiene tu móvil o portátil con tu router.

Hola "Jopapa" entre a tu pagina hace poco antes que nada quiero decirte que creo que tienes buenos proyectos y hay que saber armar esos rompecabezas de programación ahora quisiera decirte que probé tu proyecto y no funciona no se por que tal vez me falte una biblioteca pero no se #include <ESP8266HTTPClient.h> es esta no se me muestra de color naranja que supongo es que la biblioteca la reconoce el IDE de arduino, carge el programa tal y como esta en tu código el servidor si logre hacer un test desde la web con la dirección ip del SERVER el cliente me marca un error que no hay HTTP o no conexión web espero alguien pueda ayudarme ha y tengo código para controlar un LED desde Una pagina web y también el de controlar el Modulo Wifi desde Google Assistant Saludos
Ayuda Comunicacion directa punto a punto de ESP8266 Cliente - Servidor

1 Like

ManuelAngel, con tu redacción es dificil aclarase que es lo que te funciona y que es en concreto lo que falla. No dices si ambos Sketch te compilan bien o te dan error y cual.
El color de la libreria no importa si no hay errores en la compilación. Si usas módulos Nodemcu "tiene" que funcionar.
La libreria ESP8266HTTPClient pudes descargarla de aquí

Hola "Jopapa" tienes un buen material. Estoy desarrollando un proyecto con dos ESP8266 nodemcu 0.9, a uno lo pongo como servidor y el otro como cliente. A todo esto llegue a conectarme entre ambos dispositivos, logré mandar mensaje del cliente al servidor, pero en el servidor no lo puedo hacer la respectiva lectura para encender un led o activar cualquiera de las salidas digitales que tiene el modulo del mensaje que mando el cliente. ¿Hay alguna manera de leer la respectiva lectura y en esa lectura activar una salida digital?, ahí esta el código lo dejo en archivo arduino; donde me cree en void loop (en el servidor) un bucle de void AvailableMessage() y ahí quiero que haga la función que les he mencionado...

Prueba_1_Cliente.ino (6.43 KB)

Prueba_1_servidor.ino (6.87 KB)

Nixasd, solo te puedo recomendar que programes los dos Sketch de mi ejemplo y una vez funcionen, a partir de ahí vayas haciendo PEQUEÑAS MODIFICACIONES PROGRESIVAS hasta conseguir el resultado que deseas.

lo que te quería preguntar es que no se por que se me conecta el cliente al servidor y después se me desconecta marcando falla en http en el monitor serial y quería saber es por la libreria ESP8266HTTPClient la
1.-verdad es que no se como descargarla
2.-yo descargue la del ESP8266 y vienen ejemplos que usan esa libreria pero no aparece en naranja como otras que aparecen en el mismo codigo como WIFI.h
3.- que me sugieres.

Jopapa, logré que el servidor reconozca el mensaje y me active una salida. ¿Hay alguna manera de enviar mensaje del servidor al Cliente y esta que active una salida?

En tu pagina solo hay ejemplo del envio mensaje del cliente al servidor, pero no viceversa, podrías dar un ejemplo.....

Para hacer comunicación bidireccional se necesita crear un Websocket, te recomiendo este video

Depende de para qué, pero para una cosa simple yo usaría dos nRF24L con tutorial.