ESS Sabre Reference DAC (8-channel) - Page 158 - diyAudio
Go Back   Home > Forums > Source & Line > Digital Line Level
Home Forums Rules Articles diyAudio Store Gallery Wiki Blogs Register Donations FAQ Calendar Search Today's Posts Mark Forums Read

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

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 16th September 2010, 09:10 PM   #1571
gebi is offline gebi  Austria
diyAudio Member
 
Join Date: Aug 2005
Default vol control arduino is working :-

thanks a lot for the examples :-))))))
without this help, I could not get it running.
the following small test prog sets the vol. .
next I'll try to implement a rotary encoder.
there is a nice lib for using the rotary encoder from old mechanical PS2 mouse.
Arduino playground - Ps2mouse

let's see :-)


#include <Wire.h>

// Define register values, etc to facilitate programming
// Note: Reg address is address plus R/W bit
// This is why the address here is different from the
// address in the data sheet


#define REG0 0 // Register 0 address (Volume Adjustment)
#define REG1 1 // Register 1 address (Volume Adjustment)
#define REG2 2 // Register 2 address (Volume Adjustment)
#define REG3 3 // Register 3 address (Volume Adjustment)
#define REG4 4 // Register 4 address (Volume Adjustment)
#define REG5 5 // Register 5 address (Volume Adjustment)
#define REG6 6 // Register 6 address (Volume Adjustment)
#define REG7 7 // Register 7 address (Volume Adjustment)

#define MAXVOL 0 //-0 dB
#define DEFAULTVOL 100 //-50 dB this is 50x2=100

// The write to ESS9008 DAC routine
void bufwritereg(byte regaddr,byte regval)
{
Wire.beginTransmission(0x48);
Wire.send(regaddr);
Wire.send(regval);
Wire.endTransmission();
}


// set all register to same vol
void set_vol(byte regval)
{
bufwritereg(REG0,regval);
bufwritereg(REG1,regval);
bufwritereg(REG2,regval);
bufwritereg(REG3,regval);
bufwritereg(REG4,regval);
bufwritereg(REG5,regval);
bufwritereg(REG6,regval);
bufwritereg(REG7,regval);
}

// Declaring some more variables

byte ledPin = 13; // led on the arduino
byte regval=0; // variable for volume lower bits

void setup()
{
Wire.begin(); // join i2c bus (address optional for master)
}


void loop()
{
digitalWrite(ledPin, HIGH);
regval=MAXVOL;
set_vol(regval);
delay(5000);

digitalWrite(ledPin, LOW);
regval=40; // -20db
set_vol(regval);
delay(5000);
}
__________________
gebi
  Reply With Quote
Old 17th September 2010, 04:51 PM   #1572
glt is offline glt  United States
diyAudio Member
 
Join Date: Oct 2004
Very nice.

For rotary encoder you can look at the following code: H I F I D U I N O: Arduino Code for Rotary Encoder

To keep the code simple (simple for me to understand :-)) I added some capacitors to the rotary encoder to eliminate the mechanical glitches...

Also tried the mouse wheel... but liked the standard rotary encoder better...
__________________
www.hifiduino.wordpress.com
  Reply With Quote
Old 10th October 2010, 04:46 AM   #1573
Bunpei is offline Bunpei  Japan
diyAudio Member
 
Join Date: Aug 2008
Default Effect of master clock oscillator quality

Recently a Japanese manufacturer, Fidelix published an interesting report for the relationship between grades of master clock oscillators and measured purity results for a test signal.
クロックのジッターの測定方法 (In Japanese)

They are now in the final development stage of their DAC product, CAPRICE, that uses ES9018 chip and they say their commercial product will be released within a month.
They tried three crystal oscillators of different grades on the CAPRICE board. Their frequencies were between 90 MHz and 100 MHz.
A test S/PDIF signal of pure 11.025 KHz generated by AP SYS2722 was injected to CAPRICE DAC and its analog output was measured with SYS2722.

Type 1. Fidelix proprietary crystal oscillator with an amplifier of bipolar devices. A DC power supplied for this oscillator comes from a proprietary regulating circuit. A crystal unit used in this oscillator was selected from several samples available in markets. The spectral measurement result shows a very sharp peak.
http://www.fidelix.jp/img/11.025kHz.jpg
Click the image to open in full size.

Type 2. A basic grade crystal oscillator easily available in Japanese markets (not special, not bad) The result shows an apparent peak broadening and a noise floor raise.
http://www.fidelix.jp/img/11.025kHzb.jpg
Click the image to open in full size.

Type 3. A junk crystal oscillator
http://www.fidelix.jp/img/11.025kHzc.jpg
Click the image to open in full size.

They say results in listening just match well the spectral purities measured.
  Reply With Quote
Old 15th October 2010, 03:31 PM   #1574
Bunpei is offline Bunpei  Japan
diyAudio Member
 
