4 BLYNK LEGACY

Conseguir la App BLYNK LEGACY

La APP de BLYNK LEGACY no la encontramos en el buscador de Google Play de forma tradiccional, pues está sin mantenimiento, tenemos varias opciones para descargar la APP.

OJO no confundir Blynk (legacy) que es el que vamos a trabajar
BLYNKEGACY.PNG
con Bynk IoT que que lo encuentras en el buscador de Google Play
BlynkIoTApp.png

OPCIÓN A Desde Google Play

En este enlace aún tiene la APP antigua, pero es de propiedad de Blynk Inc luego no es de extrañar que desaparezca.

https://play.google.com/store/apps/details?id=cc.blynk

appblynklegacy.jpeg

OPCION B Fuera de Google Play

OPCIÓN B: ANTES DE LA INSTALACIÓN

No nos tenemos que fiar de descargar APK de repositorios fuera de Google Play, luego una vez descargado, pasamos el fichero por una página de Antivirus, por ejemplo 

https://www.virustotal.com/gui/home/upload

VIRUSTOTAL.png

No nos tiene que dar ningún virus

antivirustotal-2.png

Para instalarlo en tu móvil:

Primero, tenemos que llevar el fichero .apk a tu dispositivo, recomendamos usar email, por ejemplo enviándote a ti mismo un correo electrónico y lo consultas desde el móvil.

Segundo, tenemos que instalarlo y para ello hay que decirle que confiamos con apps instaladas fuera del repositorio oficial (Google Play), como depende las pantallas del modelo de tu móvil, puedes encontrar cualquier tutorial en internet cómo se hace pero prácticamente es llegar a la misma pantalla en seguridad/privacidad- permitir apps de orígenes desconocidos.

origenesdesconocidos.png

Tercero instalarlo

Cuarto, deshacer el segundo paso

OPCIÓN B DESCARGA

 Puedes buscar en un navegador esta APP, encontraras varios sitios para descargarla, por ejemplo aquí: 


BlynkApp.png

Crear cuentas

Antes se creaban cuentas en Blynk usando el correo electrónico: Cada usuario en la APP de Blynk podía crearse una cuenta, enviando un email. El servidor local Blynk puede enviar correos electrónicos si tiene configurado un fichero que se llama mail.properties y se envía el correo con las credenciales. No obstante esta opción de crear cuenta ha desaparecido de la APP (En CATEDU ya barruntábamos esto, que Blynk Inc al quitar crear nuevos usuarios es que pensaba quitar este servicio Blynk legacy).

No obstante, la creación de usuarios mediante emails era un problema pues menores de 16 años no pueden tener emails ni redes sociales, ni whatsapps (¿oigo risas?).

En el curso vas a utilizar los servidores de CATEDU luego tendrás asignado 12 cuentas de alumnos + un profesor 

Recibirás un email con los nombres de usuario y las contraseñas

¿Y fuera del curso? 

En este caso necesitarás tener un servidor Blynk legacy local que tal y como lo explicamos en los siguiente capítulos, montado en una Raspberry.

Entramos en la carpeta de Blynk en nuestra Raspberry, ya sea por VNC, o con una pantalla, teclado y ratón o por SSH y lo que hay que hacer es crear unos ficheros texto que se llamen emailusuario.Blynk.user los emails de los usuarios pueden ser inventados, por ejemplo en la figura puedes ver que en la raspberry hay dos usuarios user1@yo.es user2@yo.es luego los ficheros textos son user1@yo.es.Blynk.user y el otro es user2@yo.es.Blynk.user.

Entrando por VNC o pantalla, teclado y ratón:

userblynkvnc.jpg

Entrando por SSH

userblynkssh.jpg

El contenido por ejemplo del fichero user2@yo.es.Blynk.user es:

{"name":"user2@yo.es","email":"user2@yo.es","appName":"Blynk","region":"local","ip":"ip_local_raspberry","pass":"uffzlHwvejaeZZz2PzqmKuB22OACUDRLWvKEl7RCDQI=","lastModifiedTs":1663010486621,"lastLoggedIP":"192.168.1.73","lastLoggedAt":1635057921978,"profile":{},"isFacebookUser":false,"isSuperAdmin":false,"energy":99600,"id":"user2@yo.es-Blynk"}

