BCD Watch

A Binary Coded Decimal watch to view the time in an encoding that's fun and easy to use.

Public Chat
Similar projects worth following
There are few binary watches out there, and no BCD watches on the market. I decided to make an open source BCD watch. BCD is earier to read for us humans trained on reading base ten as opposed to plain binary, while still requiring some interpretation that makes reading the time a little more exciting.


Currently, this watch has four buttons; One is a limit switch used to enable the outputs of the shift register, and display the time. This is to save some power. The button should be flush with your arm, and be actuated by lifting your hand (this has not been tested yet.) because of this, the watch will be solely purposed for use on the left arm.

This may or may not be needed depending upon how bright the LEDs need to be to see them. I included a trimmer pot to adjust the brightness in the PCB, but will not allow access to it through the case.

Two of the other three buttons are purposed for incrementing hours and minutes. The last button is to enable the aforementioned two buttons.

LED Display

The LEDs are arranged to display 24 hour time. They still can display 12 hour time with modification of the code, but the layout of the PCB is unituitive for this format. 


formating base ten into BCD requires you to  convert each digit in base ten to binary, four bits to each digit. This watch shorts some bits in the tens place of the hours and minutes, since they can only go up to 2 and 6, respectively.

Check out Wikipedia's article for more information on BCD.


sub schematic of watch.sch

sch - 14.26 kB - 07/09/2018 at 03:09



Kicad pcb file

kicad_pcb - 239.72 kB - 07/09/2018 at 03:08



Kicad schematic

sch - 12.18 kB - 07/09/2018 at 03:07



code for the Attiny84 inside

ino - 3.01 kB - 07/09/2018 at 02:25


  • 1 × MCP7940M Clock and Timer ICs / Real-Time Clocks
  • 1 × TC33X-2-102E TRIMMER 1K OHM 0.1W SMD
  • 1 × ATTINY84A Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers

View all 12 components

  • PCBs arrived

    jonathanburjb107/24/2018 at 05:22 0 comments

    I got in my PCBs from china, and all my components from digi-key, and got to work assembling the first prototype. In addition, I got my acrylic for the enclosure, and leather for the strap, but did not get to work on that quite yet.

    After assembling, I uploaded the code, which did not work first try. I then developed some sample code to alternate blinking the LEDs. On a similar note I will mention that using test points on the PCB to upload code was not such a good idea. The intent was to make more room, but when rev 2 gets worked on, I should change that over to some kind of actual connector. The connection between the programmer and the test points was very finicky, so much so that it took a couple tries to successfully get code on the ATTTINY. 

    Here is a video I took of the test code in action (three of the LEDs are out as a result of prolonged exposure to the soldering iron):

    Another short coming of rev. 1 was the switch I put on for power saving. I connected the pull up resistor as well as the switch to GND, leaving the LEDs on all the time, and thus giving no power reductions. The watch will only operate for just over a day without the switch, by way of some simplistic estimated calculations. So, don't go making this yet.

    Yet another potential problem. The pull ups for the i2c bus are underneath either the battery or the ATTINY. This may lead to some major communication issues between the RTC and the ATTINY. This is all a mechanical issue with the layout of the PCB. 

    With almost all of the watch messed up, I conclude this disappointing post. I will keep fiddling with this prototype, trying to get rev 2 to a suitable point. Keep an eye on the project logs, and wait for second revision of the PCB to be released.

View project log

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates