This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PCM5122: PCM5122 distortion/klicking after SUSPEND (no problem after RESET)

Part Number: PCM5122
Other Parts Discussed in Thread: PCM5102

PCM5122 is in I2C Control VCOM mode as TI proposed in SLAS763A Figure 19.

4-Wire I2S Source is a USB Codec providing 24bit LJ Audio Stream. SCK is 12,288MHz. PLL is disabled - auto clock configure is active.

Reset and Activate Code ist executed and DAC works fine including Volume control - all good.

But now we figured out that after Windows goes to and later wakes up from Powersaving mode, there is a loud hearable clicking from the DAC.

The only code executed before Power Saving is:

SUSPEND_SEQUENCE
    write_stop(0x9A, [0x00, 0x00])     # Select Page 0
    write_stop(0x9A, [0x02, 0x10])     # Standby Power Up
    delay_ms(0x01)                            # delay 1ms

When waking up from USB Suspend the following code is executed (same routine is executed during initial startup and works fine)

ACTIVE_SEQUENCE
    write_stop(0x9A, [0x00, 0x00])     # Select Page 0
    write_stop(0x9A, [0x02, 0x00])     # P0R02 RQST = 0: Normal mode: Resume Standby
    delay_ms(0x05)                            # delay 5ms
    write_stop(0x9A, [0x13, 0x01])     # P0/R19 Sync Request 1 = Halt DAC
    delay_ms(0x01)                            # delay 1ms
    write_stop(0x9A, [0x13, 0x00])     # P0/R19 Sync Request 0 = Resume DAC
    delay_ms(0x80)                            # delay 128ms

Any Help?

 

  • Hi Rico,

    I am taking a look at this. I will get back to you tomorrow.

    Thanks!
    Paul
  • Hi Rico,

    I think this may be a power supply problem. When in VCOM mode, the PCM using the power supply as the reference for the output. If there is significant noise or glitches on the output, it will be seen on the output.

    Can you monitor the VDD and VCOM pin during this noise event? And share the results?

    Thanks,
    Paul
  • Hi Paul,

    probably my 550Hz FLAC-File  was a bit misleading - when Suspend is over and normal operation would be expected, the distortion is still hearable.

    The "normal" 550 sinewave at the end of the flac file only appears after I actively Reset the DAC.

    So if it is a power supply problem, could this then change a PCM5122 register value may be, that would lead to the problem?

    Do you have some experience from I2S? Would you say the 550Hz distortion sounds more like wrong resolution (32/24/16 bit) or more like wrong coding (like I2S vs. LJ or RJ)?

    We meanwhile have built a prototype of this PCM5122-PCB based on VREF mode. Result: In VREF we have exactly same distortion issue after Suspend as in VCOM :=(

    We also have a different PCB with same USB codec and PCM5102 (Hardware mode, no I2S) and everything works fine.

    Currently we use a linear regulator available from the USB Codec chip.

    Would you first try to change that and add another 3.3V regulator or would you try with different I2C bus pull-up resistor values?

    Our resistors are currently 2.2kOhms.

    Oliver

  • If the distortion is repeatable, then I think using an oscilloscope to capture the transients on the output while monitoring the supply and some of the I2S lines would be helpful. This could be a power issue, an I2S issues, or and output issue. Measuring the I2S seems the most promising.

    You could also try bringing the XSMT pin to ground during the suspend event, and then release the pin when the device comes out of suspend.

    Thanks,
    Paul
  • Any update?
  • Hi Paul,

    No change so far - same behavior.

    Problem is repeatable (each time after suspend) and persistent (stays there until resetting the device)

    Power supply is stable during and after suspend.

    So far suspend is connected to DVDD. Suspend signal from codec would generally be available - but the problem arises on a finished PCB (not prototype). This suspend signal has not been connected on the PCB and the codec pin pitch is 0.5mm...

    > Measuring the I2S seems the most promising.
    I agree. Does TI provide some local support? I'm sure TI must have some good I2S logic analyzers (which we don't have)

    We're based in Munich (Germany). Could you send me a PM?
  • Hi Rico,

    Unfortunately my team does not have any local support in Munich, but I think even a oscilloscope capture would suffice for now. In addition, can you send me the schematic? If you are uncomfortable sharing it on e2e, you can email it to me at frost@ti.com

    Thanks,
    Paul
  • Any updates?
  • Hi Paul,

    I just sent you screenshot from osci and schematics to your email. Sorry for the delay due to some short chritsmas leave.
    Any questions, please feel free to reply to my mail.
  • Hi Rico,

    I have received your email, let's continue this discussion over email.

    Thanks,
    Paul
  • Hi Paul,

    I sent some I2C configuration for PCM5122 running at 12MHz SCK last Friday.

    But this does not seem to work.

    Any updates on this?

    Oliver