Luego lo único que tienes que hacer para crear nuevos usuarios es crear ficheros texto que se llamen userx@yo.es.Blynk.user y con contenido igual que el anterior pero cambiando el numero 2 por x (si quieres respetar userx@yo.es pero puedes inventarte cualquier email ficticio)

¿Por qué puede ser que el contenido de  un fichero pueda tener más información o menos que otros?
Porque en esos ficheros txt tiene la información de los proyectos creados por el usuario 

¿Entonces si el fichero user1@yo.es.Blynk.user tiene toda la información del usuario y todas sus proyectos... si ese usuario quiere llevarse sus proyectos a otro servidor Blynk sólo tiene que copiar y pegar es fichero texto?
Respuesta : SI , así de sencillo, ese fichero texto (por lo tanto libre de virus) tiene toda la información.

¿En la APP no se almacena ningún proyecto?
Ninguno, todos los proyectos están almacenados en esos ficheros txt
si no hay conexión con el servidor, en la APP no aparece NADA

Vale, ya sé crear los nombres de usuarios ¿Y las contraseñas?
En teoría están encriptadas en el fichero texto, como puedes ver, sale uffzlHwvejaeZZz2PzqmKuB22OACUDRLWvKEl7RCDQI= eso significa alcorisa
Pero tranquilo, luego veremos en el panel de control cómo se pueden poner las contraseñas sin encriptar

+información aquí

Entrando en el Blynk Legacy: El panel de control

Como entro en el panel de control
Vale, ya estoy ¿y ahora qué?

Seguramente te saldrá la siguiente advertencia por el certificado SSL, dale a Configuración avanzada y luego a Acceder a (la IP del servidor Blynk Legacy) sitio no seguro

Luego entramos con el usuario y contraseña que nos han proporcionado

Cambiando las contraseñas de los alumnos

Y podemos ver los usuarios creados con los ficheros textos mencionados anteriormente

userblynk.jpg

Entrando en un usuario PODEMOS GENERARLE UNA CONTRASEÑA, por supuesto la pones normal, sin encriptar
También puedes borrar el usuario si no nos interesa este usuario.

userblynk2.jpg

En la APP

Conectar con el nuevo usuario

Entramos en la APP de Blynk que hemos visto anteriormente como descargarla e instalara y entramos en Log In 
appblynk1.jpg

Y ponemos el nombre de usuario que hemos creado anteriormente, y la contraseña, la que hayamos definido en el panel de control

IMPORTANTE: Entra en CUSTOM y pon LA DIRECCIÓN IP DEL SERVIDOR BLYNK LEGACY

appblynk2.jpg

Crear un nuevo proyecto

Podemos ver los proyectos que hay ya almacenados, vamos a crear un nuevo proyecto:

pantallaNewProjectblynk.jpg

Nos preguntará por el DEVICE:

deviceBlynk.jpg

Empieza un nuevo proyecto, tienes un montón de energía y widgets para hacerlo:

Crea un nuevo proyecto, y así se crea en el servidor Blynk local un TOKEN que ahora veremos qué es

Aquí tienes la captura de un proyecto o dashboard creado para el kit Imagina TDR Steam

appblynk3.jpeg

Poner el TOKEN en ARDUINOBLOCKS

¿Cómo conseguir el TOKEN?
OPCION A: QUE LO HAGA EL ALUMNO En la APP

Es la opción más sencilla, entrar en Devices pulsar en el Token y se copiará en el portapapeles del móvil, luego ir a cualquier aplicación para poder enviarla al PC (email, whatsapp...) y pegarla en Arduinoblocks en la instrucción que luego veremos.

devices-app-blynk.png

OPCION B: QUE LO HAGA EL PROFESOR En el panel de control

Entramos en el panel de control del servidor Blynk y podemos ver en los usuarios creados los tokens

userblynk.jpg

Entrando en un usuario PODEMOS VER SUS PROYECTOS Y LOS TOKENS

