Hi all,
I have developed a DTMF detector using Goerzel algorithm.
The detector is based on a the one published by Phrack
(http://www.phrack.org/issues.html?issueP&id).
As this detector does not meet the ITU Q.24 specifications,
I am trying to implement them myself, but I have three questions and
couln't find a simple explanation on the web.
After studying that source it thought that the Goerzel output is the "relative
magnitude squared" of the target frequencies (correct me if I am wrong).
The ITU spec says that the twist must be in the range of +4dB/-8dB. So assuming
that the Goertzel output is margnitude^2, i get the square root of the output
for the high group and low group frequency and then check if the difference in
dB is withing the +4dB/-8dB range. It seems to work, but I want to be sure that
all this is 100% correct. Is it?
My next question is about the "Power level per frequency" requirement. It says
that the power of each of the two frequencies should be within 0 -25dBm.
How can I find the dBm of my signal? Should I relate it to the output of
Goerztel (magnitude^2) or to the amplitude of the signal (Avarage or RMS).
I found that the dBm reference is 1mW at 600om, but don't know how to use
that to find the dBm of my signal.
Thanks all expert in advance for taking the time to help.
boko
Twist and power level checks for DTMF detector using Goertezel
Started by ●June 19, 2008