Audio Circuitry noise introduced by Raspberry Pi

Hello,

I have a circuit design that deals with audio. The audio circuitry is controlled with a Propeller. That stuff is working quite well so far.

I have added into the design a header to the board in order to incorporate a Raspberry Pi controller to the mix. I.E., there is bidirectional communication between the Prop and the RPi.

Once I have hooked everything together, the audio signal is seriously affected by digital noise coming from the Raspberry Pi. Quite noticeable buzzing and hissing happens whenever the Raspberry Pi is connected and powered up. I've tried simple things like adding 100uF caps to all power rails (The Audio circuitry is run at +/- 15V and the Raspberry Pi is on a +5V rail) but it hasn't even reduced the level of the noise.

Has anyone had any experience with these types of issues and could give me some steps in the right direction for getting rid of the noise? Let me know if any other info would be helpful, as in schematics, pictures, audio samples and what not.

Thanks a bunch,
Marcus

Comments

  • 15 Comments sorted by Date Added Votes
  • A schematic of the circuit that you currently have in place would be a great place to start.
    Infernal Machine
  • Publison wrote: »
    A schematic of the circuit that you currently have in place would be a great place to start.

    Plus a picture of how the boards are placed when connected together.
    In science there is no authority. There is only experiment.
    Life is unpredictable. Eat dessert first.
  • jmgjmg Posts: 10,466
    Mag748 wrote: »
    I have added into the design a header to the board in order to incorporate a Raspberry Pi controller to the mix. I.E., there is bidirectional communication between the Prop and the RPi.

    Once I have hooked everything together, the audio signal is seriously affected by digital noise coming from the Raspberry Pi.

    A Pi is 'doing a lot', so some added noise is expected.
    How many wires are used in the bidirectional communication ?

    Distance and Galvanic isolation both can help reduce noise, so I'd start with some separation, and an isolated link, and confirm that is ok.
    Then move things closer, and check if you can remove the isolation, by seeing what that does to your noise-floor ?

  • potatoheadpotatohead Posts: 8,869
    edited April 19 Vote Up1Vote Down
    Try powering up the Pi, in place, no connection to your circuit. This will tell you if the general RF noise from the Pi is a problem.

    If it is, you can use metal shielding. If you want thin, nickle is the very best. Even a thin sheet .003" to .010" is likely to suppress this nicely. That's the Cadillac solution. :D Likely to set you back a few bucks, but it's bulletproof. (I had a lot of experience with nickel shielding for Tek scopes and test gear in the 90's. Great stuff. Not cheap.)

    You may find the copper clad or aluminum clad paper shielding sheets work well. http://www.mouser.com/Passive-Components/EMI-Filters-EMI-Suppression/EMI-Gaskets-Sheets-Absorbers/_/N-bkrm8

    I see some spiffy new graphine products out there. Who knows? Maybe they are excellent.

    The goal here is to enclose the Pi, Faraday cage style. The clad paper products make this pretty easy.

    Use similar paper to prototype your flat pattern. A drop of solder on a tab can bind sheets together and or provide a place to run a lead to ground.

    For the case of noise travelling through the shared connection, get an optical isolation chip and use it to buffer the signals. That's a circuit change, and an added item or maybe two, but it's going to work well.

    http://www.jameco.com/shop/keyword=Optoisolator-8-Channel

    IMHO, other means, like ferrite beads, caps, filters, are going to be more trouble than they are worth.

    Keep cable lengths to the optoisolator, from the noisy Pi, short. Consider shielding them too, or using shielded wire. A thin wrap will shield a flat cable pretty well. Get the same shielding sheet, cut it, and use for both purposes.


    Do not taunt Happy Fun Ball! @opengeekorg ---> Be Excellent To One Another SKYPE = acuity_doug
    Parallax colors simplified: http://forums.parallax.com/showthread.php?123709-Commented-Graphics_Demo.spin<br>
  • jmg wrote: »
    How many wires are used in the bidirectional communication ?
    There are 2 wires, and ground. It's a simple UART connection.

    These wires don't seems to be the cause of the noise. The noise is present when only the power is shared between the two devices. Also, the location of the two devices does not change the quality of the noise, aka, I don't think it's an RF issue.

    See the schematic and image of the setup. As noted in the schematic drawing, the frequency of the noise seems to have gone down (aka, it's of a lower pitch) once the caps were added, but it's still there.

    Another thing I tried was connecting a USB Micro cable directly to the power supply's +5V and the RPi which totally bypasses the ribbon cable. Same noise was there.

    Could there be something abhorrently wrong with my circuit design that is causing it to be very susceptible to this noise?

    As jmg suggests, a galvanic isolation my help, but I'm not sure how to approach that.

    Thanks,
    Marcus

  • Maybe try a ferrite bead on those power lines?
    Do not taunt Happy Fun Ball! @opengeekorg ---> Be Excellent To One Another SKYPE = acuity_doug
    Parallax colors simplified: http://forums.parallax.com/showthread.php?123709-Commented-Graphics_Demo.spin<br>
  • Is the power supply in the picture providing the +-15V and the +5V for all the boards?

    If so the first thing I would try is to run power to the Pi directly using a separate pair of wires. Running power from a supply through the analog circuitry is not a good idea.

    In science there is no authority. There is only experiment.
    Life is unpredictable. Eat dessert first.
  • kwinn wrote: »
    Is the power supply in the picture providing the +-15V and the +5V for all the boards?

    If so the first thing I would try is to run power to the Pi directly using a separate pair of wires. Running power from a supply through the analog circuitry is not a good idea.

    Hey kwinn,

    Yes, that PSU is supplying all three power rails. I have tried a separate micro USB cable to the Pi from the the power supply, separating the PI and the audio circuitry as much as possible. The noise is still apparent.

    The noise must be getting through on the ground connection, because the audio circuitry isn't even using the +5V rail.

    I will try and get a hold of a ferrite bead.

    Thanks,
    Marcus
  • potatoheadpotatohead Posts: 8,869
    edited April 21 Vote Up1Vote Down
    Hey, I just thought about another qualifier for the noise. Can you power it with a battery? Make grounds common briefly to simulate your power supply. Oh, wait. You basically did that, by running the audio only. NVM.

    As for the bead, they are weird. I have a few in a drawer, harvested over time. You probably want a few turns. When they work, it's nice. Easy.

    For this, get a thick, beefy one and go a few wraps. Ground line too, if you want. Combine with a RC low pass, or isolation per the PDF I found..

    Looks like some good circuits in there for you to try. The ferrite can play the role of inductor for some of those, FYI.

    Hope this helps. Gotta hate audio noise...

    Do not taunt Happy Fun Ball! @opengeekorg ---> Be Excellent To One Another SKYPE = acuity_doug
    Parallax colors simplified: http://forums.parallax.com/showthread.php?123709-Commented-Graphics_Demo.spin<br>
  • Mag748 wrote: »
    kwinn wrote: »
    Is the power supply in the picture providing the +-15V and the +5V for all the boards?

    If so the first thing I would try is to run power to the Pi directly using a separate pair of wires. Running power from a supply through the analog circuitry is not a good idea.

    Hey kwinn,

    Yes, that PSU is supplying all three power rails. I have tried a separate micro USB cable to the Pi from the the power supply, separating the PI and the audio circuitry as much as possible. The noise is still apparent.

    The noise must be getting through on the ground connection, because the audio circuitry isn't even using the +5V rail.

    I will try and get a hold of a ferrite bead.

    Thanks,
    Marcus

    That's what I thought based on your picture. A ferrite bead will probably not make much difference.

    Problem is the current drawn by the Pi is fairly high and varies as different parts of the code are executed. With the ground connection being shared by the +-15V and +5v that shift results in the ground shifting in relation to the +-15V. If the voltage drop across the ground connection is 0.1V then the +15V will be 14.9V and the -15V will be -15.1V in relation to the ground on the boards.
    In science there is no authority. There is only experiment.
    Life is unpredictable. Eat dessert first.
  • Without knowing the frequency of the noise you are experiencing, and knowing how you are currently decoupling the prop, I'd try the following (in sequence):

    1) Try adding 100nf, 10nf, and 1nf on the Propeller's 3v3 power on both sides of the chip (I suspect this will help) ... "There is no such thing as overkill"

    2) add 1uF and 10uF electrolytics next (on both sides of the prop 3v3/gnd)

    Depending on the Pi version, there will be clocks as high as 1.2GHz on the core, so I am not too surprised at some high frequency noise.
    Mag748 wrote: »
    Hello,

    I have a circuit design that deals with audio. The audio circuitry is controlled with a Propeller. That stuff is working quite well so far.

    I have added into the design a header to the board in order to incorporate a Raspberry Pi controller to the mix. I.E., there is bidirectional communication between the Prop and the RPi.

    Once I have hooked everything together, the audio signal is seriously affected by digital noise coming from the Raspberry Pi. Quite noticeable buzzing and hissing happens whenever the Raspberry Pi is connected and powered up. I've tried simple things like adding 100uF caps to all power rails (The Audio circuitry is run at +/- 15V and the Raspberry Pi is on a +5V rail) but it hasn't even reduced the level of the noise.

    Has anyone had any experience with these types of issues and could give me some steps in the right direction for getting rid of the noise? Let me know if any other info would be helpful, as in schematics, pictures, audio samples and what not.

    Thanks a bunch,
    Marcus

    www.mikronauts.com / E-mail: mikronauts _at_ gmail _dot_ com / @Mikronauts on Twitter
    RoboPi: The most advanced Robot controller for the Raspberry Pi (Propeller based)
  • PropGuy2PropGuy2 Posts: 153
    edited April 22 Vote Up0Vote Down
    I had this happen to me while using a micro-processor to control an audio circuit. The problem is probably in the actual IC that does the mixing or processing of your audio signal. All the shielding and bypass caps will never solve the problem. You have very close coupling from the uP digital signals into the audio IC, as inside the IC chip itself. Very careful design rules and extremely short lead lengths ( 1/4 quarter inch or Less) MAY solve the problem, but don't count on it.
  • These wires don't seems to be the cause of the noise. The noise is present when only the power is shared between the two devices. Also, the location of the two devices does not change the quality of the noise, aka, I don't think it's an RF issue.
    Just don't share power, simple... The Pi being a general purpose computer puts out vast amounts of wideband noise
    on its power rails.
  • Have you put a scope in the mix to see what the noise looks like? Is it a 60 cycle (if you are in the US) noise or does it vary?

    If it is a 60 cycle type noise, then you may have a ground loop and you would have to track that down.

    These may help though:
    https://raspberrypi.stackexchange.com/questions/24476/filtering-noise-w-pi-as-fm-transmitter-and-sound-source

    https://reddit.com/r/raspberry_pi/comments/1thkfa/audio_humming_buzzing_with_your_pi_solution/
  • Firstly both the Pi and the Prop use 3V3. Are you regulating the Prop power from the 5V coming from the Pi board I.e. the prop has its own regulator?

    The schematic PDF on my iPhone does not show the power supply.

    Without these, you can try the following
    To the prop power/ground pins (all 4 sets) try (as Bill suggested) 100nF, 10nF.
    Try 1uF Tantalum on the Prop power line.

    If you don't have a separate 3V3 regulator for the Prop, try one, ensuring the the regulator has the correct bypass caps right at the regulator Pins, as per the specs of the regulator you use. You can also try feeding the input from 5V to the regulator via a 10uH inductor. IIRC Murata make the BLM series for power supply inductors.
    My Prop boards: P8XBlade2, RamBlade, CpuBlade, TriBlade
    Prop OS (also see Sphinx, PropDos, PropCmd, Spinix)
    Website: www.clusos.com
    Prop Tools (Index) , Emulators (Index) , ZiCog (Z80)
Sign In or Register to comment.