Infineon MA12070 Class D

Member
Joined 2008
Paid Member
First, where did you get those tiny terminal blocks? I soldered wires to those holes 'cause I couldn't find anything small enough.

Are you talking about the black screw terminals I used for power and speaker wires? I wish I could tell you, but I honestly don't remember where (or even when!) I got those, they were just in my collection of random parts. But I don't think they are anything special.


I'm probably having a senior moment, but the MUTE and ENABLE pins of the chip are currently jumpered to VDD and GROUND, respectively. As I understand it, you would need to remove the jumpers to allow external control of those pins. Are you not creating a short when you ground the MUTE pin? If so, I wonder if the board is shutting down instead of muting.

I believe you are correct. Right now my MUTE and ENABLE pins are "open". By that I mean I haven't connected anything to their headers on the reference PCB. But, the MUTE and ENABLE pins of the actual amp IC are jumpered to VDD and GROUND, as you say. (And I agree, I'll have to remove those jumpers to do external control of those functions.)

I did temporarily connect the reference PCB MUTE pin to GND, just as an experiment... I didn't think that through, and as you say, I certainly created a short from VDD to GND when I did this.

Anyway - the board is working for playback now, I just can't figure out what's causing the hissing, which I'm certain is coming from the actual PCB, even though that makes no sense to me! The hissing persists even during playback.

The hissing didn't start until I jumpered the I2S MCLK and BCLK pins on the PCB. But I also didn't get any playback until I did that.

Does anyone know if the ma12070(p) can be run with no speakers attached? I want to detach the speakers just to be sure the hissing is indeed coming from the PCB.
 
First, where did you get those tiny terminal blocks? I soldered wires to those holes 'cause I couldn't find anything small enough.

Mike

screw terminals 3.5mm pitch (2-pin)
Screw Terminals 3.5mm Pitch (2-Pin) - PRT-08084 - SparkFun Electronics

Anyway - the board is working for playback now, I just can't figure out what's causing the hissing, which I'm certain is coming from the actual PCB, even though that makes no sense to me! The hissing persists even during playback.
Highly likely it is coming from the ferrite beads. I do hear noise from my board too, but I have 3.3uH inductors.
I've never heard anything like this from my TI based amplifiers.
 
Last edited:
Member
Joined 2008
Paid Member
Matt, use resistors, 10-200 ohm, for safe)))

Where are you suggesting I use these resistors?


Highly likely it is coming from the ferrite beads. I do hear noise from my board too, but I have 3.3uH inductors.
I've never heard anything like this from my TI based amplifiers.

I was also kind of thinking the ferrite beads were causing the hiss... I wouldn't call it loud, but it's not quiet by any means. Is anyone hearing the hiss on the Shenzen board from Audiophonics, AliExpress, etc?

I too have never heard this on a TI-based class D amp.

I did whip up a little inductor-based EMF filter board, copied the design from the EMC output filter recommendations for MA120XX(P) document. Ultimately I plan to use this with longer speaker wires. My long-term plan is actually to design a full ma12070p board, similar to yours, but with a 40-pin header for input, so I can use a simple ribbon to connect the RPI to the amp. But I need to solve this hissing first!
 

Attachments

  • ma12070_emf_filter_pcb.jpg
    ma12070_emf_filter_pcb.jpg
    393.6 KB · Views: 399
Where are you suggesting I use these resistors?
I guess he meant to have some resistors instead of a direct connection of the en/mute pins to the ground.

My long-term plan is actually to design a full ma12070p board, similar to yours, but with a 40-pin header for input, so I can use a simple ribbon to connect the RPI to the amp. But I need to solve this hissing first!

Why not use the existing MA RPi hat board then?
 
Member
Joined 2008
Paid Member
Why not use the existing MA RPi hat board then?

A few reasons:
  • It's for the Raspberry Pi Zero, not the standard RPI. I don't want to use a Zero, because I already have several regular RPI boards, and the Zero looks to be wifi only, and my house is setup for wired networking everywhere.
  • My speaker wires will be long enough in this application that I should use the inductor filter, which the ZW HAT board does not have. (I could use the filter board I made, of course, but that was meant as a temporary solution.)
  • I don't need a lot of power, but I don't think the ZW HAT board will cut it, given it's only 2.5A at 5V.
  • It gives me an excuse to make another PCB :)
 
Member
Joined 2008
Paid Member
@eclipsevl and @Onefabis - I believe you both designed your own ma12070p boards. What are you using as your I2S source? Specifically, does your I2S source provide a master clock (MCLK)? If not, are you simply connecting MCLK to BCLK? Or are you doing something else for MCLK (i.e. IC pin 32)?

