Go Back   Home > Forums > >
Home Forums Rules Articles diyAudio Store Blogs Gallery Wiki Register Donations FAQ Calendar Search Today's Posts Mark Forums Read

Digital Line Level DACs, Digital Crossovers, Equalizers, etc.

Arduino controlled dual mono AK4490 DAC
Arduino controlled dual mono AK4490 DAC
Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 20th October 2017, 08:31 AM   #71
Dimdim is offline Dimdim  Greece
diyAudio Member
 
Join Date: Sep 2008
Location: Athens
Arduino controlled dual mono AK4490 DAC
Quote:
Originally Posted by pistollero View Post
Hello all very nice experiments.. i would like to know what is the music server...
Lms or other ?
Salas uses a Windows machine running Foobar. Output was through ASIO driver.
__________________
http://www.dimdim.gr
  Reply With Quote
Old 27th October 2017, 07:29 AM   #72
dhalbakken is offline dhalbakken  Thailand
diyAudio Member
 
Join Date: Aug 2009
I thought I'd post some info regarding my own Arduino-controlled AK4490. No, it isn't dual mono, but it sounds quite good. It sounds much better than the Chinese AK4490 I previously used, and also better than my Chinese ES9018 before that. I used the DIYINHK AK4490 board and the DIYINHK multichannel XMOS-based USB-I2S board. Although I previously used a 6N16B tube-based output circuit, this time I chose solid state. More on the output circuit below.

I chose to float all the supplies, so I'm using lots of transformers. The AK4490 board joins its supply grounds in a sort of star ground arrangement under the DAC chip. The grounds are not as strictly separated as they are on the AK evaluation board, but it seems to sound ok anyway. The USB-I2S board and the Arduino UNO R3 are powered by a separate 5V supply, and its ground is cnneccted to the DAC digital ground. The output circuit ground is connected to the DAC analog 7.0V supply ground.

So far I've built separate analog and digital 3.3V supplies, but only one analog 7.0V supply. I'll separate the two channels with individual 7.0V supplies soon, then perhaps another for Vref.

My DAC power supplies are based on the old LM723, which the datasheet shows has pretty low noise with a 10uF Cref capacitor. I chose the LM723 because it is cheap and plentiful locally, easy for a DIYer to solder, not too bad performance, and supplies sufficient current. Schematics are attached. I might decide to experiment with better quality Cref capacitors and see whether I can hear any difference. I might also experiment with using LEDs as a reference instead of the internal zener. Since I don't have golden ears, I expect to hear no difference, but you never know. Note that Horowitz in Art of Electronics says that the production spread on Vref is 6.8 to 7.5 V. The 7.0 V regulator will not work with samples on the low end of that range. He, of course, suggests a solution. My samples were just fine.

I put my Arduino code at Arduino UNO R3 code for AK4490 DAC * GitHub. It implements a volume control using an optical rotary encoder. I tried to document the implementation in code comments. The code is an combination of stuff I've used for other projects, so it might not look so pretty. I use a 4 line LCD display, and I intend to use the two lower lines for selecting and displaying sound quality settings and filter settings. I have not figured out what sort of interface I want yet, so that code is not present.

The output circuit includes an adaptation of a circuit from Barbara Gerhold of TUBECLINIC that she calls a digital audio balun. It also includes an adaptation of the Moosefet amplifier, which is Copyleft licensed by Gregg van der Sluys. The original can be found here: DIY Audio Projects Forum • MooseFET Preamplifier. I modified the gain of the amp so that I get 2.1 Vrms out at 0 dBFS with 7.0 V analog and reference voltages on the AK4490. I'm not smart enough to find a way to eliminate the input coupling cap, though I'm quite sure it is possible. I've attached a schematic. I figured that if I didn't like the sound of this circuit, I could build a PASS BOZ.

I tried this setup with both the DIYINHK multichannel XMOS board and an older XMOS board from Weiliang in China. I got lots of ticks and pops between albums using the Weiliang board but none using the DIYINHK board. It's just a guess, but I suspect the DIYINHK board streams silence all the time when there is no music playing, whereas the Weiliang board does not. I use JRiver Media Center 21 as my player. I could not find a setting in JRiver to tell it to stream silence between albums.

I have not yet experimented with DSD.

I have a question regarding DIF 0-2 settings, which, according to the datasheet, control PCM mode. There are two I2S settings: 1) 24-bit I2S compatible, and 2) 32-bit I2S compatible. The latter requires a higher bit clock rate. I have chosen 24-bit sample width just because I have no 32-bit music. Is there any reason to chose 32-bit as Dimdim did in his sample code?

