Returning Digital Watches To The Analog Age: Enter The Charliewatch

The Charliewatch by [Trammell Hudson] is one of those projects which is beautiful in both design and simplicity. After seeing [Travis Goodspeed]’s GoodWatch21 digital watch project based around a Texas Instruments MSP430-based SoC, [Trammell] decided that it’d be neat if it was more analog. This is accomplished using the CC430F5137IRGZR (a simpler member of the MSP430 family) and a whole bunch of 0603 SMD LEDs which are driven using Charlieplexing.

This time-honored method of using very few I/O pins to control many LEDs makes it possible to control 72 LEDs without dedicating 72 pins. The density makes animations look stunning and the digital nature melts away leaving a distinct analog charm.

A traditional sapphire crystal was sourced from a watchmaker for around 14€ as was the watch band itself. The rest is original work, with multiple iterations of the 3D printed case settling in on a perfect fit of the crystal, PCB, and CR2032 coin cell stackup. The watch band itself hold the components securely in the housing, and timekeeping is handled by a 32.768 kHz clock crystal and the microcontroller’s RTC peripheral.

The LEDs can be seen in both daylight and darkness. The nature of Charlieplexing means that only a few of the LEDs are ever illuminated at the same time, which does wonders for battery life. [Trammell] tells us that it can run for around six months before the coin cell needs replacing.

It’s completely open source, with project files available on the project’s Github page. We hope to see an army of these watches making appearances at all upcoming electronics-oriented events. Just make sure you lay off the caffeine as the process of hand-placing all those LEDs looks daunting.