Some potentially interesting observations as I played with this some more:
  • FWIW, the hissing I'm hearing is more like static, rather than a whine. I could try to record a clip and post it if there's interest.
  • I tried setting the different power mode profiles (PMP), to see if that had any effect on the hissing. What I found was that the hiss remained more or less the same regardless of PMP mode. However, PMP1 and PMP2 additionally actually caused audible crackling noises to come through the speakers, even with no playback. PMP0 and PMP3 do not exhibit the crackling. But if I'm on PMP1 or 2 (with the crackling), switching back to PMP3 does not fix the crackling; I have to switch back to PMP0 first, then can switch to PMP3.
  • I can get the hissing to stop one time after this sequence: change PMP, start playback, halt playback. But on the next playback, hissing resumes, and does not stop even when playback is halted.
  • I tried putting my inductor-based filter between the reference amp board and speakers. No hissing... but! after it had been powered on for maybe a minute or two, I started hearing fairly loud crackling from the speakers. It was interesting: the crackling only came out of one speaker at a time, and it constantly alternated between channels, maybe once every second or half-second. IOW, left crackle, right crackle, left crackle, right... It was loud enough that I ran over to pull the power cord, and noticed there was smoke coming from the filter board! I did use the ground of my SMPS as the ground for the filter board - maybe this was a bad idea and triggered some oscillation?
 
@eclipsevl and @Onefabis - I believe you both designed your own ma12070p boards. What are you using as your I2S source? Specifically, does your I2S source provide a master clock (MCLK)? If not, are you simply connecting MCLK to BCLK? Or are you doing something else for MCLK (i.e. IC pin 32)?

I'm using my amanero-like usb/bluetooth/wifi module and the masterclock is generated there. In my case, MCLK is always at least 2xBCLK.
 
@eclipsevl and @Onefabis - I believe you both designed your own ma12070p boards. What are you using as your I2S source? Specifically, does your I2S source provide a master clock (MCLK)? If not, are you simply connecting MCLK to BCLK? Or are you doing something else for MCLK (i.e. IC pin 32)?
I use Beaglebone Black as a network player. It powered by Pure firmware, that support multiple interface, including Tidal. So I play the music mostly from it, sometimes from NAS via APRenderer (which is also in Pure firmware). So this is my primary I2S source. Beaglebone run as master, but it needs in external MCLK. Pure firmware use Botic driver, so one GPIO of Beaglebone show 0 or 1 in case if there is 44.1 or 48kHz of incoming audio stream. This GPIO connected to my arduino (basically Stm32, but programmed in Arduino IDE), which trigger corresponding oscillator on my custom reclocker. Reclocker is pretty much simple PCB: just one or two isolators SI8441 for I2S (depending on number of I2S sources), and two Adum1250 for I2C and for oscillators switching. There is Adau1452 after reclocker but with Beaglebone it doesn't use ASRC, so basically MCLK is not changed. But anyway, I don't connect MCLK to BCLK. All the data comes from Beaglebone, except MCLK from my reclocker
 
Happy to give subjective impressions of this, but bear in mind I've not been listening to it stock, it has the following tweaks.

a) Shorted out the 0805 10uF input caps with 0R resistors
b) Taobao trafos used to generate + and - phases
c) Extra decoupling on MA12070 pin17 AVDD

The extra decoupling caps on pin17 are a 1800uF/16V Nichicon HZ and a Panasonic 15000uF/6.3V


Hello Abraxalito,

My trafos from taobao is on the way. Do you connect the centre pin of the trafos output to the ground of input connection at the amp board?

Do you have pictures of the AVDD caps added on the board? Given the tight spaces , i have no idea on how to do this tweak.
 
Member
Joined 2008
Paid Member
Some more tests/observations:
  • I realized that the Allo Kali I'm using has an MCLK output via pin 29. However, when I connected that to the ma12070p board, I cannot get any playback. IOW, it seems just like when I had MCLK unconnected. So far, the only way I have been able to get playback to work is with BCLK tied to MCLK.
  • I also tried powering the RPI+Kali with a dedicated 5V supply, to take the 24v-to-5v buck converter out of the picture. Nothing changed as far as I can tell (still hisses, but playback does work with BCLK and MCLK tied together).
  • I thought maybe there was a race condition, i.e. RPI+Kali needed to be fully up and initialized before the ma12070p is powered up. Having two separate supplies made that easy, so I powered up the RPI to the point where I could login. And only then did I apply power to the ma12070p. I tried this both with and without MCLK connected, no change in results.