Arduino Digital Clock is aimed to get the Time & Date automatically and sending them to the Arduino.
So, you can control things around you with Arduino based on the real-time and date.
If I asked you: could you please turn off the lights when it comes to 10:30?
Actually, the common answer would make a reminder on your phone to turn the lights off by 10:30.
Well, that’s ok for any normal person but not for a maker. As any maker would certainly think of automating this process by making some cool stuff which can get time automatically and take certain actions when 10:30 comes!
And his your 10-minute tutorial to learn how to get time automatically, monitoring it and make any decisions based on it.
Let’s talk about the idea behind the Arduino Digital Clock project …
We are going to get time from the smartphone automatically and wirelessly by using 1Sheeld with it’s Android/iOS App with Arduino board.
The idea behind the Arduino Digital Clock is to use the clock shield from the smartphone App and connect the App to the 1Sheeld via Bluetooth. So the App will automatically send the current date+time to the 1Sheeld board connected to the Arduino.
So we can print the current time (hours + minutes + seconds) on an LCD 16*2 and once a second passed, a minute passed or an hour passed the time on the LCD will be changed automatically … with this simple 🙂
If this is your first time to deal with 1Sheeld or you want to learn more about it, I recommend checking this quick and easy getting started tutorial.
And if you haven’t tried LCD 16*2 before, I recommend checking this quick video.
Now, after you’ve become a little bit familiar with 1Sheeld, let’s start!
Step 1: Hardware components:
– Arduino Uno.
– 1Sheeld+ board.
– LCD 16*2.
– 10K potentiometer.
– 22 * Male to male wires.
– Arduino USB cable or 9-12v battery.
– Android/iOS phone with 1Sheeld App installed on it.
Switch the 1Sheeld power to operate on 5v (Not the 3.3v):
1Sheeld have 2 modes: Uploading mode and Operating mode. You can switch between them using the switch close to the Digital pins and is called “UART SWITCH” on 1Sheeld and “SERIAL SWITCH” on 1Sheeld+.
Firstly, you slide the switch towards the “SWITCH” notation. This turns the 1Sheeld board into the Uploading mode to let you upload the Arduino code.
Secondly, after you finish uploading the code, slide the switch towards the “UART” notation (or “SERIAL” at 1Sheeld+ board) which turns the 1Sheeld board into the Operating mode to communicate with your smartphone 1Sheeld App.
Connect the Arduino via your PC using Arduino USB cable.
Step 4: Code:
I would recommend checking the Arduino Clock Shield documentation to know more about the Arduino Clock Shield functionality and how to use them.
Now, switch the 1Sheeld board to the Uploading mode, upload this code for the Arduino Digital Clock:
Arduino Digital Clock Project
This project shows an application on 1Sheeld's clock shield.
By using this project, you can monitor the current real time
by using clock shield from 1Sheeld.
You can then take certain actions based on the time you get.
To reduce the library compiled size and limit its memory usage, you
can specify which shields you want to include in your sketch by
defining CUSTOM_SETTINGS and the shields respective INCLUDE_ define.
/* Include clock shield only */
/* Include 1Sheeld library. */
/* Include LCD library */
/* Define some variables for the time. */
// Initialize the LCD library with the numbers of the interface pins
/* Start communication. */
/* Start the clock shield. */
/* Set up the LCD's number of columns and rows */
/* Print this line to the LCD */
/* Always get the time. */
/* Set the cursor to column 0, line 1 */
/* Print the current hour */
/* Print the current minute */
/* Print the current second */
/* As once second reaches "59", it start again with "0" not "00" so, the "9" of the previous "59" will stay causing a confusion */
/* So, we clear the second line after a second has passed */
/* Move the cursor to the begining of the second line */
/* Loop to clear "print empty spaces" all the 16 places of the second line */
/* Clear "print empty spaces" to clear the previous time to print a new one */
Then, Switch the 1Sheeld board to the Operating mode then open the 1Sheeld app and connect it to the 1Sheeld board via Bluetooth.
Step 5: Run the Arduino Digital Clock:
Finally, select the Arduino clock shield from the shields list.
You will notice that the LCD is showing only zeros.
And this is normal because you have to press the Arduino reset button to make 1Sheeld send the time request again to the App.
What happened after uploading the code is that any code inside the void setup() part (where we send the time request) runs fast even faster than the time you took to switch to the operating mode. Then the Arduino lies inside the void loop() part forever.
Briefly, the Arduino sent the time request quickly. Then you switched to the operation mode where the communication between 1Sheeld and App started and missed the time request.
Hence, by resetting the Arduino after the 1Sheeld is in operating mode, it goes inside the void setup() part again. Then it sends the time request again and now the request reached the App and updates the time on the LCD!
Now, you have just finished the Arduino Digital Clock.
You can add your own extra code to check whether the time reached a certain value then take a proper decision.
These decisions may be like switching lights connected to a relay. And maybe open the fan for you to cool weather just at the time you return home 🙂
Hope you enjoyed this Arduino Digital CLock project!
If you have any question, please don’t hesitate to leave it in the comments down below.
Arduino keeps standing out from the crowd of all-around development boards due too its ease of use and budget price. As a result, this has enabled almost anyone to get his own idea into life no matter how crazy or even useless to the whole world it was, except for its maker! Also, it has …
Arduino robots are always funny and definitely more enjoyable when combined with robotic arm! And today, I will walk you through the making of a simple Arduino Robot Arm that’s made of cardboard and how you can attach it over your Arduino Bluetooth RC Car / Robot that you have made so far through this series. …
Arduino Line Following Robot is one of the easiest and most well-known projects that anyone can make to learn the basics of programming, electronics, and mechanics all in one project. It’s known that this project is common for most of the makers and tech students and today I am going to give it a revisit …
Back again with another Arduino Bluetooth RC Car tutorial but with an advanced feature that makes your car autonomous by adding ultrasonic sensors to the RC Car you have made before!. Yeah, I know that you may have seen other tutorials using ultrasonic to make the car/robot avoid obstacles ahead, but I am going to …
Cardboard crafts are one of the most popular and easy to make DIY stuff. Mixing this with the unmatchable enjoyment of RC Cars and the ease of using Arduino, I am going to show you how to make a Cardboard Arduino Bluetooth RC car that you can control via Bluetooth from your smartphone. …
Arduino Security Camera Have you ever wanted to check your home in real time? Afraid that maybe someone has stormed in, don’t remember if you shut the door or not or maybe wanna check if your Hyper-energetic dog has broken any of your dishes AGAIN!! 🙂 Then this is the perfect place for you cause today …