I have an appliance built around an SBC and an LCD monitor, all in a metal housing. We can't direct-drive the LCD, because of resolution/timing issues; we use analog VGA output to drive the LCD via an analog-digital board. The inside is a terrifying hive of EMI; to get UL compliance we have to seal every hole with conductive tape.
The SBC's audio output doesn't deliver enough power to drive the internal speakers directly, so we have an internal audio amplifier based on the Philips TDA7053A (selected because it's very simple - one capacitor is about the sum total of the circuit). Now, we need to control speaker volume in software, but I didn't want the design complexity of I2C-controlled amplifiers or digital pots, so we just control the SBC's mixer output volume and the amplifier's characteristics are fixed.
The amp is powered from the same 12V rail that powers the LCD analog-digital board. The SBC runs off a separate 5V rail.
Problem is that high-contrast patterns on the LCD (e.g. the B&W stipple pattern XFree86 shows while starting :) cause a buzz in the amp output. This noise appears to be generated by the LCD controller board, not the SBC. So I'm working with a clean audio source; the noise is being picked up elsewhere.
I've:
- Decreased the input shunt resistors on the amp as far as practical while still maintaining a good volume range.
- Moved the amp as far away as possible from everything else. This doesn't seem to make any noticeable difference.
- Put a large bypass cap on the amp's power rails.
- Disconnected the ground line on the input to the amp. This, plus my finger anywhere on the audio line, makes the unit into an AM radio tuned to WCBS New York.
- Run the audio cable (from SBC to amp) through a fat ferrite bead. This was the best step I took so far.
- Run the 12V line to the amp through another ferrite. This didn't make any noticeable difference.
- For test purposes, disconnected the internal amp and connected external amplified speakers. No significant noise. Still no noise even when I disassemble the external speakers and put the PCB inside my housing. That circuit is complex and has an unlabeled IC in it, though
- I don't want to try to copy it.
The noise is still just outside acceptable despite my best efforts. So, I'm looking for other ideas on how to mitigate this noise. What else could I add to this circuit? Is there some better kind of audio power amp I could use?
Any suggestions appreciated. This project is kind of an interference nightmare, I poke it gingerly with sticks...