ESScontroller Manual

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 11

DownloadESScontroller Manual
Open PDF In BrowserView PDF
Ian’s ESS controller user’s guide
By Ian Jin, Dec 30, 2018 Ver. 0.9 (draft)

A.

Introduction

Ian’s ESS controller is the first smart universal ESS DAC driver board that can be installed into standard Raspberry
Pi GPIO port. Equipped with powerful STM32 ARM Cortex processer, this tiny controller provides almost all kind of
possible functions to run an ESS DAC, such as display, control, setting, monitoring, communicating and many more.
It could be so far the best solution to integrate ESS DAC together with Raspberry Pi.

B. Highlighted Features and Specifications

Page 1



Support ESS9018K2M, ES9028Q2M, and ES9038Q2M DAC in both stereo and dual mono configuration.



Up to 768KHz 16/24/32 bit PCM and native DSD1024 support.



Built-in OLED GUI for volume control and register settings.



Can work in isolated mode to eliminate noise.



Operate with knob encoder, Apple remote control or Web UI (for volume control).



True SYNC mode of ESS DAC is supported.



Real time music signal monitoring.



Real time DPLL status monitoring.



Analyzer mode designed for digital music signal measurement when no ESS DAC is attached.



Mute I2C while music is playing.



Fixable design, can be installed either into GPIO or at front panel through an adapter



Possible to work with external ESS DAC.



Small size PCB with GPIO connector very easy to use with Raspberry Pi audio applications.

2018-12-30

iancanada.mail@gmail.com

C. Layout and Dimensions (in mm)

D. Getting start
1. Solder the knob encoder to the S1 position of ESS controller. Cut the pin leads by a side cutter if required.
Please skip this step if only use Apple remote control;
2. Plug the ESS controller onto the GPIO of ESS DAC HAT (normal mode) or the non-isolated GPIO of FifoPi or
IsolatorPi (Isolated mode);
3. Power Raspberry Pi and DAC system as usual; ESS DAC ID, address and working mode will be recognized
and displayed on OLED screen. Adjust the volume to 0dB or other suitable level for the first time of operating
if the ESS DAC default setting is too low.
4. On the player’s setup page, select general I2S DAC. Or PCM5122 compatible DAC such Hifiberry DAC+ if
need additional volume control from Web UI. Restart player if it is required.
5. Enjoy the music.

Page 2

2018-12-30

iancanada.mail@gmail.com

E. OLED working screen
OLED display has four sections on the main working screen:
1. Right side of the screen: Volume numbers in unit of dB.
2. Top left of the screen: Music format and sampling rate or Music signal status.
3. Top middle of the screen: Real time measured data length of PCM music, can be 16,24 or 32bit.
4. Bottom left of the screen: Real time measured bit clock (SCK or BCK) frequency in unit of Mhz.

F. Volume control
There are three ways to control the volume of ESS DAC :
1. Turn the knob.
2. Press arrow keys on the Apple remote control.
3. Change the volume at the Web UI of Linux player if the PCM5122 compatible DAC is selected.
Please note that the volume display is in unit of dB corresponding to the ESS DAC internal register settings. 0dB
is the maximal, while the -99dB is the minimal. To keep the best sound quality, please always set the volume to
0dB if you have an analog volume control in your system (such as the one in pre-amplifier or power amplifier).
Linux player will also internally convert volume in unit of percentage into unit of dB.

G. GUI manual of register settings
To open the GUI manual, you need to press the knob or the play key on the Apple remote. Then turn the knob or
press the arrow keys of the remote control to go through all register setting pages. Current settings will be
highlighted.
To change a setting, you just need to press the knob or the play key of the remote control at the highlighted
setting that you want to change. It will go into edit mode with current editing setting in flashing. Turn the knob or
press the arrow keys of the remote control to go through all the options. Press the knob or the play key of the
remote control at the option that you want to change to, it will be set and saved. GUI manual will exit to the main
Page 3

2018-12-30

iancanada.mail@gmail.com

working screen. If cancel is selected, it will exit setting manual without making any change.
Or, you can wait for ten seconds or press the manual key of the remote control at any time; it will automatically go
back the main screen.
Register setting pages

Setting options
NO Bandwidth 0

