Thank you for your donation!


Cloudsmith graciously provides open-source package management and distribution for our project.


ES9038Q2M review and problem 384kHz.
#1
I warmly welcome. I apologize for my poor English first.
    
I am the owner of the DAC extension EC9038Q2M of Chinese production similar to Audiophonics I-Sabre ES9038Q2M. 
   
The most important difference is the higher supply voltages (+/-15V) in the analogue part than in Audiophonics board (+/-9V).
Higher voltage is better because the audio signal level is further from the maximum output voltage limits of opamps.

Short technical description:
DAC chip ESS Sabre ES9038Q2M
Low noise output OPA1612 operational amplifier providing very low level of intermodulation and harmonic distortion (powered by +/- 15V voltage).
Low-jitter  NDK NZ2520SD oscillator
ADP151 low noise stabilizer that powers the DAC chip
Step-up (boost) voltage converter A0515S-2W providing symmetrical +/- 15V voltage for supplying operational amplifiers.
Output audio level 2Vrms@0dB
The auxiliary microcontroller controlled by the I2C bus offer control options of DAC chip (output fiters)  and by controlling the OLED display (compatible with an analogous solution in Audiophonics).
Interface for encoder and IR remote control receiver.
Two audio outputs RCA and a mini-jack sharing the same operational output amplifier.
DC power socket - 5.5 / 2.5 (plus on the middle pin). It doubles the power supply via USB on the Raspberry Pi board. Both 5V power supply circuits are connected via GPIO connector
Current consumption of the DAC module - approx. 250mA

Control offered by the encoder:
Short press on the pulser shaft - mute
Long (over 0.5s) push of the pulser shaft - change of digital filters
Rotate the axis left / right - quieter / louder
Possibility to control the above functions using the remote control from the set.

Benefits:
Higher supply voltage of analog output signal path.
Similarly, in Audiohonics, the connectors are located on the same side as the USB and Ethernet connectors on the Raspberry Pi board.
GPIO connector pins on the top of the DAC board without shifting due to the original position on the Raspberry Pi board.

Disadvantages:
The OLED display is attached to the DAC board, the unit is slightly below the height occupied by the RCA output sockets.

Observations:
From the bottom of the DAC plate is a battery (or supercapacitor?) supporting some memory(?).
Contrary to the seller's information, the minijack output seamlessly (with fulll sound level) drives my Koss Porta-Pro headphones with an impedance of 60 ohms (identical to HifiBerry DAC boards).

All you need is information about the disc, it's time to work with Moodeaudio:

Any Raspberry Pi:
A selection of DAC chip output filters is available from the Moodeaudio menu.
No hardware volume control. Software sound level control only from Moodeaudio GUI level.
No annoying clicks that are present in Burr-Brown PCM systems (They always appear there when starting playback or using the mute function).
Perfect gapless which for me is the most important feature of reproduction, lack of gapless is a useless player due to the albums I listen to, where there are smooth (uninterrupted) transitions between tracks.

Raspberry Pi 2B (version 1.1 - old processor).
Works perfectly with oversampling and sampling rates to 384kHz (with 384kHz).
DSD64 and DSD128 works perfectly.

Raspberry Pi 4B (check through me), 3B+ (checked by my friends), 3B and new 2B with a new processor probably also, I have not tested, my friends have not tested.
Oversampling works correctly but only for clock speeds up to and including 352.4kHz - 384kHz does not work!.
The above affects the playback of DSD128 files that want to force a 384kHz clock rate.
PCM files recorded at 384kHz are not played without downsampling.

Other problems:
At least at the moment the use of the Waveshare 3.5 "display is not possible (collision with the DAC chip control port?) - Moode not ending full starting OS.

I'm worried about this lack of correct smaple rate 384kHz. I rather suspect a hardware problem with the generation of the I2S waveform, although I do not rule out a bug in the kernel driver.
In the attachments photos of the set and the DAC board itself.


Thank you for your attention.
Tomasz.
Poland, Lodz (Łódź) - Polish Manchester


Attached Files Thumbnail(s)
           
Reply
#2
The symptom "no software volume" and "384K doesn't work on some Pi's" suggests an incompatibility between the DAC board and the I2S driver. I assume you are using the Audiophonics I2S driver.
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
#3
The hifiberry driver unfortunately doesn't allow more than 192kHz. A software error is one thing but the fact that it works well on old processors may suggest a problem with another timing scheme in processors where the time base for the I2S waveform is generated from. It's just my speculation.

