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.

PCM1864-Q1: Question about PCM1864-Q1

Part Number: PCM1864-Q1
Other Parts Discussed in Thread: PCM1864

Tool/software:

Hello:

The customer used TI's Audio ADCs PCM1864Q and needs to provide the relevant driver and register sequence for qnx initialization. The customer stated that the reference code on the official website is Linux (root/Documentation/devicetree/bindings/sound/pcm186x. txt). The customer attempted to port it to QNX, but the registers in the code are dynamically configured and not very suitable.

Can you provide a universal register configuration for PCM1864 Boot? Similar to the figure below, it includes register addresses and configuration values.

  • Hi Jimmy,

    Many of our engineers are out of office, please expect an response early next week.

    Thanks

  • Hello:

    Any updated???Thanks!!!

  • Hi Jimmy,

    Our Linux expert is out of office so responses are delayed. Thank you for your patience

  • Hello,

    Any update on this case? looking forward to your feedback.

  • I will advice the pcmdevice Linux driver and the regbin solution,kindly check

    https://git.ti.com/cgit/lpaa-android-drivers/pcmdevice-linux-driver/ 

  • Hello Kevin:

    Please help confirm if there are any issues with the device address: (corresponding to 7-digit address 4a --0x94 4b --0x96)

    Page 0 failed to write but can be read normally. After attempting to reset the register, it still cannot be written, while other pages can be read and written normally;

  • Hi jimmy,

    Both of address cannot be written? can you use i2cset/i2cget to try?

    e.g. #i2cset -fy [I2C BUS] [CHIP ADDR] [REG ADDR] [Value] b

    Regards

    Kevin

  • 1.We are using the i2ccbgr tool that comes with QNX to debug on the QNX system. We often encounter problems where writing to the registry does not take effect, but sometimes it does. What caused this?
    2.Now we can collect microphone data, but the recorded files play silently. Do we need to configure volume or other registers to collect microphone data?
  • 1. There may be times when i2c devices are occupied, but this should not be an issue with the driver itself 

    2. Then you should check if the SDOUT have any data is being transmitted, that will be related to the register setting.

  • Hi Kevin:

    1. We did not integrate the driver program and directly used the i2dbgr tool to modify the registers to bridge. However, the registers are often modified without taking effect. How can we solve this problem?

    2. Currently, we have checked the TDM_DATA has been transmitted and the audio has been successfully play-back. However, we can't write the register 0,1,2,3,4 for Page 0, is it any issue? Looking forward to your feedback!

  • Hi Kevin:

    Please help check this question and give some feedback,Thanks!!!

  • Hi Jimmy,

    I don't think that it's an issue with PCM1864 if you can write other registers, you can check the i2c waveform.

    Also please check in Linux. did you write and read back other registers correct?

    Thanks

    Kevin

  • Hi Kevin,

    Can you please help to check the I2C register configuration below?

    i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x01 -x 0x18 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x02 -x 0x18 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x03 -x 0x18 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x04 -x 0x18 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x71 -x 0x00 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x73 -x 0x03 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x06 -x 0x4f i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x07 -x 0x4f i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x0b -x 0x13 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x0c -x 0x01 i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x06 -x 0x4f i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x07 -x 0x4f i2cdbgr -D /dev/i2c1 -s 0x4a -w -b 2 -o 0x05 -x 0xe7
  • Sorry, I don't know what's the meaning of each usage, if it's an i2c issue, please make sure the i2c ports has 3.3V or 1.8V pull up. 

    Then you can try to write/read i2c with another method, like i2ctool, maybe you can use a MCU to see if it's working. 

  • The I2C port is 1.8 pull up and the IOVDD os 1.8V of PCM1864.

    This is the register configuration we wrote. The chip connected to the computer jack port can record sound, but the external mic cannot record normal sound and the sound is very low. Is there a problem with this configuration? Do you need to configure other registers for mic recording?
  • Hi Zhou,

    Maybe it relate to the hardware, pls share the schematic for review, I will transfer this thread to AE

    Regards

    Kevin

  • Hi Kevin,

    Please help to review. Thanks!PCM1864 SCH external review_20240801.pdf

  • Hi Zhuo,

    The schematic looks okay. I think the reason it is so quiet is because the full scale input of the device is 2.1Vrms. Microphone voltages are much much softer, in the range of 10-100mV. You will need to turn up the PGA gain likely beyond 12dB as you have it to measure a reasonable signal.

    Best regards,
    Jeff McPherson