Descriptions and notes
Set the PCM DPLL bandwidth

Lowest Bandwidth 1

DPLL Bandwidth PCM

Lower Bandwidth 2

Smaller numbers can only apply

Low default 5

to better XO or external MCLK of

Low-medium 8

ESS DAC.

Medium 10
High-medium 12

NO bandwidth will only apply to

High Bandwidth 14

DAC in true SYNC mode with

Highest Bandwidth 15

DPLL stopped.

NO Bandwidth 0

Set the DSD DPLL bandwidth

Lowest Bandwidth 1

DPLL Bandwidth DSD

Lower Bandwidth 2

Smaller numbers can only apply

Low Bandwidth 5

to better XO or external MCLK of

Low-medium 8

ESS DAC.

Medium default 10

NO bandwidth will only apply to

High-medium 12

DAC in true SYNC mode with

High Bandwidth 14

DPLL

stopped,

but

not

a

guarantee to work well with all
Highest Bandwidth 15
1.0757fs default

DAC
Set IIR filter Bandwidth

1.1338fs
IIR filter Bandwidth

Page 4

1.3605fs

For

1.5873fs

except ESS9038Q2M

2018-12-30

supported

ESS

DACs

iancanada.mail@gmail.com

Set IIR filter Bandwidth
Fast rolloff default
FIR filter shape
Slow rolloff

For all supported ESS DACs
except ESS9038Q2M

Brick Wall Filter
Cor MIN Fast Roll-Off
Apodiz Fast Roll-Off (default)
Select digital filters
ES9038Q2M filters

Minimum Slow Roll-Off
For ES9038Q2M DAC only
Minimum Fast Roll-Off
Linear Slow Roll-Off
Linear Fast Roll-Off
ASRC mode default

Default ASYNC mode
True SYNC mode
Only works for DACs in true

MCLK true SYNC Mode

SYNC mode with external MCLK
SYNC mode stop DPLL
fed from FifoPi. Needs jumper
switch being set to SYNC mode
on ESS DAC HAT.
OSF enabled (default)

OSF enabled

OSF bypass

OSF bypass

IIR enabled default

IIR enabled

IIR bypass

IIR bypass

OSF Bypass

IIR Bypass

Monitoring internal DPLL ratio
status numbers in real time.
Watch DPLL Ratio

Yes or Cancel

This powerful function is useful
for evaluating the quality of XO
clock or status of SYNC mode.

Page 5

2018-12-30

iancanada.mail@gmail.com

This function is useful to reset all
register settings back to the
Reset factory default

Yes or Cancel

factory default if not happy with
current

settings

or

getting

confused.

H. Connectors
J1: 40PIN GPIO socket to connect to DAC
This right angle GPIO socket can be connected right on top to the 40PIN GPIO connector of the ESS DAC HAT
(normal mode) or to the 40PIN non-isolated GPIO connector of FifoPi or IsolatorPi (isolated mode).
It will hold the ESS controller in the position. Please make sure both of the rows are fitted well into the connector.

PIN numbers

Signal description

2,4

Pi 5V

6,9,14,20,
25,30,34,

GND

39
3

I2C DA

4

I2C CL

8

Txd

10

Rxd

12

SCK input

35

LRCK/D1 input

J3: Optional FFC/FPC cable connector to connected to DAC
This optional FFC/FPC connector will be alternative to J1 to connect to an ESS DAC externally with 10 PIN
FFC/FPC cable. This connector is not assembled by default.
PIN

Signal

PIN

Signal

1

GND

2

SCK input

3

GND

4

LRCK/D1 input

5

GND

6

I2C CL

7

I2C DA

8

GND

9

Pi5V

10

GND

J5: FW upgrade connector
Reserved for firmware upgrade adapter.

Page 6

2018-12-30

iancanada.mail@gmail.com

Note1: All input/output signals are in LVTTL (3.3V) logic level.

I.

Jumper settings
Jumper switch S2 is located beside the IR receiver at the front side of PCB.
Jumper Switch

OFF (default)

ON

1

Auto mute enabled

Auto mute disabled

2

WebUI volume control enabled

WebUI volume control disabled

S2

For normal applications, please keep all jumper switchs at default position.

