Creating a Digital Timer Using Blynk

Published by frenoy on

Blynk Overview

Step 1: Watch the Video

The video above goes over the entire process of creating a digital timer and we cover some additional information that is not present in this post. I’d recommend watching it first before proceeding.

Step 2: Set-Up the APP

Install The App
Welcome Screen

Start by downloading the app from the Play Store or App Store, depending on your platform. Follow the onboarding process and make sure you enter an email address that you have access too as the authentication token will be sent to it.

Create A New Project

Start by creating a new project. Give it a suitable name, select the correct board – which is WeMos D1 Mini in our case and then click the “Create Project” option. You will receive an email with the authentication token and we need to add that to the board next.

Step 3: Prepare the Board

Open up the Arduino IDE and then open up the library manager from the tools menu. Search for “Blynk” and install the library. Once done, open up the example template for your board – File->Examples->Blynk->Boards_WiFi->NodeMCU.

Updated Sketch
Board With LED

This is the template file and we need to copy/paste the authentication token from the email that was received. This token is unique for each project and it is used for identification purposes. Once done, be sure to add your WiFi network credentials and then upload the sketch to the board. You can open up the serial monitor to view the board status as it connects to your WiFi network and then connects to the Blynk server.

Connect an LED to the board at pin D1 by using a 330Ohm current limiting resistor as shown in the image.

Step 4: Create the Program

I’d recommend watching the video to get an idea of the flow of things, but here is a quick summary.

Program Workspace
Configure The Button Widget
Configure The Value Display Widget

Tap the + icon to access the widgets and then add a Button, Value Display and Eventor widget. Configure the button to act as a switch and then assign pin D1 to it. For the value display widget, configure it to display the state of pin D1. This way, we can tap the button to manually control the LED and we can also view its status using the value display widget. The widgets can be moved around to suit your needs.

Configure The Eventor Widget

Finally, we need to configure the eventor widget which is where all the magic happens. Create a new even to switch ON the GPIO pin by selecting the appropriate time zone, time and days. Then, create another event to switch OFF the GPIO pin at your preferred time. You can keep adding events to trigger different actions based on your intentions.

Step 5: Test the Schedule

Test The Schedule

Click the play button within the app so that the program gets uploaded to the board. That’s all you need to do now. The GPIO pin will automatically switch ON at the time you have set and it will then switch OFF at the OFF time that was set. You can even close the app or shut down the phone and it will all run as expected. Next, you can add a relay or configure multiple events to add to the functionality.