RECUERDA: UN PROYECTO UN TOKEN

¿Qué se hace con ese TOKEN? Se pone en ARDUINOBLOCKS:

Entramos en ArduinoBlocks y vamos al bloque de comunicaciones IoT - Blynk legacy

ATENCIÓN:  ARDUINOBLOCKS CONNECTOR tiene que estar actualizado, al menos v5 (octubre 2022)

Tenemos que poner los datos de la IP servidor BLYNK LOCAL, y el TOKEN del proyecto

En el caso de que es un proyecto con ARDUINO o TDR-STEAM- ARDUINO con ESP01 sale :

arduinoblocksblynk2.jpg

En el caso de sea un proyecto con NodeMCU o ESP32 como en el curso del Rover con Arduino o IoT en el aula sale :

nuevoblinkconexion.jpg

Endender LED

Vamos a empezar a hacer algo....

Si antes hicimos un intermitente por D4, ahora vamos a encender el LED en D0:

Y el servidor BLYNK hará de puente entre nuestra App y el NodeMCU :

Primer programa con Blynk: Encender D0 : 1 Conseguir el Token

Empezamos en la APP Blynk creamos un nuevo proyecto:

En la siguiente pantalla pregunta por el dispositivo, le decimos ESP8266 y le ponemos un nombre:

Y nos dice que el Token nos lo ha enviado por correo electrónico MENTIRA, el token lo vemos tal y como hemos visto anteriormente.

Recuerda : Un proyecto en BLYNK = Un Token

Primer programa con Blynk: Encender D0 : 2 Poner los controles

Una vez dentro del proyecto de la App aparece todo un panel si nada, añadimos controles apretando al + que hay en la parte superior

Seleccionamos el botón

Nos aparece el botón

Pulsamos sobre él para entrar en sus propiedades y cambiamos que vaya de 1 a 0 pues recuerda que este pin va al revés RECUERDA QUE EL NODEMCU TRABAJA CON LOGICA INVERSA

Pulsamos en PIN y le decimos que sea el GP16 

¿Pero no era el D0? ¿Qué es eso del GP16?

La nomenclatura de los pines cambia, el D0 es el GP16, viene de GPIO General Port Input Output. El D4 es el GP2
¿Por qué los fabricantes nos lían? 🤔

Primer programa con Blynk: Encender D0 : 3 ARDUINOBLOCKS

Ahora le tenemos que decir a nuestro NodeMCU la configuración de la Wifi, y el Token que hemos recibido, ¿cómo? muy fácil, con ARDUINOBLOCKS

Abrimos un proyecto y ponemos esta instrucción :

EL TOKEN ES EL QUE HEMOS CONSEGUIDO

Novedad: las capturas a veces cambian, ahora el nombre de la wifi y la clave está en el mismo bloque de Blynk Iniciar

BLINKCONFIG.png

Donde :

¿Nada más?

Nada más !! así de sencillo. Le damos a subir (teniendo el programa Arduinoblocks conector minimizado, eso lo podemos ver enseguida pues detecta en que COM está conectado, en la figura sale COM5)

Vamos a la APP de BLYNK, Pulsamos al botón de play ▶ de arriba arriba y vemos el estado NO TIENE QUE APARECER UN PUNTO ROJO si aparece es que nuestra placa no está conectada

Blink-chivato.png

 Luego al botón:

Y podemos ver cómo se enciende y apaga el led D0

Recuerda : Un proyecto en BLYNK = Un Token

RETO: AHORA CON D4

Encender gradualmente LED

Para ello vamos a incorporar un Slider

Y de propiedades que vaya al GP2 y que vaya al revés de 1023 a 0

El programa en ARDUINOBLOCKS es el mismo !!! no hace falta tocar nada de lo visto anteriormente !!!  O sea el nombre de la wifi, su contraseña, la IP del servidor Blynk Legaci, y el token, que es el mismo pues estamos en el mismo proyecto o dashboard.

Medir la luz del LDR

Ahora añadimos otro control Gauge

Elegimos de PIN el analógico (sólo hay uno). Recuerda que el LDR está conectado al pin analógico.