And one more question. I might decide to make this a multichannel DAC, but I don't want to multiply the number of transformers. I wonder if anyone has experience or recommendations with any Chinese transformer makers that might be able to wind a custom transformer for me that has multiple windings in small quantities at reasonable prices.

Dave
Attached Images
File Type: jpg lm723-3.jpg (35.2 KB, 699 views)
File Type: jpg lm723-7.jpg (50.1 KB, 690 views)
File Type: jpg Moosefet2.jpg (88.3 KB, 683 views)
File Type: jpg _U6K1390.jpg (49.4 KB, 680 views)
File Type: jpg _U6K1394.jpg (45.9 KB, 674 views)
File Type: jpg _U6K1408.jpg (88.0 KB, 283 views)
  Reply With Quote
Old 4th November 2017, 07:31 PM   #73
lykkedk is offline lykkedk  Denmark
diyAudio Member
 
lykkedk's Avatar
 
Join Date: Dec 2002
Location: Denmark, Fredericia
Subscribed ...

Jesper.
__________________
DCG3 Dual DCSTB, R2R DAC in build (2 ReflectorD's (+5VDC/+3.3VDC) + SSLV1.1 (+/-12VDC))
AlephJ Mimi! http://www.diyaudio.com/forums/pass-...mimi-mini.html
  Reply With Quote
Old 15th November 2017, 01:07 PM   #74
Dimdim is offline Dimdim  Greece
diyAudio Member
 
Join Date: Sep 2008
Location: Athens
Arduino controlled dual mono AK4490 DAC
Quote:
Originally Posted by dhalbakken View Post
I have a question regarding DIF 0-2 settings, which, according to the datasheet, control PCM mode. There are two I2S settings: 1) 24-bit I2S compatible, and 2) 32-bit I2S compatible. The latter requires a higher bit clock rate. I have chosen 24-bit sample width just because I have no 32-bit music. Is there any reason to chose 32-bit as Dimdim did in his sample code?
In my code I've set the dac up for 32bit input because my Amanero combo384 outputs 32bit I2S. It does that regardless of the bit depth of the music.

Quote:
Originally Posted by dhalbakken View Post
And one more question. I might decide to make this a multichannel DAC, but I don't want to multiply the number of transformers. I wonder if anyone has experience or recommendations with any Chinese transformer makers that might be able to wind a custom transformer for me that has multiple windings in small quantities at reasonable prices.

Dave
I don't have any experience with Chinese transformer makers, I have mine custom made by a local shop. They do a good job, have no minimum quantity for custom transformers and are very reasonably priced: Τ.Γιατράς Μετασχηματιστές - Toroidal Transformers
__________________
http://www.dimdim.gr
  Reply With Quote
Old 18th November 2017, 09:25 PM   #75
electronic eel is offline electronic eel
diyAudio Member
 
Join Date: Feb 2015
Hi,

I'm considering to design a AK4490 dac board specifically for use with a Beaglebone Black. So I'm reading about your experiences, thanks for sharing.

I'm considering if reclocking will improve SQ or not. At the beginning of the thread you wrote:

Quote:
Originally Posted by Dimdim View Post
The measured (audio) jitter is very low in all of our tests and the funny thing is that it improves further when the reclockers are in the chain, even though we are getting the "glitches"..
I'm puzzling about the reason for this. Because if AKM are not stupid, then they will have added flipflops at the input of the dac which use the BICK to clock the rest of the I2S signals. The required setup times of the other signals before the BICK edge suggests such a setup.

So a slight jitter on the signals except BICK won't matter. Now the BICK itself is probably internally flipflop-tied again, this time to the MCLK. So to have a measureable effect, a disturbance must be strong enough to move the BICK edge to another edge of the MCLK. But as you do the external reclocking to the same MCLK, I don't see where the reclocking helps.

The quoted post above (and your measurement) were made before you found out about the clock domain problem. Wouldn't it be possible that the measured difference was just the same clock-domain problem, but materializing in a different way? If there is a very slight frequency difference between the clocks, this could either show up as a constant jitter without reclocking or as a clear base signal but with stronger jumps with reclocking.

Did you try to remove the reclocking stage after you changed to a single clock domain? Were the measurement results the same as before?

Thanks.
  Reply With Quote
Old 21st November 2017, 02:30 AM   #76
didiet78 is offline didiet78  Indonesia
diyAudio Member
 
