0
\$\begingroup\$

I need to program audio DAC chip registers, I know it is controlled through I2C pins but other than that im clueless. DAC is Ak4493

First off what options are there of devices to control it? e.g are there USB to I2C interfaces that can allow it to be controlled through a PC software?

Secondly how would I begin to be able to understand how to actually program the registers? here is one example taken from the datasheet, How would you make use the Address and Bit values? : enter image description here

If you are wondering the PCM, EXDF, and DSD columns are simply referring to different DAC modes and indicating which of these options are available in those modes

\$\endgroup\$
4
  • \$\begingroup\$ What DAC chip is it? What MCU it is? \$\endgroup\$
    – Justme
    Apr 18, 2020 at 8:41
  • \$\begingroup\$ Hang on, how do you know it plays music if none of the buttons work? \$\endgroup\$
    – pjc50
    Apr 18, 2020 at 9:05
  • \$\begingroup\$ @justme to avoid getting bogged down in specific details I changed the post, the faulty DAC is a Topping D90 with AK4499 but I also have a basic DIYinHK AK4493 DAC board that does not use an MCU (it operates in ''pin control'' mode) and would be easier and safer to learn with this first as it's already designed to accept an external I2C signal \$\endgroup\$
    – Jay
    Apr 18, 2020 at 9:16
  • \$\begingroup\$ @pjc50 it turns on and off but none of the menu controls work (volume, input select, digital filters etc.) there is no pause and play if thats what you were you imagining \$\endgroup\$
    – Jay
    Apr 18, 2020 at 9:17

1 Answer 1

1
\$\begingroup\$

USB adapters exist to access I2C devices. Both professional tools and cheap hobbyist gadgets. Or you can make one yourself with Arduino or Raspberry Pi. But you must check if the MCU is still controlling the DAC or not, because the MCU might not expect other masters on the bus. It might just be a fail how it reads the buttons.

The registers just have bits or numbers for controlling the chip. Since you want to control volume, you would want to access the volume registers, and see the detailed deacription what to write there to get the volume you want.

\$\endgroup\$
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.