DIY BCD Watch Using ATtiny85

【Click the above「blue text」 to follow the DF Maker Community and become a tech enthusiast】

DIY BCD Watch Using ATtiny85

DIY BCD Watch Using ATtiny85

Old friends should know that we have previously recommended many watch-related projects (there is a collection at the end), and the feedback has been quite good.

This week we are recommending another BCD watch project.

DIY BCD Watch Using ATtiny85

DIY BCD Watch Using ATtiny85

What is BCD?

BCD stands for Binary-Coded Decimal, which uses 4-bit binary numbers to represent the digits 0-9 in a decimal number. It is a form of binary digital encoding, using binary-coded decimal.

Since most watches in our daily lives are in decimal format, this unique binary representation of time can be difficult for the average person to understand and may require some time to convert, making it seem more “geeky”.

Step 1: Function Introduction

DIY BCD Watch Using ATtiny85

There is a button on the panel, and when we press this button, the watch will display the hours and minutes with a one-second delay, as shown in the figure:

DIY BCD Watch Using ATtiny85

When you long-press the button, the watch enters setup mode. First, the hour indicator will blink, indicating that it is in hour setting mode, and you can increase the value by pressing the button.

When you long-press the button again, it will enter minute setting mode, and the minute indicator will start blinking. Pressing the button can increase the minute value.

To exit the setup mode, long-press the button again, and after the long press, it will display the time normally.

Step 2: PCB Design

DIY BCD Watch Using ATtiny85

First, design the schematic in KiCad software, using the ATtiny85 as our controller.

The ATtiny85 has few pins, so we used a 74HC595 shift register to increase the LED pins. We also added a button to display and set the time. For charging, we used a TP4056 circuit, which can handle the charging of lithium batteries.

After completing the schematic, we placed it on the PCB, and you can see that the PCB is circular with two slots for inserting the watch strap.

DIY BCD Watch Using ATtiny85

KiCad has a 3D viewer for PCBs, so we can verify what our PCB will look like, ensuring all components and vias are in the correct position. We can export this STL file for further use in 3D modeling.

DIY BCD Watch Using ATtiny85

All PCB files are open source and can be downloaded from the GitHub page.

GitHub link: <span>https://github.com/vishalsoniindia/BCD-Watch</span>

Step 3: Ordering PCB

You can order PCBs online by uploading the Gerber files, which can also be obtained from the GitHub repository page.

Step 4: Soldering the Front of the PCB

DIY BCD Watch Using ATtiny85

DIY BCD Watch Using ATtiny85

First, we solder the LEDs and resistors. To solder the LED, first solder one “leg” of the LED, then solder the other “leg”. This method applies to all SMD components.

After soldering the LEDs, we proceed to solder the ATtiny85. First, solder one “leg” of the ATtiny85 to secure it, then solder the other 7 pins. The button on the dial is also soldered in this way.

Step 5: Charging and LDO

DIY BCD Watch Using ATtiny85

For the charging circuit, we used the TP4056, which is a charging integrated circuit that can handle constant current charging for lithium and lithium-ion batteries.

Here, we made a modification by removing the TP4056 integrated circuit from the module, along with additional components like a variable resistor and LED. This can slightly save on the cost of purchasing a new IC.

DIY BCD Watch Using ATtiny85

Then we solder the TP4056 circuit onto the PCB, and we also used an LDO to regulate the battery voltage to 3.3V to drive the ATtiny85 and the shift register.

Step 6: Shift Register (74HC595)

DIY BCD Watch Using ATtiny85

I made a mistake here by not checking the pads of the integrated circuit and using the wrong footprint for the shift register.

Here, we are using the 74HC595 shift register.

So I decided to separate the through-hole shift register pins for soldering. This worked for me, but I still want to change some things in the next version to reduce the size.

DIY BCD Watch Using ATtiny85

DIY BCD Watch Using ATtiny85

We first soldered the type-C interface onto the PCB, which makes soldering easier.

