Interfacing Amanero, Cronus and AK4137

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Regarding the scope, best to take some time, study the manual, and go through trying all the options. TEK has some good scope and probe primers we could dig up for you too. Its worth your time to learn how to master the scope if you are going to be doing electronics. Really.

One of the first things to learn about Rigol scopes like that one you have is that if channel 2 is being displayed, pushing the channel 2 select button will first bring up the option menu for that channel, pushing the button again will turn off that channel which gets rid of its junk if there is nothing to see and clears up room to center and expand channel 1 so it can be viewed in more detail. Lots of things to make second nature. Start by reading and by trying things. You already have waveforms you can look at so spend a few hours trying things and trying to understand what is going on. If you want to ask questions here we will try to help. Really, this is my best advice to you, definitely worth your time. https://download.tek.com/document/03W_8605_7_HR_Letter.pdf
 
Last edited:
schultzsch,
Did I give you all the AK4137 assistance you were looking for? Hopefully, I didn't create an offputting issue for you by suggesting to learn the scope a little more. That certainly wasn't my intention.

Regarding AK4137, I think you can probably get better sound out of it than you have so far, but maybe a quick and easy project has sufficiently met your needs?
 
I remained stuck at the moment because I didn’t manage yet to order the buffer for the clock line and also another thing is the fact that I can’t fully control ak4137.
You were mentioning something about controlling ak4137 with amanero.
When reprogramming amanero I noticed that you have a tab where you can insert i2c commands(IIRC) to be sent. Did you managed to do this with your board? Counting in that you have same ak4137 board as mine, how do you control it?
Also in the meantime I have played more with the combo and noticed that the dac can play dsd256 files sent from the ak4137 chip.
I have one more curiosity... how can you make the difference between different dpll settings(jitter)?
I can play dsd256 only on the worst setting for the dpll.
 
You were mentioning something about controlling ak4137 with amanero.
When reprogramming amanero I noticed that you have a tab where you can insert i2c commands(IIRC) to be sent. Did you managed to do this with your board? Counting in that you have same ak4137 board as mine, how do you control it?

There is an I2C bus running around on the AK4137 board that allows the MCU to communicate with AK4137, AK4118, and the PCA9555 (which is used to control some AK4137 pins). The MCU also has some extra pins that control a few AK4137 pins directly, and the 74LXH241 A/B selector switch used to route I2S from either the Amanero socket or from the AK4118, into the AK4137 inputs. The MCU also monitors some Amanero status pins, and drives the display. Its possible to sketch out a schematic drawing of all the control signals using a DVM to ring out connections and maybe a magnifying glass to read small part numbers. With a schematic sketch and by downloading the data sheets for all the chips, its possible to take control of everything with Amanero. Obviously, some small surgery of PCB traces, and some soldering of small wires might be needed too.

It probably possible to take over all the MCU functions with an Amanero, or only some. What I did with a different version AK4137 board was add a relay so that I could seize control of the I2C lines connecting the MCU to the AK4137. I would let the MCU configure the AK4137 then seize control of the I2C lines going to the AK4137 and change them as I liked. Didn't bother the MCU when I did that since music was still playing at the same sample rate and no other settings were changing. As a result the MCU never tried to access the AK4137 registers while I had control. However, I have not confirmed the version of AK4137 board MCU you have will behave the exact same way. You can watch activity on its pins with your scope while music is playing to see if it is accessing the AK4137 registers or not.

I could probably post some pics of how I modified the other AK4137 board just to give you some ideas, but again, the board you have is different.

Also of possible interest is that I use Arduino Trinket Pro 3.3v. It needs an attached FTDI board to communicate with a dumb terminal in real time. The Arduino software includes a serial monitor window that can talk through the FTDI board to the Trinkent. By that means I can type I2C commands at the serial monitor on the computer and they tell the Trinket what I2C commands to put on the bus. The software reads back register contents too so I can see them.

I have one more curiosity... how can you make the difference between different dpll settings(jitter)?
I can play dsd256 only on the worst setting for the dpll.

Not sure what you mean by that. Do you mean the TP control software won't give you access to DPLL settings, or that DPLL is not stable at low settings so you can't use them with DSD256?

My answer will be different depending on your meaning.
 
Last edited:
Oops! In that last post looks like sometimes I said Amanero when I should have said Arduino. Amanero was not used for AK4137 control purposes by me, only as an I2S source. That said, it might be possible to do that with Amanero. IIRC, people have done similar with XMOS chips since there is a CPU in it (Khada Tone Board, for example, again IIRC).
 
Last edited:
I use a different controller to control es9018 registers. At startup for the first half an hour I have some noise if I stream dsd256 to es9018 with the dpll bandwidth set to highest(the worst setting for dpll).
What I wanted to do was to simplify the dac by using the tpa controller set for dsd(osf on) and resample everything to dsd. But as seen in the measurements the thd is higher when streaming dsd so I kinda lost my interest in resampling to dsd. I will try to implement as best as possible the ak4137 and give it another try.
To be honest I want to have everything as clean as possible and stay away from rats nests so I will try to simplify the combo as much as possible. At this moment I am not very convinced that I want to keep the ak4137 in the aystem but still have to see how things go in the future. As I was saying I’m in no hurry(counting in that the quarantine is over now and outside we have a lot of sunny days) so I will go in small steps and it’s possible that most of them will be after the summer finishes.
These days I got also a mercury iv and yesterday managed to mount it to the es9018 dac.
I will post some thd measurements here the next days maybe some are interested.
 
