ebay:Weiliang Dual X2 AK4399 DAC with LCD

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Hi Nino,

The resistor array on my main board is 10K*8. Should I replace it with 4K7 one according to your statememnt above?
Hi terranigma,
In your case my suggestion would be to alter the pull-up resistor on the spi CLK line at the main board. I have one resistor of 4k7 on both CLK lines (dacs and AK4113). You can add another resistor in parallel to lower total resistance. The other pull-up resistors are not that critical, in general 10k is just fine for spi. It's the spi CLK line of the dacs that is critical, probably due to noise generated by them.

Because I don't have a suitable oscilloscope (yet), I can't tell exactly what happens and I'm not sure if altering the resistor is the only way. Maybe you can try to temporarily reconnect the AK4113 ground plane to the dacs, as suggested here for solving the malfunctioning of the original controller. It could also relate to the same problem.

kukynas: So the version 2 PCB has even lower pull-up resistors (3k3)... thanks

Nino
 
Last edited:
AK4118 + Arduino

Hi, Nino,
I have received two DACs this week. AK4113+2 AK4399 and AK4118+AK4495.
The first DAC works with the Arduino controller without problem, the second one has only one 10 pin connector, it works with the original controller from the DAC AK4118+2 AK4399, but does not work with Arduino controller too.
I think there is an initialisation problem. For AK4113 to set INT0 masks of STC and ULK events, the register 04H should be used. For AK4118 only the ULK mask may be defined via the register 04H. I think, to define the STC event mask/detection the registers 24H and 26H should be used, but I do not know how .

PS: The AK4495 is SUPER.
 
Last edited:
Hi, Nino,
I have received two DACs this week. AK4113+2 AK4399 and AK4118+AK4495.
The first DAC works with the Arduino controller without problem, the second one has only one 10 pin connector, it works with the original controller from the DAC AK4118+2 AK4399, but does not work with Arduino controller too.
I think there is an initialisation problem. For AK4113 to set INT0 masks of STC and ULK events, the register 04H should be used. For AK4118 only the ULK mask may be defined via the register 04H. I think, to define the STC event mask/detection the registers 24H and 26H should be used, but I do not know how .

PS: The AK4495 is SUPER.

Which AK4495 board is it - do you have an online reference? I'm sure many of us are curious!
 
I have tried to use separate voltage regulators for DAC power supply. The result is grandiose. I use TI regulators REG101 (5V and 3.3V versions are available) and the evaluation board for it (I have cut it to the size 13mm X 20mm). I think following power lines should have separate power sources: VREFHL, VREFHR and AVDD. Because the modified PCB is very small, it may be placed on the bottom size of the DAC PCB directly on the contacts of the appropriate electrolytic capacitor.
 
Last edited:
Hi, Nino,
I have received two DACs this week. AK4113+2 AK4399 and AK4118+AK4495.
The first DAC works with the Arduino controller without problem, the second one has only one 10 pin connector, it works with the original controller from the DAC AK4118+2 AK4399, but does not work with Arduino controller too.
I think there is an initialisation problem. For AK4113 to set INT0 masks of STC and ULK events, the register 04H should be used. For AK4118 only the ULK mask may be defined via the register 04H. I think, to define the STC event mask/detection the registers 24H and 26H should be used, but I do not know how .

PS: The AK4495 is SUPER.
Hi pca01
I'm glad the Arduino works on your 2xAK4399+AK4113.:)

What is TVDD voltage on the new AK4495 PCB ??

Did you write your own code for the AK4495 DAC? I mean, did you modify the init routine for the DAC chips?

Thanks for pointing out the STC event on AK4118. It's still the right bit as I coded it for the AK4118 version, but it also needs to be enabled to set the INT0 register PEM bit, when a STC occurs (it isn't by default). You'll need an additional write to the 24H register, I overlooked this.

I'll post new versions of the program today and include the 24H fix. I also made some minor changes to make the program more stable.

Nino
 