Join Date: Mar 2007
Location: Bandung
Single layer dual mono AK4490
Attached Images
File Type: jpg Mono Mode.jpg (198.7 KB, 213 views)
__________________
Didiet
Usb I2S + AK4490 / WM8805+ESS9023 / SDHC Card I2S audio player + AD1860
  Reply With Quote
Old 21st November 2017, 05:44 PM   #77
lemon is offline lemon  Greece
diyAudio Member
 
Join Date: Apr 2009
All the dac brands have the own de-jitter technology but none hasn't solve it yet.
From a practical view, we see that the re-clocking improves the SQ. Acoustic and lab observations tell the same thing, the re-clocking is a must.
At post 2, we said that the data eye-pattern was improved with the re-clocking method (oscilloscope observation).
  Reply With Quote
Old 21st November 2017, 10:18 PM   #78
electronic eel is offline electronic eel
diyAudio Member
 
Join Date: Feb 2015
Quote:
Originally Posted by lemon View Post
All the dac brands have the own de-jitter technology but none hasn't solve it yet.
you use just a few standard logic gates. That is something AKM can easily build into their ICs.

Quote:
Originally Posted by lemon View Post
From a practical view, we see that the re-clocking improves the SQ. Acoustic and lab observations tell the same thing, the re-clocking is a must.
But did you do a comparison after you fixed the clock domain problem?

Quote:
Originally Posted by lemon View Post
At post 2, we said that the data eye-pattern was improved with the re-clocking method (oscilloscope observation).
But that are the digital signals going into the dac. If they have the same flipflops you have outside the dac also inside, the same improved eye pattern would be available to the next stage inside the dac.
  Reply With Quote
Old 29th December 2017, 02:57 PM   #79
maxidcx is offline maxidcx  France
diyAudio Member
 
Join Date: Jan 2012
Hi
Nice project
You may have a look at lynxaudio D78 design with the pdf file on their website (russian)
It s a inspirational masterpiece from digital to analog part...
Look at their reclocking and here again single clock domain on the dac side with usb slave is the way to go
__________________
we dont know how much we dont know
  Reply With Quote
Old 9th October 2018, 07:25 PM   #80
Thorp is offline Thorp
diyAudio Member
 
Join Date: Jan 2013
Hi
First of all I want to thank to @Dimdim and @Lemon for sharing with us this nice project.

I didn't figure out how to set the Amanero board to work with AK4490 (on Windows) on DSD mode. Both AKMs get DML bit = 1, so if I disable DDM bit, there is a sound in the right channel only. If I set DDM bit = 1, there is no sond on any channel, of course. I've got DSD working with Amanero on Linux, but I didn't like how the system sounds (PCM is OK, but DSD...).
I tested with Slave CPLD with MCLK/2 and all the available main firmwares for Amanero board, but no success with DSD. All PCM sample rates sound excellent.

So, I took an old XMOS project I've made (Amanero like PCB and pinout) and I easily modified it in order to work in slave mode with Si570. Now all the sample rates work and the sound is absolutely amazing - I can compare it with another AK4490 software controlled project I have.
My PCB version is only 2 layer, because I intended to keep the price as low as possible. After some analyzes, I've found that the mirror placement is the best solution for 2 layers PCB.
Another modify I've made is the output analog filter. It is the filter from the AK4490 datasheet, except instead of monolithic opamp I choose a personal version of JE-990C with SSM2212.
I also made some pre-regulators with LT1085 for a wider power supply range. The trafos are 2x14VAC from TME whom I have made 2 more windings for 7VDC and 5VDC supplies.
Now it is time for the modules to go in a case.
AKM1.jpgAKM2.jpgAKM3.jpgAKM4.jpg
  Reply With Quote

Reply


Arduino controlled dual mono AK4490 DACHide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Dual Mono DAC AK4490/AK4497 cal1sto Digital Line Level 397 8th May 2018 11:45 AM
PGA2311 controlled by an Arduino nano Alexvez Analog Line Level 8 10th May 2017 10:29 PM
Simple remote volume control (controlled through arduino) 00940 Analog Line Level 22 7th December 2016 11:22 PM
CD-Pro2M/LF controlled by Arduino Bergrans Digital Source 2 10th December 2013 08:45 PM
THAT 5171 Controlled By Arduino? brandondrury Analog Line Level 0 10th September 2013 04:47 PM


New To Site? Need Help?

All times are GMT. The time now is 11:47 PM.


Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Resources saved on this page: MySQL 14.29%
vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Copyright ©1999-2018 diyAudio
Wiki