DigiPclock - a Digital Pocket Clock

14K13548

Intro: DigiPclock - a Digital Pocket Clock


Hello everyone!

In this smart watch era, where people are forgetting about old watches, I decided to create a watch that is both digital and has a vintage look. So I created digiPclock.

Buy this digiPclock from Tindie Store.

By the way, subscribe to my YouTube channel for more projects like this. I also update my upcoming projects on Instagram.

What is digiPclock

digiPclock is a digital pocket clock. A pocket watch is a watch that is made to be carried in a pocket, as opposed to a wristwatch, which is strapped to the wrist. So I added a digital screen to this pocket watch, so the face looks like an old analogue clock.

How digiPclock Works

digiPclock has an ESP32, which is the heart of this project. ESP32 has inbuilt RTC so no need to connect external RTC for Correct time information. It shows an analogue clock on the GC9A01 LCD display. The time can be set by the portal. The whole system runs on batteries, so battery saving is also important. I added sleep functionality to reduce battery consumption. There is a type-C port that is used to charge the device. Good thing about it is, it does not require internet.

DFRobot

This project is sponsored by DFRobot, and they have sent me the DFRobot Beetle ESP32-C3 and other stuff to help me in this project. Check out the link for more products.

Link to DFRobot :- https://www.dfrobot.com/?tracking=6364c322dda19

Traditional Pocket Clock

They were the most common type of watch from their development in the 16th century until wrist watches became popular after World War I, during which a transitional design, trench watches, were used by the military. Pocket watches generally have an attached chain to allow them to be secured to a waistcoat, lapel, or belt loop and to prevent them from being dropped. Watches were also mounted on a short leather strap or fob when a long chain would have been cumbersome or likely to catch on things. This fob could also provide a protective flap over their face and crystal. Women's watches were normally of this form, with a watch fob that was more decorative than protective. Chains were frequently decorated with a silver or enamel pendant, often carrying the arms of some club or society, which by association also became known as a fob..

STEP 1: How to Use DigiPclock

digiPclock is digital pocket clock has 3 features, all three features name are given below.

  • Time Setting Mode
  • Time Display Mode
  • Sleep Mode
Time Setting Mode

In time-setting mode, the time can be configured by a portal (web page). To enter Time Setting Mode, press the mode button and slide the power switch to turn on the device. The instruction to set up time will be displayed in the display.

After entering in time setting mode, turn on wifi in mobile and search for digiPclock wifi. Connect wifi to the digiPclock, as soon as the wifi is connected the mobile will get notification named sign in. Opening the notification will open a web page.

web page has a setup button and a exit button, click on setup button then there will be drop down menu to setup hour and minutes. select hour and minute as your time and click on save, as soon as the setting saved the hotspot from digiPclock will be off and the watch will show time.

Sleep mode

if everything is right, the display will show going to sleep and the screen will turn black. This feature was added to save battery life because, in sleep mode, the ESP draws less current, which can extend the run time of the device.

Time Display Mode

In Time Display Mode, the watch will show an analogue clock on the display; this mode can be turned on by pressing the button on Right. It wakes the ESP32 from sleep and shows the time on the display. Release the button to go into sleep mode.

Charging

There is a Type-C port below the device, so it can be charged by inserting a regular Type-C mobile charger. It takes almost 1 hour and 30 minutes to fully charge. It can run up to 4 days.



STEP 2: 3D in Tinkercad

3D Enclosure for This project is made in TinkerCad.

Tinkercad is very easy to use online website by is atodesk. This is completely online, so there is no need to install anything, and there is no system configuration or OS dependency. It can run anywhere in the browser.

I have used different shapes and sizes to make the 3D, and the smoothing feature can reduce sharp edges and turn them into nice curves.

The STL file can be found on tinker cad from this link.

The printing settings, which i used are given below.

  • Material: ABS - Black
  • Nozal: 0.2 mm
  • Infill: 40%


STEP 3: Install the Library

Make sure Arduino IDE is installed in your PC and basics are clear about the Arduino.

Before uploading the code, the Arduino IDE should have a supported library. The TFT_espi is the best library for displays; it can run almost all types of displays, even e-paper displays.

I am a fan of this library; check out my old project based on it (the uncanny eye pendant).