Y como va al revés, vamos a poner el medidor al revés: de 1023 a 0

¿Y en Arduinoblocks?

Es el mismo !!!! no hay que tocar nada !!!

Medir Temperatura y Humedad con el DHT22

Este caso es distinto, pues

Pero los dos miden dos variables Temperatura Y Humedad

🤔😳¿Cómo hacemos para medir dos variables en un sensor que está conectado a un sólo PIN?🤔😳

Solución PINES VIRTUALES: si, has leído bien, vamos a utilizar pines virtuales.

En ARDUINOBLOCKS

Vamos a ARDUINOBLOCKS y establecemos dos pines virtuales, uno para la temperatura y otro para la humedad, arbitrariamente he puesto V2 y V3 pero puede ser cualquiera.

dht11arduinoblockstdrsteam2.jpg

Fíjate que hay dos maneras de programar estos eventos:
- en el primero, utilizamos un bucle propio de Blynk que simplemente cada segundo lee el sensor y los almacenan los pines virtuales V2 y V3
- en el segundo no se ha utilizado ese bucle propio de Blynk sino simplemente dentro de Bucle hemos puesto otro bucle que se ejecuta cada 2 segundos, y dentro una funciona que se llama LECTURAS. dentro de lecturas esta la lectura de los pines virtuales V2 y V3

Da igual. Nosotros tenemos preferencia por el segundo método, nos parece más elegante y más controlable.

En la APP de Blynk

Y en Blynk incorporamos un Gauge que sea al PIN VIRTUAL V2.

Modificamos también los límites, pues por defecto sale 0 a 1023 y se vería muy bajo la temperatura, ponemos -10 a 30. Si es para el Rover marciano de Arduino, allí se puede llegar a -50ºC y si es para el TDR Steam será en Aragón, el récord lo tiene Fuentes Claras con -30ºC.

Para la humedad hacemos lo mismo:

Resultado :


Medir el campo magnético

El programa en ARDUINOBLOCKS es: (no cambiamos el bloque iniciar con el nombre de la wifi, su contraseña, la IP del servidor Blynk Legacy y el Token pues estamos añadiendo Gadgets al mismo proyecto o dashboard :

Y el programa en Blynk

Ten en cuenta que va al revés, cuando hay un imán, se pone a 0 NODE MCU TRABAJA CON LÓGICA INVERSA

El resultado es (acercando un imán):

Reto:

A por los motores

Cambiamos nuestro programa de ARDUINOBLOCKS utilizando unos pines virtuales para controlar los motores, arbitrariamente le hemos puesto V1 y V2 de tal manera que cuando se reciba un valor de estos pines virtuales, fijan la potencia de los motores:

Ponemos dos sliders verticales

Y configuramos uno para V5 y otro para V6:

No te olvides de pulsar el botón de la Shield para que le de energía a los Motores

A divertirnos con un Joystick

Este elemento es muy gamificador y nos posibilitará ir hacia atrás

Hay que tener en cuenta que los valores del Joystick son los siguientes :

Luego la programación en Arduinoblocks es la siguiente :

Proyecto final

Vamos a juntarlo todo :

En Arduinoblocks

Creamos una función SENSORES que lee los tres sensores digitales en tres pines virtuales

Unas funciones adelante, atrás derecha e izquierda (he multiplicado el valor de la potencia por dos para que sea más sensible el Joystick)

Configuramos Blynk Legacy para que nos lea nuestra Wifi, nuestro Token la IP de nuestro servidor Blynk Legacy y si se recibe los valores V0 y V1 del Joystick que vayan a las variables X e Y

Y finalmente el programa principal

El proyecto es público y lo tienes en este enlace (hay que estar logueado en Arduinoblocks)

http://www.arduinoblocks.com/web/project/486534

La APP Blynk

Ponemos los siguiente controles

  1. El Joystick con los pines virtuales V0 y V1
  2. El Gauge de Temperatura a V2
  3. El Gauge de Humedad a V3
  4. El Gauge de efecto Hall a V4
  5. El Gauge de Luz al analógico
  6. Un botón al D4

El panel está completo :