Hi Nino,
new DAC AK4495 works in parallel mode, thus it does not need the code modification, but all calls, which have access to DAC pins (SPI, PDN, CS) should be removed. The TVDD voltage in this PCB is 3.3V too, but it’s not a problem, because the evaluation board for this DAC has the same voltage at TVDD pin http://www.akm.com/akm/en/file/ev-board-manual/AK4495SEQ.pdf.
I have tested your new code with both AK4118 PCBs. On the PCB with 2 AK4399 without modifications and on the PCB with AK4495 with deleted access to the DAC chip. Unfortunately in both cases it does not work. The receiver has no lock.
The original controller of the new DAC has the identical microprogram (you "can" switch the digital filter of the DAC that works in parallel mode and has a DIP switcher to change the filter type). I have tried on the PCB with AK4495 DAC all original "AK4118" controllers, they works without problem.
 
Last edited:
...The TVDD voltage in this PCB is 3.3V too, but it’s not a problem, because the evaluation board for this DAC has the same voltage at TVDD pin http://www.akm.com/akm/en/file/ev-board-manual/AK4495SEQ.pdf....
The TVDD voltage of 3.3V only works according to specs when 3.3V micro controller chip is used as well. Input pins of AK4113/AK4118 must not exceed 3.3V then, the evalution board chip is also 3.3V device.

I don't know what's the problem with the AK4118 software for Arduino then. I assume you have made a connection to the INT0 pin, right? Without it, software won't work. I can't test AK4118 version, software is only tested on AK4113.

The software works only when DACs are used in serial mode, or else the dacs can't be muted/reset/set volume by the software.
 
Last edited:
Hi Nino,
I’ve resolved the problem. After endless investigations with a logic analyser and comparing of Arduino with the original MC, I have reduced the resistance of the pull-up resistor, connected to the pin 4 (AK4118CS) of the 10 pin connector, to ca. 4.2KOhm (originally it was 10 kOhm) and have increased the TVDD voltage to 5V (now it’s is connected to the 5V source via a ferrite bead). Finally it works with an Arduino MC!
 
Last edited:
pca01, could you say more about the sound of the AK4495? IS it better than the AK4399, and if so, in what ways? Thanks!

Hi Spartacus,
It is not easy to compare the sound of two DACs, which sound is originally very good. I think, in this case the first impression is the only true. My impression is: the sound of the AK4495 has better resolution and less “aggressive” then the sound of the AK4399. I think it has more potential to tweak as the AK4399. But it’s possible that the PCB design of this new Weiliang product is better too.
 
Hi guys, I have this very DAC and I cannot get it to work with usb.
When i connect the weiliang dac to my windows 2012 computer, it says device unrecognized. If i try to install the usb drivers Minoshow gave me, the wizard stops by saying that the device is not plugged in. I dont know what to do.
What should I do?
I have already tried running the setup program in compatibility mode (windows 7), without any result. I have disabled Windows 8 driver signature enforcement, permanently. It's still not working.
I hope some of you can help me.
Thanks.

EDIT: I have also tried a second computer, with Windows 8.1. The behaviour is identical. The error description is a bit more clear, and it says the following:

"Windows has stopped this device because it has reported problems. (Code 43)
A request for the USB device descriptor failed."
I have obviously already tried the generic fixes suggested on Microsoft webpage (such as uninstalling the device from device manager and so on), but with no success.

Has this problem occurred to any of you?
Thanks.
 
Last edited:
Hi Nino,
I’ve resolved the problem. After endless investigations with a logic analyser and comparing of Arduino with the original MC, I have reduced the resistance of the pull-up resistor, connected to the pin 4 (AK4118CS) of the 10 pin connector, to ca. 4.2KOhm (originally it was 10 kOhm) and have increased the TVDD voltage to 5V (now it’s is connected to the 5V source via a ferrite bead). Finally it works with an Arduino MC!
Hi pca01
Glad you solved the problem, congratulations. Also nice you managed to use the Arduino software to control the new AK4495 DAC, at least half of it! With the AK4495 you can use I2C to control the DAC as well as SPI.
 
Hey guys, I solved the issue. Yao suggested that I opened the upper part of the chassis and check that the xmos card was plugged correctly. I did so. It looked okay, but I unplugged it and replugged it, to be sure. When I switched the dac on and connected it to the PC again, it worked and let me install the drivers.
I noticed that the xmos card inside the dac is a bit flimsy (excuse my language barrier): connection to the pins is not very strict. Who mounted it, used also some hot silicon to fix it to the capacitors, but they didn't do a very good job in keeping it secured. And so, it must have dislodged slightly during transport.
It's working fine now.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.