Use super glue to secure the type-C position so that it is firmly fixed in place.

Step 7: Fuse Settings

DIY BCD Watch Using ATtiny85

This connects the BCD watch PCB and Arduino as ISP pins. If you don’t know about using Arduino as ISP, you can watch this video:

To set the fuse bits, first download the folder from the GitHub page:

GitHub: <span>https://github.com/vishalsoniindia/BCD-Watch</span>

DIY BCD Watch Using ATtiny85

Open the folder, go into the <span>fuse</span> folder, and click the top bar in the <span>fuse</span> folder, as shown, type <span>cmd</span> to open the command terminal.

DIY BCD Watch Using ATtiny85

Open the <span>cmd.txt</span> file and copy the first line, then paste it into the command terminal. If you see “fuse OK”, it means it was successful.

Copy the second line from the <span>cmd.txt</span> file, paste it into the command terminal, and you will see “fuse OK” again, which means your controller is now set to <span>1Mhz</span>.

Step 8: Uploading Code

In the same folder, you will find the <span>Attiny85_link.txt</span> file. Copy the link provided in the file or copy it from below.

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json

DIY BCD Watch Using ATtiny85

Open the Arduino IDE, go to File, then Preferences, and paste the link into the additional board manager URLs section, separating it with commas “,” from other links.

DIY BCD Watch Using ATtiny85

Go to Tools -> Board Manager, and install ATtiny85.

DIY BCD Watch Using ATtiny85

Open the code, go to Tools, and select the board and processor as ATtiny85. The clock should be set to 1Mhz, and connect to the Arduino’s COM port as ISP.

Go to the code page and click upload using programmer.

DIY BCD Watch Using ATtiny85

DIY BCD Watch Using ATtiny85

After uploading the code, the watch will display an error value. Disconnect the ISP, connect it to an external power source, and press the button, then everything will work normally.

Step 9: Connecting the Battery

DIY BCD Watch Using ATtiny85

Here, we connect a 500mAh battery to the input capacitor of the LDO, as shown.

DIY BCD Watch Using ATtiny85

The red light indicates that it is charging.

DIY BCD Watch Using ATtiny85

After verification, we can secure the battery with glue. Although this is not a stable solution for now, it is effective, and we can consider using epoxy resin for a more permanent fix in the future.

Step 10: Watch Strap

DIY BCD Watch Using ATtiny85

DIY BCD Watch Using ATtiny85

You can find a pair of watch straps to install!

Original link: https://www.instructables.com/BCD-Watch-Binary-to-Decimal/

Original project author: vishalsoniindia

Translation first published by: DF Maker Community

This is an open-source project; please be sure to credit the project source and original author information when reprinting.

Hardware Arsenal

Click to learn more👆

If you have any comments or corrections regarding the article translation, feel free to leave a message below!

If you cannot download the code involved in the project from the author’s GitHub repository, you can click “Read the original text” to download from the community forum!

Watch Series Review

▼ Open-source DIY ink screen watch! Stylish and practical, with wireless Bluetooth pedometer alarm clock!

DIY BCD Watch Using ATtiny85

Click to read👆

▼ Make an IoT watch with 200 LEDs using ESP32

DIY BCD Watch Using ATtiny85

Click to read👆

▼ IO Watch: Programmable watch made with Arduino UNO

DIY BCD Watch Using ATtiny85

Click to read👆

▼ DIY a practical and stylish binary watch

DIY BCD Watch Using ATtiny85

Click to read👆

▼ Replica Casio F-91W! But mine is bigger.

DIY BCD Watch Using ATtiny85

Click to read👆

▼ “Made a new watch for myself this New Year!”

DIY BCD Watch Using ATtiny85

Click to read👆

▼ E-ink screen watch – a project that is still unfinished

DIY BCD Watch Using ATtiny85

Click to read👆

▼ Paying tribute to Zhi Hui Jun? DIY a transparent astronaut-themed watch!

DIY BCD Watch Using ATtiny85

Click to read👆

Leave a Comment