A nicer voltmeter clock – lcamtuf’s thing

In 2019, I made a simple voltmeter clock:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F36abddfb 0eec 414b a161
Clock, version 1.

As the name suggests, these watches use analog panel voltmeters instead of traditional watch faces to display the time. The idea didn’t occur to me, so I never really blogged about design; I just made one and have it on my office desk.

The idea is enduring, but most of the designs I see on the internet are unnecessarily complicated and not that pretty, so when I decided to create a revised design, I thought it might be good to document it better. The process started with a rough mockup in a 3D design program:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F15b70ea2 2faf 42f9 b78e
A mockup of the new design in Rhino3D.

For this version of the meter clock, I opted to use three common, 90° panel voltmeters from Amazon (AddAbout $9). I took them apart, took careful measurements of the faces, and then printed replacement decals on adhesive paper. Printable PDF templates can be found Here.

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F70462256 5017 4960 b097
Customizing a 5V Panel Meter.

Note that the new hour gauge has 13 divisions from 0 to 12, while the minute and second templates have 61 divisions from 00 to 60. This is because I wanted to apply a consistent motion to each arm; This meant that at 11:30, the hour dial could not simply be stuck at 11; It needed to move towards the twelfth division, even if it was never to reach it.

In addition to many other problems, the cheap “Baomen 65C5” meter I am using has a terrible plastic flange. I decided to use a hidden decorative pattern to hide this flange from view and keep the front panel interesting. This made it more expedient to cut the front and back on a CNC mill rather than building the enclosure by hand (as I did for version 1):

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F110dd37d c767 4e63 aeec
Machined front and rear faces.

The rounded sidewall presented a very different challenge. For a seamless appearance, I had to bend a flat piece of wood using a shaped template. To pull it off without a steam bending jig, I had to cut a series of internal notches on the side wall. This allowed the wood to bend more easily:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f07cbd 39fa 4d3a 9073
Manual bending of the side walls using an internal template.

The wood had to be wetted, clamped and then allowed to dry. After a few days, I glued the curved side wall to the front and back faces, relying on another template cut from scrap plywood to get the exact fit without any more gymnastics with clamps and ratchet straps:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0d2eaff 6c6e 4e7d b6f0
Gluing the clock body using an external template (plywood).

Anyway – here’s the assembled piece after sanding and a coat of nitrocellulose lacquer:

https%3A%2F%2Fsubstack post media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5d890c5 76a0 4e16 b076
Initial fitting.

Not bad, right?

The circuit is much less interesting and took about an hour: I caught the venerable AVR128DB28 The MCU powered it from a wall wart, connecting it to an 8 MHz crystal (ECS-80-18-4X-CKM). A 32.768 kHz crystal would also be suitable. The panels are connected to three digital output pins (PC0, PC1, PC2). Finally, two input pins (PD6, PD7) are connected to two small pushbuttons on the back and are used to set the time.

Note that the circuit does not require a digital-to-analog converter or any other additional components to drive the meter; Instead, I am using a relatively high frequency digital pulse train. The meter’s inertia does the rest, settling into an intermediate position based on the software-controlled signal duty cycle.

code can be seen Here; This is a short and good comment. The basic idea is to advance a 10Hz counter using timer interrupts synchronized with the crystal. With that out of the way, the main event loop calculates the appropriate duty cycle and then manually toggles the output pin. Although the chip has a hardware PWM module, the application is so simple that using the PWM circuitry won’t really gain us anything.

Here’s the obligatory “rollover” video captured around 11:59:59:

peace out.

If you liked the article, you will enjoy The Secret Life of Circuits. This is a richly illustrated, clear introduction to electronics – from the physics of conduction to embedded systems programming. It includes 290+ color diagrams, 420+ pages of original content, and zero AI.



<a href

Leave a Comment