DSPRelated.com
Forums

Twist and power level checks for DTMF detector using Goertezel

Started by bori...@abv.bg June 19, 2008
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