28 thoughts on “Returning Digital Watches To The Analog Age: Enter The Charliewatch

  1. Very nice project, and the schematic looks very neat, great job. Find an existing cheap watch case and use it, the finish would be way cooler than 3D printed.

    But I’m very doubtful about these sentences:
    “LEDs are ever illuminated at the same time, which does wonders for battery life” > that’s a non sense, average current is important.
    “it can run for around six months before the coin cell needs replacing” > a LED needs mAs to lit, even with only two of them on, and the CPU always sleeping, it’s still just few weeks of running time out of a coin cell battery.

    1. regarding: “LEDs are ever illuminated at the same time, which does wonders for battery life”

      exactly, in some cases it’s even worse, because when an led is ON for 10% of the time, you need to make it light 10x as bright then normal to get the same average brightness. However, because the LED is driven at such a high current, your losses increase in the LED and all the parts switching that current. Also because of charlie plexing there is more then one switch in the LED’s path, further increasing the switching losses.

      So to make a long story short… non sense, battery life isn’t improved by charlie plexing so don’t expect miracles. It saves you some IO and that’s it. If you want to save power, don’t turn things on at all. Which is most likely the only reason why 6 months of battery lifetime is possible at all.

      Regarding the project, very nice and well done!

        1. So let’s do a thought experiment… assume that we can reduce our electric bill by 50%, by reducing the energy consumption of our lights/lamps. By switching it off for 50% of the time (very rapdily) which should be no problem (you say) because persistence of vision fills in the gaps… so we won’t notice the light being off for 50% of the time. I think you have to admit that it doesn’t work that way, the light will appear to be halve the brightness and nothing more then that.
          If I’m wrong, then this is the perfect way to save the world, because huge reductions in energy consumption (regarding lighting) could be achieved… but feel free to dream on.

          It’s all about the average output and not about the peak. The peak isn’t maintained by persistence of vision, it is smeared out, therefor reducing the percieved brightness to the average value.

          So the only way to make a light (that’s on for 50% of the time) appear to be lit for 100%, you’ll need to drive it with 200% of the energy you normally would use. No magic, no free ride, no free energy…

          1. You’re misconstruing what was claimed, contradicting yourself, and no one has claimed free energy.

            Misconstruing the claim – no one claimed to be getting the same brightness with pulsing the light. What was stated was that in animating the lights around the minute circle of the watch, only a few lights were on at any one moment. The POV effect makes it appear more LEDs are illuminated than actually are. By only having a few LEDs illuminated at any one time, energy is saved vs. having them all on. No magic is claimed or suggested.

            Contradicting yourself – you acknowledge that POV smears out the peak brightness, but then claim that the only way to make a light illuminated for only 50% of the time appear to be on for 100% of the time is to drive it to 2x the brightness. This is incorrect – even if the perceived brightness is reduced, the light will still appear to be illuminated 100% of the time so long as the duty cycle is short enough. Again, no one has claimed to get the same brightness when pulsed at the same current.

            You are correct that PWM’ing the light will reduce apparent brightness, but again, nothing to the contrary was claimed. Yes, apparent brightness is reduced, but you can get useful illumination from an LED with significantly less than 100% brightness.

            And as I stated below, the illumination curve of LEDs is very non-linear. So you can drive an LED with significantly less than the max specified current and still get a daylight visible amount of light from it. Try lighting an LED with a bench power supply and limit the current down to about 1 to 2 ma. You’ll still get a pretty bright light, most likely readable in all but direct sunlight on a perfect clear day. Combine that with the POV effect allowing a nice animation with only 2 to 4 LEDs on at any one point, and on for only a fraction of a second at that, it’s absolutely believable that the watch in question could run for 6 months on 200+ mah of battery capacity.

            I get the desire to counter claims of free energy, but I suspect your enthusiasm for doing so is blinding you to the fact that one has claimed as much.

          2. Have you ever actually worked with PWM/charlieplexed LEDs? The human eye doesn’t respond to light in a linear fashion – a 50% pwm doesn’t result in 50% perceived brightness. The idea behind charlieplexing is rapid switching of LEDs on/off (in a similar fashion to PWM) based on a careful pin configuration in order to reduce I/O requirements. Even at low duty cycle, the LEDs should still be very visible, and the low duty cycle itself results in a vastly finished current draw.

          3. smearing out, like smearing out peanut butter over your sandwitch. The amount of peanut butter stays the same, but the height of it reduces evenly over the sandwitch. I’m aware of the fact that the eye isn’t sensitive in a linear fashion and there are all sorts of effect playing around that interfere with the relation between the perceived brightness and the pure amount of energy emitted by the LED’s.

            Regarding “if I ever did anything with charlieplexing / multiplexing / PWM of LED’s”, Yes, many times actually… but that’s a completely different discussion.

            Anyway the whole discussion is getting out of hand and most likely due to many form of misunderstanding in both ways. Don’t get me wrong regarding the project, I really like the end result, in the way it is made and in the way it looks. And I hope to see more of it here on hackaday.

      1. “So to make a long story short… non sense, battery life isn’t improved by charlie plexing”

        That’s not what is claimed. It’s the fact that only a few LEDs are on at any one time, and that most certainly does result in power savings.

        I made a somewhat similar watch for my son last year (, and it’s surprised me how long it’ll run on a charge. I’m using a 50mah lipo, and it only needs to be charged once every ~2 months at most. With 2032 cells being around 220+ mah, it’s not unbelievable that the watch would run for ~6 months, especially if he’s using multiple cells.

        And the brightness curve of an LED is very non-linear, so running them at max ~20 to 30 mah gives you very little added brightness vs. limiting them to a much lower current. And your claim about time/brightness is also not true. I have the LEDs on my watch current limited through the driver IC down to about 6 mah, and then PWM limited to about 10%, and they’re still perfectly readable.

  2. Now some one evolve how we wear watches bcz I HATE WATCH BANDS!!! Sorry – I hate watch bands. Tried and failed a few attempts – and it’s the one thing I would be willing to implant. It could spin arm hairs like an analog clock.

  3. Boohoo, this is the second time someone beats me to finishing a project on hackaday. I’ve been working on this for a while now, and then I find this. No fair! :'( Anyway, nice build

    1. My sympathies! I’ve experienced this feeling many times as health and stress held me back. I wanted to build some sort of computer watch in 1990 when surface-mount packages just becoming available to hobbyists in my country. 8-bit CPU, 32KB SRAM with part of the address range write-protected to act as a ROM… ;)

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.