Pet subject of mine as I used to have a pipe organ I built. I could
...
the desired pitch. The '0' crossing is the clock pulse to the latch
driving the 4-16 decoder. When you're on pitch, the LED pattern doesn't
move,
Yup. But pipe organ is easy (depending on the pipe type), as its
output is quite close to sine wave. Reed pipes are more difficult,
but probably not as bad as the sound from string instruments.
just like a turntable strobe. Generating the scale is tough since
the ratio note-note is 12th root of 2.
Nononononnononoooooo! If you tune it to the "even-tempered" scale,
the result is very bad-tempered. All the fifths are bad, all the
thirds are bad.
And here we come to the point where a custom-made tuning tool would
be useful. It is quite easy to go and buy a simple one which just
shows the pitch on a scale. However, I'd like to have one which
can be taught different temperaments.
There are some such instruments available, but they tend to be
rather bulky, eat up a lot of batteries, and cost a lot. On the
other hand, it should not be difficult to use different tempera-
ments once a reliable frequency meter has been made.
---
There are a few challenges which have to be addressed. Here is my
list:
- accuracy down to 1 cent (1/100 of a half note, around 0.6 permille
of the frequency, i.e. 0.24 Hz @ 415 Hz)
- fast response (preferably in the 100s of milliseconds), because
slow response makes it difficult to tune plucked instruments
(rapidly changing pitch)
- freely adjustable a', at least from 390 Hz to 465 Hz
- custom temperations
- good response over four octaves (lowest string of a violone is
at around 35 Hz, the highest string of a violin at 625 Hz)
I know this is not a trivial problem. Using FFT might be a solution.
On the other hand, a sliding sampling window or some other trickery
should be used, and there might be some better algorithms. In
any case the first problem is to have a coarse idea of the basic
tone and get rid of the harmonics. After that some time-domain
algorithms might be good enough.
The good thing is that the relative accuracy requirement (1 cent)
can be relaxed a lot in the low frequencies.
If someone comes up with a robust, fast, and relatively simple
algorithm, that would be nice. Even nicer if the algorithm is
simple enough to be realized with a few hundred kIPS, but OTOH
MIPS are not so expensive after all.
- Ville (viola da gamba player)