I'm using a Signal Detection block to turn on a GPIO for external amplifier enable. Need to delay turn off for 5 minutes or so after signal stops. 5 minute Counter should reset with every signal detect. Suggestions?
Too bad the Signal Detect block's Trig Time ranges only up to 200 seconds (03:20), if it went as high as 300 seconds it would be your one-piece solution. You can use it as part of the circuit shown below, with which extremely long delay times are possible.
The 0.5 Hz oscillator and Value-Cross Detector together create one-sample wide, 1 Hz pulses. The Pulse Counter accumulates these until reset by detected audio. If nothing is found for the Timeout duration, the ABCD Comparator switches the GP output low, This also inhibits further counting, which otherwise could eventually cause an overflow. Any detected audio resets the count and enables the output again.
Thanks for the answer. When I see how complicated it is I don't feel too bad about not figuring this out myself! I can live with 200 seconds of hold time. I thought the Trig Time was the amount of time the signal had to be above the threshold BEFORE it would trigger, not how long it would hold the trigger.
PS I have another question on the board about LF noise. Is there a hardware guy who could address this?
One of my guys pointed out multiple Signal Detect blocks can be put in series to make maximum hold times up to n x 200 seconds. Tried it and it works!
Thanks for the tip. In fact this often works generally -- since the SigmaDSP blocks are simply math algorithms, inputs meant for audio can usually work with DC or step inputs, sometimes with efficient results. Once I even flopped audio and control inputs on a volume block -- https://ez.analog.com/message/178456#178456
Yes, there are several hardware gurus on the forum. Some have helped me -- see, for example,
Feel free to post your noise concern in either the SigmaDSP or Audio community.
Retrieving data ...