Arduino Digital Clock With Alarm Function (custom PCB)




Introduction: Arduino Digital Clock With Alarm Function (custom PCB)

In this DIY guide I will show you how to make your own digital clock this alarm function.

In this project I decided to make my own PCB that is based on Arduino UNO microcontroller - Atmega328p.

Bellow you will find the electronic schematic with PCB layout so you can easily produce it.

By pressing the buttons you will be able to set time/date/alarm and alarm state (on/off).

The alarm can be turned off by pressing the alarm button or by shacking the box.

Updates and more can be found here:

Let's get started.

Step 1: What You Will Need - Hardware

Step 2: The Circuit at EasyEDA, the Free Online Circuit Design Platform

Enter here to see and make any changes to the above circuit.

Step 3: The Code

How to program it:

Connect your circuit with TTL to USB module with 5 cables to the programming header.

The pins RX and TX must be cross-connected.

NOTE: If you are using the Arduino UNO board make sure to remove the ATmega328 IC from it first and connect the headers RX to RX and TX to TX pins of the board. The RS pin must be connected to Arduino UNO reset pin.

Download the code from here and open it with Arduino IDE. Inside you will also find the library file.

Step 4: JLCPCB - Make Your Own Circuit Boad From 2$!

Enter here to produce your PCB board!

Use JLCPCB for $2 PCB Fabrication & 2-day Build Time, the quality is really good, check the below photo of our pcb board.

Step 5: 3D Parts

Step 6: Well Done!

I hope you liked this, let me know in the comments!!!



    • Water Contest

      Water Contest
    • Tiny Home Contest

      Tiny Home Contest
    • Metalworking Contest

      Metalworking Contest

    6 Discussions

    Sorry but you can't use the SPI as a program method with this custom pcb board.

    You do not need to remove the chip from the Arduino to program. You can build a minimal circuit on the breadboard for the chip (I think this would be required anyway) and upload the ISP program to the chip on the uno, and then program the chip via "upload using ISP". My chip sits so firmly on the uno, I was afraid to break it during removal, so I left it.

    Thank you very much for your comment! I really appreciate it!
    * Part list updated
    * About video, I will try to make a better one next time and I will follow your advice
    * I understand what you are telling me about easyeda and I will agree with you
    * About JLCPCB, I will disagree with you, the quality of my PCBs is very good
    * About connections, PCB layout has labels for all connection parts, plus CN1 (power).

    2 replies

    With regard to the PCB, you and I are actually in full agreement. Your PCB quality is good because your layout work and attention to design rules were very good. I think you did a good job on the PCB.

    I can't say the same for nearly every other project I've seen from JLCPCB.

    But yours are good!

    I'm not a fan of EasyEDA or JLCPCB because many of the projects that end up on Instructables are junk. But I think this project is a bit better than it's peers. I like this one and think it looks totally cool. The author has included information on almost everything you would need to make the project including 3D print files for the case. So you don't really need to buy the PCB from JLCPCB. You could even wire this up on perfboard if you wanted to spend the time on it.

    For some reason EasyEDA doesn't produce clean schematics. Most of the projects using it have lines running through text or components, text too close, component outlines too small for the text within them... stuff like that. The schematic for this project has some of those, but it appears the author did spend a good bit of time getting the drawing to look right. I'm not sure if you can download the schematic from the EasyEDA site referenced by the author and use it with a better schematic editor, but at least there's a decent schematic to go with this project.

    I have the same issue with EasyEDA PCB layouts. Most projects featuring it look terrible. Wrong part outlines, extremely poor layout, silkscreen text run over pads, silkscreen text run over mounting holes, and worse... silkscreen text under component bodies. But the author of this project has taken the time to do a decent layout. All parts fit and are in their proper place. One of the few I've seen from JLCPCB that are even close to usable.

    The author includes a parts list, but I would have liked more complete specifications or a link on the Instructables site that shows where they can be ordered from. This is done in the authors EasyEDA site, so if you need more information on the parts you'll need to visit the EasyEDA site. It just would have been nice to see that on the Instructables site.

    A couple of omissions to be aware of:

    The push button switches aren't included in the parts list. You can see them in the picture but for the case to go together properly, the exact switch the author used needs to be ordered.

    The LCD display isn't specified. This might be one of those Arduino parts that everybody has and everybody knows what it is, but I think it would be better to include a description and link to the display used.

    The USB cable shown isn't specified. It would be great if a part number or link were provided for this.

    From an assembly standpoint:

    It's not clear how the LCD is wired into the main PCB. A little more information on that would be helpful for those who haven't done it before. Including this on a separate schematic page or illustration diagram would have been great.

    It's not clear what the USB cable with the bare leads is for. A little more information on that would be helpful. I'm assuming that cable is used to power the clock with 5V via connector CN1. But it's not clear and available documentation is silent.

    There is mention that a TTL to USB module is needed but that's not shown or described. A little more information on that module and how to connect it would be helpful for those who haven't programmed an Atmega chip in a dedicated PCB before. The less additional research the reader has to do, the more time they can spend just building the project.

    The video is nice to have, but half of it is the usual advertisement for JLCPCB. The author could have used that time to include additional information on how to build and program the project. But least every single step in this Instructable doesn't come with the usual appeal to "Buy the PCB! Buy the PCB!" I hate that.

    Minus a few missing parts, this is an project that can be made using the information the author has provided. It looks cool and you can build it however you want.