J. Tips and application notes
DPLL ratio monitoring
To perform DPLL ratio real time monitoring function, you will need:
1. At the GUI manual “Watch DPLL Ratio” page, select “Yes”.
2. The 32bit hex DPLL ratio number will be displayed on the screen if there is music signal.
32

FSR = (DPLL_NUM x FMCLK) / 2

This number will keep at 0x00000000 with no change in true SYNC mode because DPLL is stopped.
DPLL ratio number can also be used to evaluate the DPLL lock status or the quality of music signal.
DPLL ratio number display will be terminated automatically in ten seconds.
Music signal analyzer mode
ESS controller can also be used as stand along digital music signal analyzer if no DAC is connected.
To enable this feature, you just need to press and hold the knob for more than 2 second while “Check ESS DAC”
message is showing on the OLED screen.
After enter this mode, the real monitoring music signal status will be displayed on the screen, including music
format, real frequencies and data length.
This feature is useful for hardware debugging by capturing real music signal information without/before DAC
connected.
To get back to normal DAC controller mode, you will need turn off the power and then include an ESS DAC into
system.
Reset register settings back to the factory default
It is very helpful to reset all register settings back to factory default at any time when the setting gets confused or
there is something wrong. To do so, you will need:
At the GUI manual “Reset factory default” page, select “Yes”.

Page 7

2018-12-30

iancanada.mail@gmail.com

The factory default reset is also required when DAC is replaced.
After factory default reset is performed, you may need to change the volume to 0 or other suitable level if the
default volume number is too low.
Enable S/PDIF receiving
To enable S/PDIF receiving, PIN1 of jumper switch S2 needs to be switched to “ON”.
Move ESS controller to the front panel
To move the ESS controller to the front panel rather than plug onto GPIO connector, you will need the Ess
controller extension KIT (sold separately).
1. Plug the ESS extension adapter into the same GPIO connector that the ESS controller was connected to.
2. Solder the 10PIN FFC/FPC connector to J3 position at back side of the ESS controller PCB.
3. Connect the ESS controller to the extension adapter with the 10PIN FPC/FFC cable. Make sure the cable
orientation is correct.
4. Fix the ESS controller at the front panel.
Works with external ESS DAC
It’s also possible to make this ESS controller working as a dedicated controller of an external ESS DAC even
without a Raspberry Pi. To do so, you will need:
1. Solder the 10 wires of the cable to the footprint of J3.
2. Connect the wires of the cable to the corresponding signal pins of the DAC.
3. Remove any possible local controller that connected to the I2C bus of the ESS DAC. Also make sure I2S bus
has pull-up resistors for both signals.

K. ESS controller pictures
Page 8

2018-12-30

iancanada.mail@gmail.com

a. ESS controller

b. Run ESS DAC at normal mode by connecting to the GPIO of DAC HAT

Page 9

2018-12-30

iancanada.mail@gmail.com

c.

Run ESS DAC HAT at isolated mode by connecting to non-isolated GPIO of the FifoPi or IsolatorPi

d. Move ESS controller to front panel by an adapter through a FFC/FPC cable

Page 10
iancanada.mail@gmail.com

2018-12-30

e. ESS controller with complete ESS DAC system
Raspberry Pi + FifoPi + ES9038Q2M dual mono + I/V std + ESS controller

© 2019 Ian Jin. The firmware code embedded in the ESS controller is the property of Ian Jin.

You are granted a

non-exclusive, non-transferable, non-sublicenseable, royalty-free right to use the ESS controller board solely for your own,
non-commercial purposes.

You may not distribute, sell, lease, transfer, modify, adapt, translate, reverse engineer, prepare

derivative works of, decompile, or disassemble the software provided.

Page 11
iancanada.mail@gmail.com

2018-12-30

All rights reserved.



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.5
Linearized                      : No
Page Count                      : 11
Language                        : zh-CN
Tagged PDF                      : Yes
Producer                        : Microsoft® Office Word 2007
Creator                         : Microsoft® Office Word 2007
Create Date                     : 2019:02:18 23:40:52-05:00
Modify Date                     : 2019:02:18 23:40:52-05:00
EXIF Metadata provided by EXIF.tools

Navigation menu