Join Date: Aug 2008
Quote:
Originally Posted by Bunpei View Post
A test S/PDIF signal of pure 11.025 KHz generated by AP SYS2722 was injected to CAPRICE DAC and its analog output was measured with SYS2722.
They added a new result measured by PC-based devices. They are surprised that a combination of an inexpensive audio signal input device and a free FFT analyzer program gives a similar result with that measured by an industry standard high level apparatus AP SYS2722. They used "E-MU 0404 Second Edition" sound card and FFT software, WaveSpecrta1.40, for 44.1 kHz analog output sampling.
http://www.fidelix.jp/img/E-MU.jpg
Click the image to open in full size.
A J-Test signal WAV file was stored on a Audio CD disk and the file was played on an inexpensive CDP of Pioneer. ( its master clock was upgraded with Fidelix proprietary one)

It may be worth trying this method to compare your system with various and rich Stereophile measurement results without SYS2722.
The stereo J-Test signal of 16 bit version is available from here.
  Reply With Quote
Old 15th October 2010, 05:24 PM   #1575
Bunpei is offline Bunpei  Japan
diyAudio Member
 
Join Date: Aug 2008
An updated spectrum was published. Averaged one.
http://www.fidelix.jp/img/E-MU2.jpg
Click the image to open in full size.
  Reply With Quote
Old 2nd December 2010, 02:30 PM   #1576
Bunpei is offline Bunpei  Japan
diyAudio Member
 
Join Date: Aug 2008
Default I2S for ES9018

Is my understanding correct?
ES9018 is compatible for I2S of only 64fs bit clock. Namely, it does not accept 32fs bit clock even if the data is 16 bit length/channel and stereo.
  Reply With Quote
Old 2nd December 2010, 03:38 PM   #1577
qusp is offline qusp  Australia
diyAudio Member
 
qusp's Avatar
 
Join Date: Oct 2009
Location: Brisbane, Australia
Bunpei, have you seen my email to you? you were trying to contact me while I was moving and had intermittent internet contact and no email, but we are ready for the clock if you are ready, both myself and acko have prepared for its arrival.

sorry for the OT guys, just noticed he posted in here not long ago
  Reply With Quote
Old 3rd December 2010, 05:28 AM   #1578
diyAudio Member
 
Join Date: Oct 2006
Quote:
Originally Posted by Bunpei View Post
Is my understanding correct?
ES9018 is compatible for I2S of only 64fs bit clock. Namely, it does not accept 32fs bit clock even if the data is 16 bit length/channel and stereo.
Hi Bupei,

This is true, it must have a 64fs no matter what.


Dustin
  Reply With Quote
Old 3rd December 2010, 07:00 PM   #1579
glt is offline glt  United States
diyAudio Member
 
Join Date: Oct 2004
Quote:
Originally Posted by Bunpei View Post
Is my understanding correct?
ES9018 is compatible for I2S of only 64fs bit clock. Namely, it does not accept 32fs bit clock even if the data is 16 bit length/channel and stereo.
Hmmm...It seems by definition that if a DAC accepts 32 bit data (Sabre, Wolfson8741, other 32 bit DACs), BCK must run at 64fs. Even "low end" 24-bit DACs such as the PCM models require at least 48fs. Are there any current DACs that can run at 32fs bit clock?
__________________
www.hifiduino.wordpress.com
  Reply With Quote
Old 4th December 2010, 02:05 AM   #1580
Bunpei is offline Bunpei  Japan
diyAudio Member
 
Join Date: Aug 2008
Quote:
Originally Posted by glt View Post
...It seems by definition that if a DAC accepts 32 bit data (Sabre, Wolfson8741, other 32 bit DACs), BCK must run at 64fs. Even "low end" 24-bit DACs such as the PCM models require at least 48fs. Are there any current DACs that can run at 32fs bit clock?
I just know about ES9018 and WM8741.

In the case of WM8741 (it is 24 bit DAC), it detects whether BCLK frequency is 32*LRCLK or 64*LRCLK. If the BCLK frequency is 32*LRCLK, the DAC sets 16 bit mode automatically. Therefore, the DAC can accept I2S signals of a BCLK of 32*LRCLK.

I have once applied 192 kHz/32 bit I2S to WM8741 with BCLK of 64*fs. The DAC could play a normal sound. I suppose the DAC interprets the leading 24 bits and ignores residual 8 bits within the frame.

I have never experienced BCLK of 48*fs.

Last edited by Bunpei; 4th December 2010 at 02:09 AM.
  Reply With Quote

Reply


Hide 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
Trackbacks are Off
Pingbacks are Off
Refbacks are Off



New To Site? Need Help?

All times are GMT. The time now is 07:46 PM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2017 DragonByte Technologies Ltd.
Copyright ゥ1999-2017 diyAudio

Content Relevant URLs by vBSEO 3.3.2
Wiki