IoT-Wifi-Blynk IoT ¿Qué es Blynk.io? Blynk nació como software libre como Blynk legacy y en Catedu aprovechamos este servicio para realizar Rober Marciano con Arduino . La idea era sencilla: Programabas en STEAMAKERBLOCKS y el robot se comunicaba con el servidor Blynk legacy y con escritorio Dashboard via web ( Panel Web ) o APP BLYNK ponías Gadgets y controlabas el robot: En junio 2022 Blynk legacy deja de dar servicio y pasa a Blynk.io, una plataforma de pago pero que tiene Gadgets gratuitos suficientes para nivel educativo Sabías que...? Blynk legacy al ser software libre te lo puedes descargar y montar tu propio servidor Blynk legacy con lo que tendrías recursos y gadgets ilimitados. Esto lo trataremos en un capítulo aparte. Registro en Blynk.io Entramos en la página https://blynk.io/ de  y nos registramos en LOG IN Nos pide un email. Cuando lo ponemos, nos llega este mensaje que tenemos que dar al botón "Complete setup". Nos saldrá un diálogo para elegir la contraseña, una pequeña encuesta      CONCEPTOS CLAROS En BLYNK se crea el Dispositivo o Device ESP32 que contendrá el programa realizado en STEAMAKERBLOCKS y en el programa se insertan estos datos que nos proporciona BLYNK : ID DE LA PLANTILLA NOMBRE DE LA P LANTILLA TOCKEN Se definen en BLYNK las variables de flujo, flujo de datos o Datastream que son variables virtuales V1 V2, ..... tú en tu programa de STEAMAKERBLOCKS almacenas o recoges la información Y finalmente nuestro objetivo:  un Panel Web o Dashboard que es un panel donde controlas online tu ESP32 y cada gadjet que pones esa asociado a una variable virtual Crear DASHBOARD en Blynk.io Vamos a crear un DASHBOARD o PANEL DE CONTROL para controlar nuestro ESP32. AÑADIR DEVICE Vamos a Devices Create New Buscamos ESP32 Elegimos Quick start Nos saldrá un código que tiene tres cosas importantes que tienes que guardar (En download te lo baja en formato .ino que lo puede leer el bloc de notas) ID DE LA PLANTILLA NOMBRE DE LA P LANTILLA TOCKEN En el siguiente diálogo quiere meter el código en el ESP32, dar a CANCELAR pues eso lo hará Steamakersblocks DATASTREAMS O FLUJO DE DATOS Una vez creado el Device , le damos dos clicks y nos sale el Template . Al darle a  EDIT tenemos opción de ir añadiendo las variables asociadas a los pines virtuales, TE RECOMIENDO BORRAR LAS QUE TE PONE Y AÑADIR TÚ LOS PINES VIRTUALES por ejemplo en este caso DE ESP32 KEYSTUIDIO TDR STEAM IMAGINA NOMBRE PIN VIRTUAL TIPO UNIDAD MIN MAX LED ROJO V1 entero 0 1 SIMPSON V2 entero 0 1 LCD V3 CADENA PULSADOR V4 entero 0 1 TEMPERATURA LM35 V5 entero ºC 0 100 TEMPERATURA DHT11 V6 entero ºC 0 100 HUMEDAD V7 entero % 0 100 SONIDO V8 entero 0 4095 Ves añadiendo las variables que quieras visualizar o gobernar, dándoles las unidades, valores min, max correspondientes No utilices ni el potenciómetro ni el sensor de luz , tal y como vimos en Sensores y actuadores de la placa Imagina TDR STEAM , cuando hay comunicación Wifi, están inutilizados. TEMPLATE PANEL WEB Una vez creado el Device , le damos dos clicks  Si le damos dos clicks sale el Template En los tres puntos horizontales le podemos cambiar el nombre En el Edit podemos poner nuestros elementos Vamos a ir añadiendo  WIDGETS ASOCIADOS A ESOS DATASTREAMS para crear tu panel de control, algunos son de pago 😣 Los puedes redimensionar, borrar, etc... En el botón de la rueda dentada vas asociando el Widget con el pin virtual V1, V2, ... V8 Fuente https://blynk.io/ APP BLYNK IOT Hay una APP sencilla, que al loguearse YA APARECE EL DEVICE lo único que hay que hacer es el TEMPLATE asociado, y es muy sencillo Podemos visualizar y crear las plantillas en el móvil, para ello sigue las instrucciones CASO ESP32 SMART HOME ESP32 SMARTHOME he puesto de pines virtuales TEMPERATURA asociado al pin virtual V1 entero unidades ºC minimo 0 máximo 100 (por ejemplo) VENTILADOR asociado al pin virtual V2 HUMEDAD asociado al pin virtual V3 Podemos poner multitud de widgets, vamos a simplificar con  ESP32 al Template: Temperatura y humedad Template al ESP32 un botón para encender y apagar el ventilador Crear programa en STEAMAKERBLOCKS Actividad18 Blynk IoT Programa Steamakerblocks: Al inicializar... Tiene que cargar los siguientes datos de la Wifi y de la conexión con Blynk.io El nombre de la red wifi y su contraseña para conectarse El ID de la plantilla creada El nombre del Device El token para dar acceso a esa plantilla y device Si no te acuerdas de los tres últimos, mira más abajo cómo puedes localizarlos De paso hemos inicializado el LDC para que nos muestre datos A programar de Dashboard ->ESP32. Vamos a hacer que si se pulsa en el dashboard el interruptor asociado al pin virtual V1 que se encienda el led rojo Luego si se pulsa en el dashboard el pin 2 que suene los simpsons 😍 Luego si se introduce texto en V3 que en la pantalla LCD lo diga A programar de ESP32 ->Dashboard. Vamos a crear un programa que vaya recogiendo los valores de ESP32 cada 3 segundos (para no agobiar al servidor Blynk) y los vuelque al Dashboard V4 tiene los valores 0 o 1 según el valor del pulsador 1 de la placa TDR SteaMaker por lo tanto enciende el LED del dashboard de Blynk.io si se pulsa. V5 capta la temperatura del LM35, da un valor más exacto que es que visualiza el DHT11 V6 copia la temperatura del DHT11 V7 tiene los datos de la humedad del DHT11 V8 registra los datos del nivel de sonido del sensor micrófono incorporado y conectado en el A3 Para ver que realmente los valores de V8 no siguen fielmente a los reales, vamos a poner en el bucle esta instrucción para que visualice los valores de sonido registrados: ESTE ES EL RESULTADO No me acuerdo de estas tres cosas: TOKEN -ID PLANTLLA - NAME PLANTILLA ¿Dónde puedo encontrarlo? Primero Entras en Blynk.io y Te logueas Log in y luego : Entras en Depeloper Zone/Zona de desarrollador My Templates/Mis plantillas Haz dos clicks en la plantilla Con dos cliks en Authtoken ya se queda copiado en el portapapeles para que lo pegues en tu programa STEAMAKERBLOCKS Más a la derecha hay una ventana Firmware configuration/Configuración de firmware donde puedes encontrar el ID de la plantilla y su nombre: Copiar y pegar el trozo de código, pegarlo en un editor y copiar sólo el ID y el NAME para pegarlo en tu código STEAMAKERBLOCKS