To download this library go in sketch >> include library >> manage libraries, here search for TFT_espi by bodmer.

Also need to download WiFiManager by tzapu and ESP32Time by fbiego.

After downloading the library there need to do some changes in TFT library to get library work. For this, go to My PC.

My PC >> Documents >> Arduino >> Library >> TFT_espi

Here there is User_setup File Open the file comment the driver in 45 line, and uncomment driver in 65 line, which is "#define GC9A01_DRIVER" .


Now comment out "pin" defined in lines 169, 170, and 171 and add the pin definition given below.

#define TFT_MOSI 6

#define TFT_SCLK 4

#define TFT_CS   7

#define TFT_DC   1

#define TFT_RST  5



STEP 4: Upload the Code

  • Download the Code from my github page.
  • Extract the folder and open digiPclock.ion file in arduino IDE.
  • make sure All ESP boards package are installed in the arduino IDE.
  • Connect the DFRobot Beetle ESP32 – C3.
  • Open Toole >> Board ESP32 >> ESP32C3 Dev Module.
  • Select Port where the Board is connected.
  • Now Click on Upload Button.

The compilation of code will take some time; it depends on system configurations. After uploading the code, the circuit can be connected to test the code.

https://github.com/vishalsoniindia/digiPclock

STEP 5: Circuit Connections

After uploading the code to ESP32C3, ESP is now ready to connect with the circuit. I have divided the circuit into three parts.

I have removed all screw holders and connectors from the display to save some space.

  • Display Connection
  • Switch Connection
  • Transistor Connections
  • Battery Connection
Display Connections

As given in the diagram, there are 8 pins that will be connected to the ESP32C3.

ESP32C3 pins GC9A01 Display Pinout

3V3 ------------------>  VCC

GND ------------------>   GND

6 ------------------>  DIN

4 ------------------>  CLK

7 ------------------>  CS

1 ------------------>  DC

5 ------------------>  RST

Switch connections

There are two switches. One is Mode Switch (tactile switch) and other one is Power Switch (slide switch).

  • Mode switch:- Connect One leg to GND and other to 0 number pi
  • Power Switch:- The DFRobot Beetle ESP32 – C3 not has on/off switch, but this is open source so it can be easily found out where to place the switch. I will add the switch to the 3.3V LDO right after charging the IC. so charging IC works even device is shut off. The middle leg will be connected to the enable pin of the LDO through a 200K resistor. One of the side pins will be connected to diodes as shown in the circuit, and the other pin will be connected to GND.
Transistor Connection

Connect emitter to 3.3v, collector to VCC of battery and base to 20 number pin via 10 ohm resistor.

Battery Connection

The positive terminal of the battery is connected to the BAT of the ESP32C3, and the negative to GND.




STEP 6: Testing the Watch

Ok After All the connection Watch is Ready to test.

There are three modes to test here.

  • Time Setting Mode
  • Time Display Mode
  • Sleep Mode
Time Setting Mode

In time-setting mode, the time can be configured by a portal (web page). To enter Time Setting Mode, press the mode button and slide the power switch to turn on the device. The instruction to set up time will be displayed in the display.

After entering in time setting mode, turn on wifi in mobile and search for digiPclock wifi. Connect wifi to the digiPclock, as soon as the wifi is connected the mobile will get notification named sign in. Opening the notification will open a web page.

web page has a setup button and a exit button, click on setup button then there will be drop down menu to setup hour and minutes. select hour and minute as your time and click on save, as soon as the setting saved the hotspot from digiPclock will be off and the watch will show time.

Sleep mode

if everything is right, the display will show going to sleep and the screen will turn black. This feature was added to save battery life because, in sleep mode, the ESP draws less current, which can extend the run time of the device.

Time Display Mode

In Time Display Mode, the watch will show an analogue clock on the display; this mode can be turned on by pressing the button on Right. It wakes the ESP32 from sleep and shows the time on the display. Release the button to go into sleep mode.

Charging

There is a Type-C port below the device, so it can be charged by inserting a regular Type-C mobile charger. It takes almost 1 hour and 30 minutes to fully charge. It can run up to 4 days.

Current Consumption

I have connected multimeter in between battery and ESP32C3 bat terminal, the current at the time of Time Display mode is 110mA and in sleep mode is 5.9mA, So the battery can run up to 4 days if it is in sleep Mode.

