ruffrecords said:
Thanks for the link. I have been vaguely into PIC programming for a few years so I have the PCIkit. I have toyed with this approach but abandoned it for several reasons.
1. I do not like the idea of MHz clocks inside my mixers.
The modern PICs provide an internal free running clock, so no external MHz lines. (FRC runs at something like 8Mhz and you can multiply that inside for more MIPS)
2.. The current draw on the LED supply varies with signal level and I do not wish to risk this getting into the audio signal path (the Soundcraft comparator plus constant current source technique I favour draws a constant current no matter how many LEDs are on).
There is no reason why you couldn't do that with a micro, but I didn't. We used 5V HCT(?) logic shift registers to latch the LEDs, Now I would use a dedicated LED latch/driver that can accept 3V logic and unregulated PS. I had issues reliably interfacing the 3.3V processor to the 5V digital logic. Of course I got it sorted eventually but easier to use a dedicated latch/driver IC.
We were able to see clock noise from the SPI serial data in the console noise floor, I pushed the SPI clock rate up high enough that even WFO noise floor listeners wouldn't "hear" anything. I expect the dedicated latch/driver would probably be even quieter thanks to a more compatible low voltage logic level interface. I had to use a stiffer pull up resistor on the open gate logic to square up the clock line feeding the 5V shift registers to reliably pass data. Noise on a slower rising clock edge caused multiple data bites corrupting the data. This stiffer 5V pull up may have been our dominant clock noise corruption.
3. I am a very old hand at microcontroller design. I have learnt to be very careful in interpreting output port current sink capabilities. They are always quoted in isolation i.e without regard to what any other outputs are doing. Running 10 outputs sinking perhaps as much as 20mA each could be problematic (maybe micro design has come a long way since I first started with them but the basic laws of physics remain unchanged).
yes, modern lower voltage processors have limited port drive capability (sink and source). My first drum tuner used a 5V PIC that had robust port drive capability and I directly multiplexed a few tens of LEDs in a 8x5 array. Of course LED noise was not a concern in that design.
For that later 3.3V PIC meter design I needed to directly drive one LED mode indicator from the PIC and they will have one or two ports capable of reasonable current. I may have even doubled up 2 ports, just to be confident.
I loved this quote "I did a lot of experiments to see if adding filtering to the rectified waveform helped since that’s what genuine VU meters do, but I didn’t like the results. It makes the output very laggy, and it reduces the number of LEDs that light up."
Yup, that's what VU meters do.
Cheers
Ian
I like the ability to apply precision time constants to metering in the micro environment. I even coded up a RMS algorithm but abandoned it when I didn't see any difference (between RMS and simple average) on complex music using similar att/rel time constants. It might have been interesting to experiment further with RMS for side chain use in dynamics processing, but for metering the complexity of the RMS algorithm did not seem worth the processor overhead (I had to code up my own square root operation,) while I could have used a RMS look up table for a meter with finite output levels.
Sorry about my typical TMI..
JR