Blynk IoT is a full suite of software required to prototype, deploy, and remotely manage connected electronic devices at any scale: from personal IoT projects to millions of commercially connected products.
Con Blynk, cualquiera puede conectar su hardware a la nube y crear aplicaciones sin código para iOS, Android y web — para analizar datos en tiempo real e históricos provenientes de los dispositivos, controlarlos de forma remota desde cualquier lugar del mundo, recibir notificaciones importantes y mucho más…
Hemos preparado una forma rápida y sencilla de conectar su proyecto de dimmer. Ya sea que utilice Blynk.Console o Blynk.Apps, en su primer inicio de sesión el proceso se iniciará automáticamente. Recomendamos encarecidamente seguir estas guías para obtener los primeros resultados y avanzar.
Blynk documentation. Geting started - Quickstart
Descripción general del código.
- #define BLYNK_PRINT Serial
- /* Introduzca su Template ID (solo si utiliza Blynk.Cloud) */
- #define BLYNK_TEMPLATE_ID "MyTemplateID"
- #define BLYNK_DEVICE_NAME "MyDeviceName"
- #define BLYNK_AUTH_TOKEN "MyAuthToken"
- #define APP_DEBUG
- #include
- #include
- #include
- #include //Conexión del dimmer al microcontrolador y biblioteca Arduino. https://rocketcontroller.com/dimmer-connection-to-microcontroller-and-arduino-library-examples/
- static int gpio_dimmer = 23;
- static int gpio_zerocross = 5; // configuración de pines
- dimmerLamp dimmer(gpio_dimmer, gpio_zerocross);
- // Credenciales WiFi.
- // Establezca la contraseña como "" para redes abiertas.
- char ssid[] = "YourNetworkName";
- char pass[] = "YourPassword";
- BLYNK_WRITE(V0) // Se ejecuta cuando cambia el valor del pin virtual
- {
- int value = param.asInt();
- Serial.print("DIMMING = ");
- Serial.println(value);
- dimmer.setPower(value); // ATENUACIÓN
- }
- void setup()
- {
- // Consola de depuración
- Serial.begin(115200);
- dimmer.begin(NORMAL_MODE, ON);
- Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
- }
- void loop()
- {
- Blynk.run();
- }
Definición de parámetros
Al inicio, definimos tres parámetros principales.
#define BLYNK_TEMPLATE_ID "MyTemplateID"
#define BLYNK_DEVICE_NAME "MyDeviceName"
#define BLYNK_AUTH_TOKEN "MyAuthToken"
Ya sabe qué es un TemplateID. El nombre del dispositivo puede ser cualquiera.
Blynk documentation - Definitions
Credenciales WiFi
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";
Estas líneas solo aparecen cuando trabaja con un dispositivo compatible con WiFi. Reemplácelas con el nombre y la contraseña de su red WiFi doméstica o de oficina. Si su red no tiene contraseña — déjelo vacío: char pass[] = ""
Atenuación
El código siguiente escucha acciones de Blynk para el flujo de datos V0, y luego registra el valor en una variable. Para ello utilizamos BLYNK_WRITE(V0).
- BLYNK_WRITE(V0)
- {
- int value = param.asInt();
- Serial.print("DIMMING = ");
- Serial.println(value);
- dimmer.setPower(value); // ATENUACIÓN
- }
Configuración de flujos de datos
Para los fines de este tutorial, omita la pestaña Metadata y vaya directamente a la pestaña Datastreams.
Blynk documentation - Add Datastream
Los flujos de datos son canales que se utilizan para enviar datos entre el dispositivo y Blynk.Cloud. Utilizaremos este flujo de datos para enviar valores aleatorios desde su dispositivo.
Haga clic en el botón Add Datastream. Elija Virtual Pin en el menú desplegable:

Configure el flujo de datos:

- Virtual Pin: V0
- Data Type: Integer
- Min/Max: 0/100
Omita todas las demás configuraciones. Cuando haya terminado, presione Create — se creará el nuevo flujo de datos.
Estas configuraciones significan que todos los dispositivos que hereden esta plantilla procesarán enteros en el rango de 0 a 100 a través del pin virtual V0.
For setup Web Dashboard and Mobile App follow this instruction. Blynk documentation - https://docs.blynk.io/en/getting-started/template-quick-setup/set-up-web-dashboard