I would like to create a metronome that provides a beat time with phase, like the one provided by abl_link~ object, but in realm of messages.
The decimal values of the phase will be used by my sequencers to derive the rhythmic subdivisions (1/8, 1/16, 1/32, etc...), and in this way they can follow the realtime changes of the bpm.
I made a patch that use [metro], [cup] and [line], and it's working, but I noticed that at some bpm I don't have stable subdivisions, perceived by ear and also verified with a simple tap tempo.
Comparing my implementation to another one that uses [line ~], I noticed that the one with [line ~] is more precise, probably because [line~] provides more decimals than [line], and perhaps this is what causes the subdivisions based on [line] to be less precise.
What do you think? Do you have any advice on how I could implement it to have stable subdivisions?
I would like to avoid solutions in the "audio realm" like [line ~], because they would create other problems of sync with other pieces of my project, which works exclusively with messages.
Here is the patch I made (both [line] and [line~] included):