Noises while feeding analog circuit (pre-amp) from the teensy 3.3v and GND.

Status
Not open for further replies.

alonper

Well-known member
Hi,

I've got 1Khz (and the harmonics 2K,3K..) noises in the LINE-IN inputs while sampling a Piezo sensors that connected through self-built analog circuit, a pre-amp\Active filter.

My analog circuit is feeded from the 3.3V and GND of the Teensy,
I tried to create some LPF by add 100ohm resistor and parallel 10u cap to ground but it didnt help much...

This is my Active-filter\pre-amp, The 1.2K (R6) is the resistor that creates together with the 2.2uF cap thats appears in the Teensy Audio board line in.. this create LPF at 60Hz to decouple the DC and remove the 50Hz noises...
filter_.png

The main problem is that I cant separate the analog and digital supply - my system is feeded only by the USB of the teensy.

Any suggestion how can I get red of this noises?
By the way i tried to take the 3.3V from the ponint after the Ferrite 600 in the teensy and still same noises...
(schematic_audio2.gif)

Thanks in advance
 
You can add a series resistor and large capacitor to ground to filter the 3.3V before it is applied to R2.
 
...or take the 5V USB voltage from the Teensy and add a separate 3.3V linear voltage regulator to feed your audio circuit from that.
 
hi,
i think the main problem is, that the teensy audio shield do not separate clearly vgnd and agnd. also the 3.3 V VCC power for the audio shield is not designed for this topic. imo, with the sgtl5000 based audio adapter there is no way to build an noise free input or output stage(amplifier, buffer, attunator, filter) or what you need for your projects which will be connected to the teensy power source. i like this article, http://www.analog.com/en/analog-dialogue/articles/staying-well-grounded.html , it will give you an good and easy to understand first inside in this tricky topic.

with the sgtl5000 shield you can try to use signal transformer (galvanic separation) to split the signal path clearly from the teensy power source. there are many cheap 1:1 10k signal transformers available. for example this one. https://www.musikding.de/Transformer-TM018-1-1

than for all amplifier, filter or buffer stages, build them separately powered. for example you can use an power transformer with 1x mains power winding and two secondary winding's for example with 9V ac. create one 5V supply with rectifier and an lm317 linear regulator at 5V for the teensy power source. and one similar supply to power your analog circuit. and of course both supply gnd lines may NOT be connected!!
the signal transformers link the signal line between your analog circuit and the teensy/&/audio adapter audio input/output.

i think this is the best DIY solution without the need for expensive measuring instruments and deep knowledge in electronics :).

an other solution could be try to build an simple Electronic load synthesis; self circuit on input and output. this will reduce noise. but i think not really enough. this circuits are used if the noise source is located in the audio signal line. this circuits are often used in MM phono riaa amplifiers. but in our case the noise source is not located in the audio signal line.

/g
wolke
 
You can add a series resistor and large capacitor to ground to filter the 3.3V before it is applied to R2.
I tried this but it did'nt change much...

...or take the 5V USB voltage from the Teensy and add a separate 3.3V linear voltage regulator to feed your audio circuit from that.
I will try that, but I dont think it enough.
I tried to feed the the 3.3V from separate DC Power Supply and it didn't reduce the 1Khz noises..

http://www.analog.com/en/analog-dial...-grounded.html , it will give you an good and easy to understand first inside in this tricky topic.
Big issue ha... ;(
I will read this today. Thanks for the link.

with the sgtl5000 shield you can try to use signal transformer (galvanic separation) to split the signal path clearly from the teensy power source. there are many cheap 1:1 10k signal transformers available. for example this one. https://www.musikding.de/Transformer-TM018-1-1

than for all amplifier, filter or buffer stages, build them separately powered. for example you can use an power transformer with 1x mains power winding and two secondary winding's for example with 9V ac. create one 5V supply with rectifier and an lm317 linear regulator at 5V for the teensy power source. and one similar supply to power your analog circuit. and of course both supply gnd lines may NOT be connected!!
the signal transformers link the signal line between your analog circuit and the teensy/&/audio adapter audio input/output.
I am sorry but I dont have experience with transformes, why does it have 6 legs? (3 each side) how do I use it? I thought transformers have 4 legs, 2 for the feeding circuit (let's say the 3.3V and GND of the teensy) and 2 are for the analog circuit?
Do you mean that I must have separate power supply than the teensy 5V? I didnt understand how should I use the transformer from your explanation..
sorry for my newbie questions..

and thanks for helping me!
I will be glad if you could explain your solution with the transformer.

(btw. the only power source that I have is from the usb :/)
 
Looking at your setup, I have one question and two suggestions...

Question: I'm not a master of op-amp pre-amps, but how do you know what the gain and frequency response of this circuit will be? The issue to my eye is that there is no buffering between your piezo element and the op-amp input. So, the gain of the op-amp will be dependent upon the output impedance of the piezo? That's poorly know and likely frequency-dependent, no? If I'm correct (which I very well might not be), you might benefit from using a 2nd op-amp to simply be a unity gain buffer. (Or, like I said, I might be wrong and your circuit is totally fine).

Suggestion 1: The SGTL5000 has a lot of chattering noise in its default configuration. Be sure to turn off the ADC's HP filter by putting this command into your setup() function: "adcHighPassFilterDisable();". It has a huge impact on noise. You can see a comparison that I did in this post: http://openaudio.blogspot.com/2017/03/teensy-audio-board-self-noise.html

Suggestion 2: When I've worked with the Teensy Audio Board, I found that you *must* have something connected to the ground pin of the line-in. While, yes, you are already referencing a common ground via taking your power from the Teensy (or even from the Teensy audio board), this was never good enough in my tests. I always had to run a wire to the line-in ground. In your case, you could try taking a ground from the bottom of C2 and using that to connect to the ground of the line-in input. If that isn't effective, a more radical idea (and probably a wrong idea) is to connect a wire to the inverting input of your op-amp (the "-" input) and use that as your ground to the line-in. Whatever you choose, you must connect something to the ground input of the line-in.

Chip
 
Last edited:
I actually ran into a similar issue while evaluating my custom made WM8731 board (so not using the Teensy Audio Board).

I've got noise harmonics as well around 1khz fundamental though the lowest appears to be filtered. I'm getting ~2K, 3K, etc. I characterised the noise by grounding my preamp input and recording the audio input via the USB Audio object.

I suggest you repeat your testing with a grounded input. This will isolate your piezo or wiring from picking up RF interference.

My board has a buffered output of the signal at the LINEIN on the codec (a DRY output), and it is clean. When I set the codec to bypass the digital domain and send it's analog input direct to the output it is also clean. The digital audio from the CODEC ADC is always contaminated with noise, the DAC output is also contaminated (went sent from USB) but to a less degree.

Any chance the noise is coming from jitter or drift on the Teensy clocks? I'm thinking about switching my CODEC over to Master Mode in order to rule that out.
 
Okay weird. Based on chipaudette's link above from openaudio, my harmonic noise looks nearly identical to that blog post, even though I'm using a custom WM8731 board instead of the SGTL5000.

I tried disabling the HP filter in the WM8731 and the noise went away. It's pretty clean now.

@alonper: definitely disable that HP filter on your board and repeat your measurements with input line input grounded.

I doubt that two different chip manufacturers screwed up their filter designs. The only common denominator is the Teensy. I'm getting more suspicious there is some jitter or low frequency modulation on the clocks that is coupling into the audio domain?

I also tried generating all my voltages from LDOs and it had no impact on the noise.
 
Last edited:
Looking at your setup, I have one question and two suggestions...

Question: I'm not a master of op-amp pre-amps, but how do you know what the gain and frequency response of this circuit will be? The issue to my eye is that there is no buffering between your piezo element and the op-amp input. So, the gain of the op-amp will be dependent upon the output impedance of the piezo? That's poorly know and likely frequency-dependent, no? If I'm correct (which I very well might not be), you might benefit from using a 2nd op-amp to simply be a unity gain buffer. (Or, like I said, I might be wrong and your circuit is totally fine).

Suggestion 1: The SGTL5000 has a lot of chattering noise in its default configuration. Be sure to turn off the ADC's HP filter by putting this command into your setup() function: "adcHighPassFilterDisable();". It has a huge impact on noise. You can see a comparison that I did in this post: http://openaudio.blogspot.com/2017/03/teensy-audio-board-self-noise.html

Suggestion 2: When I've worked with the Teensy Audio Board, I found that you *must* have something connected to the ground pin of the line-in. While, yes, you are already referencing a common ground via taking your power from the Teensy (or even from the Teensy audio board), this was never good enough in my tests. I always had to run a wire to the line-in ground. In your case, you could try taking a ground from the bottom of C2 and using that to connect to the ground of the line-in input. If that isn't effective, a more radical idea (and probably a wrong idea) is to connect a wire to the inverting input of your op-amp (the "-" input) and use that as your ground to the line-in. Whatever you choose, you must connect something to the ground input of the line-in.

Chip
Hi Chip,
first of all thanks for reply.
Regarding you question, How is the unity gain buffer will help if I still have only single power supply? I still have to make this "DC coupling" to center the source on (3.3/2)DC...
Do you think that I should add a unity-gain buffer before the preamp\active-filter?

Suggestion 1:
I already saw your post, that's really interesting. I am using the sgtl5000_1.adcHighPassFilterDisable(); the High freq. noises are pretty gone but It doesnt affect the 1Khz noise..

Suggestion 2:
Currently all the Line-In GND are grounded together to the Teensy GND, together with the bottom of C2, Do you mean that I need to separate this?
 
I suggest you repeat your testing with a grounded input. This will isolate your piezo or wiring from picking up RF interference.

Any chance the noise is coming from jitter or drift on the Teensy clocks? I'm thinking about switching my CODEC over to Master Mode in order to rule that out.
LINE-IN shorted to GND to isolate the piezo, as you told : no 1K noise..
shortLINEIN.JPG


regarding your question, Maybe Paul could answer this question?

I tried disabling the HP filter in the WM8731 and the noise went away. It's pretty clean now.

@alonper: definitely disable that HP filter on your board and repeat your measurements with input line input grounded.
I disabled the HP a week ago and some noises went away, but the 1K harmonics still appears..
 
Last edited:
@alonper

So you've reported that LINE_IN shorted to GND has no noise. What about the input to your preamp shorted to ground. We need to isolate if it's the preamp injecting the noise or the piezo. Perhaps the peizo is self-resonating due to an interaction with the preamp?
 
I tried this but it did'nt change much...


I will try that, but I dont think it enough.
I tried to feed the the 3.3V from separate DC Power Supply and it didn't reduce the 1Khz noises..


Big issue ha... ;(
I will read this today. Thanks for the link.


I am sorry but I dont have experience with transformes, why does it have 6 legs? (3 each side) how do I use it? I thought transformers have 4 legs, 2 for the feeding circuit (let's say the 3.3V and GND of the teensy) and 2 are for the analog circuit?
Do you mean that I must have separate power supply than the teensy 5V? I didnt understand how should I use the transformer from your explanation..
sorry for my newbie questions..

and thanks for helping me!
I will be glad if you could explain your solution with the transformer.

(btw. the only power source that I have is from the usb :/)

hi,
an hand drawn symbolic circuit diagram. i try to explain how to isolate D-GND/D-Vcc against A-GND/A-Vcc. also it show you that the many signal transformers have center tabs which can used to balance an input or output. not needed here!
IMG_2017_klein.jpg

in this case the power source and the line in and outs from the sgtl5000 audio adapter board are completely galvanically isolated.
!! in real, audio signal transformer circuits (sometimes located in very expensive audio equipment) often have passive filter segments to prevent self resonant frequency dependent distortions and non linear frequency curves.
http://sound.whsites.net/articles/audio-xfmrs.htm
not needed for fofi :)

edit:
(btw. the only power source that I have is from the usb :/)
i think it is !not possible! to get an noise free application if you try to amplify an input source using an transistor or op amp which are driven by the teensy+audio adapter power sources.
because the current from digital switching circuits affect for sure D-VCC and "All" connected GND's. To kill this effect on your application without separated sources need an deep knowledge in electronics and pcb layout techniques.
That's why i call my suggestion the DIY solution :).

edit2:
if you have only usb power, simple use my suggestion with the signal transformers and use as power source for your analog circuit an 9V blockbattery. the same here, the power sources can not be connected. only the signal transformers can link analog circuits to the teensy and audioadapter board.

/g
wolke
 
Last edited:
Status
Not open for further replies.
Back
Top