Hola hoy quiero compartir una librería muy útil para nuestros proyectos con ESP8266 (nodeMCU), se trata de WIFIManager     de tzapu. 

Esta librería nos permite acceder a una pantalla para configurar la conexión wifi de nuestro nodemcu ESP8266 y otros, sin tener que volver a flashear el firmware. 

Muy útil si tu proyecto con nodemcu se va a utilizar con diferentes redes wifi, ésta librería es capaz de configurar el nodemcu en modo SOFTAP, cuando no se puede conectar a la red configurada o cuando no tiene configurada ninguna red o bien se puede acceder a este modo presionando un botón. 

Una vez que se crea el AP podemos conectarnos con nuestro celular o con nuestra computadora a la red wifi creada por el WIFIManager y acceder al portal WEB de configuración de WIFI. Allí nos da la opción de escanear las redes disponibles y configurar su contraseña. Una vez hechos los cambios esp8266 se reinicia en modo normal y continua con la ejecución del programa.

Asi que esta libreria es la que vamos a utilizar en el futuro en la nueva version del Dispensador de alimentos para mascotas Ver 2.

Funcionamiento

Para poder hacer uso de esta librería vamos a necesitar primero instalarla en nuestro arduino IDE, para ello nos vamos al menú Gestionar librerías. 

Ahora ya podemos hacer uso de esta librería y para comprobar su funcionamiento vamos a partir de uno de los ejemplos que se instalan con la librería. Para esto nos vamos al menú Archivo luego a ejemplos y dentro de ejemplos buscamos WifiManager. 

Dentro de este menú vamos a ver varios ejemplos. Nosotros vamos a seleccionar para el NODEMCU  AMICA que es el que estoy usando, he decidido abrir el programa de ejemplo OnDemandConfigPortal.ino.

Este ejemplo nos permite llamar al portal de configuración presionando el botón flash del NODEMCU AMICA. 

Una vez cargado el ejemplo podemos hacer algunos cambios de ser necesario como por ejemplo el pin donde vamos a tener nuestro botón para llamar al portal de configuración esto se hace en esta linea. Para mi caso no es necesario cambiarlo ya que nodeMCU amica usa el pin 0 para el botón Flash. 

Ahora nos vamos a la función loop donde podemos ver que se presenta el código que llama al portal de configuración cuando presionamos el botón y como opciones para modificar tenemos 2, que son las que creo serian las mas útiles. Una es la opción de definir un timeout o un tiempo de espera para el portal de configuración de modo que si no se configura después de cierto tiempo éste reinicia el nodemcu y reintenta la conexión con la ultima configuración almacenada en la eeprom.

Otra opción interesante es cambiar el nombre que tomara este acces point que se crea, que por defecto es “OnDemandAP” aquí podemos poner el nombre que queramos para nuestro SOFTAP. 

Por ultimo nos vamos al final de sketch y antes del cierre de la función loop ponemos el código de nuestro programa. 

Ahora si cargamos el código como esta en nuestro nodemcu, y si anteriormente habíamos configurado otra red wifi, de seguro el  ESP8266 va a iniciar conectándose a esa red wifi ( si esta disponible ). 

De no encontrar una red wifi configurada para conectarse se inicia automáticamente el SoftAP y nos podemos conectar al portal de configuración.

Ahora una vez en el portal podremos escanear las redes WIFI e ingresar la contraseña. Luego le damos al botón guardar y listo nuestro ESP8266 queda configurado hasta que volvamos a presionar el botón. 

esto seria todo lo que necesitamos para tener nuestro portal bajo demanda de configuración de conexión wifi. 

Espero que les sea de utilidad para sus proyectos. Nosotros tenemos pensado utilizar esta librería para construir el próximo dispenser de alimento para mascotas IOT. Así que nos vemos en el próximo post. 

No olviden compartir el blog con sus amigos en las redes sociales esto nos ayuda a crecer y a seguir compartiendo mas tutoriales.