If DPLL bandwidth needs to be set to a high value, it means there is too much jitter from AK4137 and its DSD I2S signals as seen by the dac chip. It is likely also a problem that AK4137 DSD clock is inverted. If you fix those things it will sound much better, and better yet if you do the other things I mentioned.

The easiest way to start making some progress would probably be to either hack into the AK4137 I2C register and invert the DSD clock there, or add a one-bit hardware inverter to do it. That and very very short I2S wires between AK4137 and the dac, each signal with its own ground conductor. Using long wires with clocks and I2S data is probably asking for trouble.

First though, you should verify if AK4137 DSD clock is inverted or not. You will need to use your scope to look at the I2S signals. The DSD clock and one of the DSD data lines should be enough. Please see the attached diagram below. It shows the DSD clock on top and DSD left and right channel data below. What the diagram means is that DSD data changes state from 0 to 1 or from 1 to 0 around when the DSD clock is going from high to low. DSD channel data should be unchanging when the DSD clock goes from low to high. That's what its telling us. Typically, AKM devices default to the channel data changing state when the DSD clock goes from low to high, which is inverted from what ES9018 would be expecting. That could easily cause some problems with DPLL locking in. Noisy/jittery I2S signals from AK4137 would cause similar problems. Look at the waveforms with the probes and probe grounds connected to AK4137 board, then move the probes and probe grounds to the dac board. How do the DSD I2S signals look there as compared to how they looked at the AK4137 board? Probably not very nice looking square waves any more. If I2S signals are distorted, can't have junk like that in dacs and expect good sound.
 

Attachments

  • DSD.jpg
    DSD.jpg
    78.4 KB · Views: 163
Last edited:
The next week I have some spare time and for sure I will take a closer look into this.
After measuring the thd of the new iv connected to the b3se I remained a bit disappointed, I start to agree with you that the es9018 dac is a mess, it’s kinda old chip also.
Maybe it’s time to get an already made dac, there are a few out there in the 500€ price range that measure close to 10x better than what I have now.
One of them is topping dx7 pro and the other is sabaj d5(iirc the names) also I was looking at rme adi 2 fs and at denafrips ares ii. The last two are more expensive but have quite good reputation.
 
If you want an already made dac, I would have to recommend Topping D90. I have said it before, but I definitely like the sound of the D90 over that of my older Benchmark DAC-3, and D90 is a bit less than 1/3 the cost of DAC-3. The other Toppings are older technology many of them ESS-based like my DAC-3.

Regarding modding dacs, it can be a lot of work and cost some money too. But please don't get too hung up on measurements, they don't tell the whole story IME. Yesterday I recommended in another thread to listen to the podcast at: Podcast: Beware the measurements! | Darko.Audio
 
Last edited:
Hello again,

Since I got the new mercury iv stage I have removed the ak4137 board. This morning having a few spare hours I wanted to give a listen to the dac with the ak4137 board now that I am a bit familiar with the new sound.
So after connecting the ak4137 board I have set it to output dsd and after started the amplifiers.
With the new output stage when I turn on/off the amps I have no turn on/off thump but today when I started them there was a serious thump at turn on. For curiosity sake I went to measure the dc offset on the balanced output of the output stage. If until now the offset was very small, something in the range of mV now I have 1V:cool: hmm..
First thing that went to my mind to do was to change the output of ak4137 from dsd to pcm. Well surprise...when changing to pcm the offset went back in the mV range.
Looking further what can cause the offset on the output I have disconnected the ak4137 board and connected the dac(b3se es9018s) directly to the amanero-cronus combo. When cronus sends the signals directly to the dac I don’t have the dc offset on the output when streaming dsd.
 
Mercury is probably DC coupled (I think it uses a servo rather than AVCC/2 or AVCC/x for I/V input offset). Your old output stage may have been AC coupled, not sure.

You could try disconnecting Mercury from the dac and then measure at the analog outputs of the dac chip instead. (Sabre dacs will operate in voltage output mode if no I/V stage is connected.) If you still see a similar offset effect in DSD then my guess would be that BCLK for DSD is being inverted by the AK4137 (AKM default mode), which then might be causing ES9018 outputs to offset in sort of a quirky way. Looking at I2S signals going into the dac chip with a scope should quickly tell if BCLK (DSD_CLK) is inverted, as explained sometime previously.

If the clock is inverted, and if it is causing a dac output offset, then the fix would be to correct the BCLK inversion. Best way would be to go into AK4137 I2C registers and change the DSD BCLK inversion bit. 2nd best way might be to invert BCLK (DSD_CLK) with a hardware logic inverter IC that only is in the circuit for DSD mode (Otherwise the signal would be inverted for PCM and cause other symptoms).
 
Last edited:
I was intending to look today at the BCLK but this morning when I seen that I get 1V of dc on the outputs of mercury and also on the outputs of the amplifiers I had removed the ak4137 board from the combo and also disoldered from the dac and cronus the connectors that helped to connect with the ak4137 board.:D
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.