LED peak meter with fastest transient detection (clipping indication meter)

GroupDIY Audio Forum

Help Support GroupDIY Audio Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

seva

Well-known member
Joined
Mar 30, 2010
Messages
131
Location
Hamburg, Germany
Hi GroupDIY

I would like to build up a 40 LED peak/vu meter bargraph with the most accurate peak detection over the last 10 LED segments in precise half dB steps. So the idea is to combine two stages of meters.

Stage A has 30 Green LEDs driven by 3x LM316 Meter driver. I will calibrate the stage LED no.30 to +4dBu 1,227v ( (I found datasheets and a lot of threads and schematics to build up this stage) I don´t worry so much about this right now.

Stage B should have 10 Red LEDs for the most accurate transient detection with a smooth peak hold for 500ms. I am planing to calibrate LED no1 of this stage - so its LED no.31 to +4dBu 1,227v as the same LED no.30 from stage A. LED 2-10 (32-40) should show me the increasing peaks in 0,5dB steps, so LED no 40 will show me +4,5db (+8,5dBu 2,06v)

I am not sure how to build up a decent stage B with fastest peak detection. Understanding to combine two stages is also a problem for me actually. (I have found matrix devider bargraph schematics and peak and clipping indication cicuits as well.

I am also worried about the detection of symetrical signals. I found full wave rectifier schematics in the LM316 datasheet but it has only 1 input. Other rectifier schematics around the web shows 2 inputs (ballanced) for peak detection on the negative wave and the positive as well.

What do you think is the easiest and most accurate way to build up this meter with a ballanced detection?

Please help me:)
 
https://cdn.sparkfun.com/datasheets/Components/General%20IC/lm3916.pdf
 

Attachments

  • LM3916 fullwave detector.png
    LM3916 fullwave detector.png
    255.4 KB · Views: 45
seva said:
This is not balanced; this is a combination of two peak detectors, one triggered by positive signals, the other by negative signals, so it's kind of "full-wave". One solution is to build ten of them, all calibrated 0.5dB apart.
That would be in addition to a standard LM3916-based meter. You need to buffer the input signal.
 
Thanks Abbey, Understood.

simply parallel 10 stages?

peakhold release time by adjusting c5?

How Buffer the input? voltage follower?

How to combine both stages? (Input signal is balanced)
 
For 40 LEDs you will need 3x3915 and two 3916. First 3915 for -57 to -30dB, resolution 3dB. Two next 3915 are used for -30dB to 0dB interleaving  with resolution of 1.5dB.
From two 3916 only last five outs (1dB resolution) are used, interleaving outs give you a resolution of 0.5dB and range of 5dB.
Peak detectors and balanced input can be easily designed also.

But, maybe the  better solution is to buy a NTP 277-400 plasma peakmeter  :)
 
Hi Moamps,

thats sounds quick and easy. I have to look into the manual. what about the desired peakhold for the clipping leds? How fast is that circuit in comparison to single peak detectors and other methods? I wanna catch really short spikes.
 
The digital suggestion was a good one. An arduino nano or teensy 3.0 requires next to nil programming abilities (as a matter of fact, it's a great teaching tool) and it will have the accuracy you want.
You could even have an oled meter if you wanted but I'm certain there's a open source project out there that you just pretty much have copy paste after a tiny amount of learning.
 
Define "fastest". If you really want to be pedantic about this I would use a full-wave rectifying peak detector circuit but make it a relatively fast release time (eg ~1ms) and then feed that into a mircocontroller analog input. Then you can use the uC to drive the LEDs too. In the end it will be actually easier to take the time to learn a little coding.

Although the peak detector circuit really isn't necessary. Just feeding signal into an analog input of an Arduino is will make a VU meter no problem. Sample rates are ~70 uS per sample which corresponds to a period of ~14 kHz. So that transient would have to be pretty fast.

Of course writing code might not be fun for you. I understand that. But honestly so much electronics stuff is done on the computer now you really can't avoid it. Laying out PCBs, mocking up enclosures with Sketchup, modelling a circuit in LTSpice, laying out panels for CNC machines, etc. Arguably the code is not trivial if you have zero experience. Some of the computer stuff is kinda fun. Doing layouts in Eagle is a little bit like playing Tetris. But for a newbie code can be a challenge. But if you're young and you have some time to burn there probably isn't anything else that you could do with your time that would be more valuable. People drastically underestimate how important software is to just about anything. Everyone should have a basic idea of how software actually works.

Here's a sample of code that reads an analog input from an Arduino and displays it on a VU meter:

https://github.com/squarewav/vuled8/blob/master/VuMeter/VuMeter.ino

But this is a lot fancier than what you would need to do a basic VU meter. And the way I write code is a little hardcore using direct port manipulation and such.
 
seva said:
Thanks Abbey, Understood.

simply parallel 10 stages?

peakhold release time by adjusting c5?

How Buffer the input? voltage follower?
Yes, yes and yes.


How to combine both stages? (Input signal is balanced)
You have to put a line receiver before (THAT 12xx, SSM2141); output is strong enough you don't need another buffer.
 
seva said:
@ ruffrecords

simple stupid question: how to calculate resistor values between comperators?

It is a big resistor ladder fed from a stabilised supply. So you calculate the peak voltage for each LED and then work out the resistor values to give the same dc voltage at each comparator.

Cheeers

Ian
 
@ squarewave, rocinante

It makes sense that an ADC will detect peaks really accurate. nice! Its an SPPM for my understanding. Samples trigger the output voltages and Leds lights up!? decay times can be programmed in the chip?

16Mhz clocking! wow - Is it a 1Bit AD?

How to realize 40 outputs with the ardurinos? I found less than 20 pins on the nano boards… The circuit have to fit in the attached chassis.

I looked to your code - its really horrible for me- I have to learn a lot about this topic. But I think you are right and I need to know more about programming nowadays.
 

Attachments

  • dbm.jpg
    dbm.jpg
    33.7 KB · Views: 38
Back
Top