Behind the sloppy driver may be the fact that the encoder or remote control can not only adjust the volume of the hardware, it is also "on the fly" to change the filters in the DAC.
Reply
#4
Thread moved to Audio Gear sub forum
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
#5
(05-10-2020, 07:24 AM)STUDI Wrote: I warmly welcome. I apologize for my poor English first.
    

All you need is information about the disc, it's time to work with Moodeaudio:

Any Raspberry Pi:
A selection of DAC chip output filters is available from the Moodeaudio menu.
No hardware volume control. Software sound level control only from Moodeaudio GUI level.
No annoying clicks that are present in Burr-Brown PCM systems (They always appear there when starting playback or using the mute function).
Perfect gapless which for me is the most important feature of reproduction, lack of gapless is a useless player due to the albums I listen to, where there are smooth (uninterrupted) transitions between tracks.

Raspberry Pi 2B (version 1.1 - old processor).
Works perfectly with oversampling and sampling rates to 384kHz (with 384kHz).
DSD64 and DSD128 works perfectly.

Raspberry Pi 4B (check through me), 3B+ (checked by my friends), 3B and new 2B with a new processor probably also, I have not tested, my friends have not tested.
Oversampling works correctly but only for clock speeds up to and including 352.4kHz - 384kHz does not work!.
The above affects the playback of DSD128 files that want to force a 384kHz clock rate.
PCM files recorded at 384kHz are not played without downsampling.

I'm worried about this lack of correct smaple rate 384kHz. I rather suspect a hardware problem with the generation of the I2S waveform, although I do not rule out a bug in the kernel driver.
In the attachments photos of the set and the DAC board itself.


Thank you for your attention.
Tomasz.
Poland, Lodz (Łódź) - Polish Manchester

Hi Tomasz,

I suspect the driver is the culprit. You have a great DAC chip, which, unfortunately is difficult to implement correctly and fully (by which I mean that much functionality of the DAC chip isn't used). I also deduce that for DSD you use DoP instead of Native DSD, creating massive overhead in the digital stream at high data rates. Most DACs limit DoP to DSD128. Another problem arises with resampling from a 48KHz PCM source (which is the studio standard, along with its multiples), you'll end up with 352.4kHz or DSD128 to avoid problems.
Having said that, the USB interface needs a driver too, integrated in the driver as a whole. So there's the possibility that the problem could be there (hardware + crappy driver). The DAC chip is capable of much higher data rates, often the limitations come from the USB input board (XMOS, Anamero, and the manufacturer of the cheap SAxxx chips, Savitech or something). The ESS DAC chip should be capable of 768kHz or lower (PCM) and 22,4Mhz or lower (DSD) data rates without a problem. 

I am familiar with crappy Linux drivers, for instance for the Pioneer N-50A streamer and, even worse, the Marantz SA-12 and Marantz Ruby. Some systems allow you to choose a different driver, try one of the others for your ESS DAC if possible (always an ESS driver). Otherwise, return the DAC for a refund if you can. Get a RPI4 and USB DAC (Topping has a few brilliant USB DACs with kernel support). The D10 is really good with Moode and is available for < 90 USD (you can even do "op-amp rolling", meaning you can swap op-amps yourself if you like). In my experience a RPI3+ and its forebears is not very usable with a USB DAC because it has to share bandwidth with the Ethernet port. And having I2S (I2C) is not worth the trouble in my opinion, but the only option for the RPI 2/3's for a system that sounds cleanly. It creates more problems in the driver side than a USB DAC. Just make sure that the combination is well supported from all sides before you buy. Sometimes the developers of the system are willing and able to help you with a driver issue. Thesycon is probably one of the best driver developers but the Linux kernel has problems identifying/handling the Thesycon USB ID correctly resulting in a PCM-only system or... no sound at all. And forget the often heard "feature" of Linux not needing special drivers because of its UAC 2.0 spec; Windows 10 has the same support for UAC 2.0 since about two years now.

Good luck,
marco
Reply
#6
(05-10-2020, 08:00 PM)STUDI Wrote: The hifiberry driver unfortunately doesn't allow more than 192kHz. A software error is one thing but the fact that it works well on old processors may suggest a problem with another timing scheme in processors where the time base for the I2S waveform is generated from. It's just my speculation.

Behind the sloppy driver may be the fact that the encoder or remote control can not only adjust the volume of the hardware, it is also "on the fly" to change the filters in the DAC.

Hello! Any workaround so far?
Reply


Forum Jump: