CS4270 codec hooked up to a Raspberry Pi

Go down

CS4270 codec hooked up to a Raspberry Pi

Post by Wesling on Wed Dec 20, 2017 6:42 am

I have a CS4270 codec hooked up to a Raspberry Pi more or less according to the "recommended layout" in the datasheet (P7:http://www.kynix.com/uploadfiles/pdf8827/CS4270-CZZR.pdf), shown below. This device sinks power from three different places (VA = power for analog subcircuits, VD = power for DSP, VLC = power for control port (I2C and clocks). Currently VA is sourced by an LT1965 (in turn powered from an Adafruit Powerboost connected to a LiPo battery) while VLC and VD are sourced from the Raspberry Pi's 3.3V output.

I am able to record from the device as expected using SoX on or arecord on the Pi, however I am confronted with a troubling amount of noise on the signal. These images are representative of what I'm seeing:

Full spectrum, 0-96kHz


Bottom of the spectrum, about 0-1kHz


In the top spectrogram, I see spikes of broadband noise repeating at about 33.3Hz, though the exact period seems to vary from recording to recording (I just saw some at about 50Hz in another recording). In the bottom spectrogram, I see narrowband noise at 50-60Hz and some bad harmonics. I haven't even started work on the signal chain leading into the ADC yet because these artifacts are everywhere on the board — I've plugged the inputs into ground, VA/2, even the codec's own midpoint reference voltage (VQ) and I see the same kind of thing everywhere, albeit with varying levels of intensity.

Clearly, 60Hz harmonics screams noise from the power main, but the whole setup is disconnected entirely from the wall (powered by battery at the moment).

Here's a shot of my actual current layout. In this case the ADC inputs are tied to VA / 2 through a simple passive filter (lower board), which in an ideal world would produce a bunch of zeroes on the ADC. The LT1965 is powered through a filter with a few decades' worth of caps and a ferrite bead — not strictly necessary but it did seem to help with actual mains noise. These particulars aren't super relevant since varying the power source or the input still results in the same artifacts.



I would really, really appreciate some assistance in identifying potential culprits for this noise. Is this something characteristic of the topology? Or is this to be expected on a $1 Chinese breadboard with jumpers everywhere, and I should just order a PCB with the same layout for further testing? Obviously this is difficult to debug remotely — my hope is that someone will see this and say, "aha! I've seen this before!"

Wesling

Posts : 1
Join date : 2017-12-20

View user profile

Back to top Go down

Re: CS4270 codec hooked up to a Raspberry Pi

Post by notcyf on Wed Dec 20, 2017 11:19 am

When handling analog audio you need sufficient amount of shielding. A 1$ breadboard is not going to help with that(since currents will leak all over the place). This is most likely electrical(because it's in a set pattern) interference with the analog signal. Try to keep any radio devices away from the circuit too, just to be sure.

Are you using sufficiently shielded cables for the analog output? Are your breadboard/components grounded properly?

notcyf

Posts : 141
Join date : 2017-08-24

View user profile

Back to top Go down

Re: CS4270 codec hooked up to a Raspberry Pi

Post by Admin on Wed Dec 20, 2017 4:24 pm

This forum is for software codecs, not hardware like the RPi. You will have more luck finding expertise on a RPi related forum.

Admin
Admin

Posts : 4074
Join date : 2011-06-17

View user profile http://codecs.forumotion.net

Back to top Go down

Re: CS4270 codec hooked up to a Raspberry Pi

Post by Sponsored content


Sponsored content


Back to top Go down

Back to top


 
Permissions in this forum:
You cannot reply to topics in this forum