The current consumption can be reduced by some custom modifications to the circuit and components, which I think are for the next version.




STEP 7: Closing Things in 3D Enclosure

My round display has some extra PCB edges, so I will remove them by sending it with sending paper.

Insert brass inserts with the help of a soldering iron.

Carefully insert the display battery and ESP32, place switches on the side, and close it carefully.

STEP 8: Done

Whooooo!!!!!!!

The Project Is completed Go between your friend and family and show up this watch.






38 Comments

Hi Great project!

I'm attempting to make one using the SEED ESP323C board. I'm not quite sure of the pin mapping. This board has on 7 pins on either side of the board. It looks like the battery connection is taken to pads on the rear of the board.
https://wiki.seeedstudio.com/XIAO_ESP32C3_Getting_Started/


This is from the instructable and my proposed mapping:
ESP32C3 pinsGC9A01 Display Pinout----------SEED ESP32C3

3V3 ------------------> VCC. ---------------------------<- Pads on rear of board.

GND -----------------> GND----------------------------<-Pads on rear of board.

6 ----------------------> DIN -----------------------------<- D4 SDA GPIO6 ? or D10 GPIO10 MOSI

4 ---------------------> CLK ------------------------------<- D8 SCK GPIO 4

7 ---------------------> CS --------------------------------<- D5 SCL GPIO7

2 --------------------> DC ---------------------------------<- ?? ( not sure)

9 --------------------> RST --------------------------------<- D9 MISO GPIO9

20 ------------------> BL. ---------------------------------<- D 7 GPIO 20

Not sure where Pin 2 connects. The switch should connect to (GPIO 21 D6) as in your original set up.

I have the components and the case printed so would like some help with the pin out if possible.
Thanks.






The design of the DigiPclock digital pocket clock featured on Instructables is impressive! The use of readily available components and clear, step-by-step instructions makes it easy for anyone to build their own pocket clock. The sleek, compact design is also very practical, and the addition of a light sensor to automatically adjust the brightness is a nice touch. Overall, a fantastic DIY project for both beginners and advanced makers alike!
Ya sure i will add brightness control in next version.
how about showing how the graphics was created so all of us can design different style faces?
Soon i will make a video, subscribe my YouTube channel to stay updated.
Received the screens I ordered a couple of days ago. Printing the 3D at this moment. But would like to order the rest of the hardware if I can. Any idea how long before you upgrade the project? And would we be able to just update the software to bring it up to your latest and greatest?
Great project by the way. Looking forward to playing with it and wearing it every day.
I am working on it to extend the battery life and get better time accuracy. It takes 1-2 weeks to do this.
That's really a good work ,it needs so much time and efforts to make such things i appreciate your work and hope for more such Instructables.
I have seen a few like this, yours looks best. BUT, I really want clock to be accurate. I want to use internet clock info (NTP protocal). I have done that with esp32 and different display before and it is great. But I don’t know how to convert code to this round screen and your great graphics. Also, it would have to be plugged in for power but that is ok it would make nice desk clock. Can you post a modification using npt clock data?
i want to make it pocket clock, can anywhere without internet. That's why I built it.
Hello,
Great project, congratulations I really like it. I just have small question : where have you found such a small lipo battery? I measured something like 34x22 mm, could you tell your reference ?
Thanks in advance
The battery i have used is, 3.7v 600mAh lagbar battery, the dimension is 33x25x6.5.
Actually, this battery is supplied by indian manufacturer.
This is not available on any international site.
if you want i can send you battery or all nessary kit to build this project.
had this idea also but no idea how to build it. i have no tech background and would never do this on my own. i have real (old and broken) pocket watches i would love to put this into.
Sure,
can't wait to see your build.
I am here for any help😊.
Hi, looks great, I would like to make this. Could you supply a link to where you got your switches (both the slide switches and the pushbutton), as well as the other parts? Yeah, I know, kind of lazy on my part, but I'd like to know which components fit into your 3d printed case. Thanks!
Hi, great to hear you.
If you want i can supply you all parts along with 3D if you want, otherwise tell me your favourite websites then i will give you link.
I would love to build this as well. Could you send me a message with the cost of all parts with 3D prints? Thanks.
More Comments