We’ve just begun to receive entries to the One Hertz Challenge, but we already have an entry by [Mike Coats] that explicitly demands to be awarded last place: the Metronalmost, a metronome that will never, ever, tick at One Hertz.
Unlike a real metronome that has to rely on worldly imperfections to potentially vary the lengths of its ticks, the metronoalmost leaves nothing to chance: it’s driven by a common hobby servo wired directly to a NodeMCU ESP-12E, carefully programmed so that the sweep will never take exactly one second.

The mathematics required to aggressively subvert our contest are actually kind of interesting: start with a gaussian distribution, such as you can expect from a random number generator. Then subtract a second, narrower distribution centered on one (the value we, the judges want to see) to create a notch function. This disribution can be flipped into a mapping function, but rather than compute this on the MCU, it looks like [Mike] has written a lookup table to map values from his random number generator. The output values range from 0.5 to 1.5, but never, ever, ever 1.0.
The whole thing goes into a cardboard box, because you can’t hit last place with a masterfully-crafted enclosure. On the other hand, he did print out and glue on some fake woodgrain that looks as good as some 1970s objects we’ve owned, so there might be room for (un)improvement there.
While we can’t think of a better subversion of this contest’s goals, there’s still time to come up with something that misses the point even more dramatically if you want to compete with [Mike] for last place: the contest deadline is 9:00 AM Pacific time on August 19th.
Or, you know, if you wanted to actually try and win. Whatever ticks your tock.
Now I want to do this electromechanically, with a classic metronome that has some electromagnets to tweak the timing, so it’s accurate everywhere else but right around 1hz it starts clicking with a 48/52 duty cycle. That would be fun and interesting to see how close you can get to 50% while still being audibly noticeably syncopated.
…could you do it entirely mechanically? I can easily imagine making a metronome whose clicker is always a not symmetric duty cycle, but to make it skew with frequency…
Maybe the pendulum could have a sub-pendulum with a fixed 1 Hz resonance frequency. Then around that frequency it would become a chaotic double-pendulum. Though there will be other resonances too.
Hmm…
https://hackaday.com/2013/01/15/hacking-grandfather-clock-accuracy-while-its-still-ticking/
https://hackaday.com/2023/01/28/an-atomic-pendulum-clock-accurate-enough-for-cern/
Of course, the electromagnet-kick or drag method will work too.
It’s Lord Vetinari’s metronome!
Or (that drummer you love to rag on)’s
The comment in the build log (“This device, by design, will never, ever, tick exactly once per second”) is correct, but I don’t think the other description (“A metronome that beats at almost, but never quite exactly, 60 beats per minute.”) is: if you draw from a distribution centered at a value, even if it excludes that value, the sum of many of them will fill in that notch (there’s nothing to prevent you from drawing 1-x and then 1+x next). Pretty sure you’d need additional math to make sure you also notch out 60 beats every minute.
So, like the opposite of those legendary cheater gas pumps that were tuned to be accurate only when filling standard calibration testing bottle sizes, but delivered less than the displayed amount for all other other volumes.
You’re right. I was tired of writing 1 Hz every time, so changed it to 60 BPM (closer to correct), then expanded that to 60 beats per minute (less correct). I suppose if you kept a running list of the last 55+ beats you could try some sort of simulated annealing to nudge future beats away from 60.000?
Or just draw constantly until you meet the constraint? I kinda just realized it’s harder than I thought.
the project video really disappoints, in that it’s clearly a servo, and not a maddeningly unpredicatable pendulum…
https://cdn.hackaday.io/files/2034338703677472/printed-tick-tock.webm
I know, but you work with what you’ve got! You’ve got me wondering now if it’s possible to tune a double pendulum and hook it up to a real metronome’s clicker. That would be truly infuriating!
Or, you can take the regular metronome and distrurb it with an electromagnet that varies its current with each cycle to have a variable pull on the swinging arm.
Or a real arm and pendulum but with some kind of linear motor by the pendulum sending pulses using the distribution curve & notch filter timer. or something
Agreed. Besides getting rid of (or reducing) the gearbox noise, it also needs the tick sound and a sinusoidal acceleration profile.
Also, it would be even more maddening if it slowly approached 1 Hz, but then skipped it, speeding up (or slowing down), then reversing and approaching 1 Hz again from the other direction, ad nauseum.
The cheap servo thing also disappointed me, but then again, this project was set up to receive no prize.
A very good quality version can be made quite easily from an old HDD. Just use the whole head mechanism. Completely quiet, and fully programmable. You can add end stops to make the tick sounds. Although I guess that with a real metronome the ticks are somewhere near the middle. You can add some kind of bell there which gets excited by the arm.
Makes me think: on a real metronom, actually running at 1 Hz, can i just move the click off center, so that it is eather short or longer than one second? and if we would rendomly move that one, then the clicks would be definitly not 1Hz but the pendulum would still be :p
Hmm, I think if I were to set out to make “a metronome that will never, ever, tick at One Hertz”, I think I’d just make it tick at two, or more, thus really, really failing at meeting the parameters of the one Hertz contest.
Or does “never, ever, tick at One Hertz” mean, “but on average will tick at a rate of one Hz”?