AudioGD NFB28 ES9018 DAC I2S & RPI3 setting which works

Raspberry Pi related support

AudioGD NFB28 ES9018 DAC I2S & RPI3 setting which works

Postby barsailer » 13 Nov 2016, 17:12


After having spent several days trying to make working a Volumio 2.0 with my AudioGD NFB28 DAC connected in I2S to Raspberry3, I decided to try Runaudio distribution.

I finally found the right procedure, so after having read in forums so many user having experienced same troubles, I just wanted to summarize procedure here.
All this would not have been possible without this forum, so before to start I'd like to release great thanks to Frank for the quality of his support in this forum :D

Installation Description:
- Hardware connection DAC to Rpi3: GPIO 18-21 4 wires GND,LRCLOCK, DATA, BITCLOCK
- Standard Runaudio installation (network, NAS, MPD library update ....) validated with Audio streams on Audio jack = OK
- dtoverlay=hifiberry-dac added onto /boot/config.txt file

Issue Description:
- Files encoded under 16Bits won't plays properly, File played but surrounded by an horrible noise and played on right channel only.
- Files greater than 16 bits like for instance webradios in 24bits plays perfectly.

Root Cause:
- NFB28 uses ES9018 DAC and requires 32 bits Frames Left justified for each Channel.
- Hifiberry-dac default drivers generates 16 bits frames for file encoded under 16 bits and 32 bits frames if encoded file is > 16 bits.

How to force Hifiberry-dac driver to generate 32 bits frames:
- Edit the file "/srv/http/db/redis_acards_details" and add "card_option":"format\t\"*:24:*\"" to hifiberry DAC input changing

$redis->hSet('acards_details', 'snd_rpi_hifiberry_dac', '{"sysname":"snd_rpi_hifiberry_dac","extlabel":"HiFiBerry DAC (I²S)","hwplatformid":"01","type":"i2s"}');
$redis->hSet('acards_details', 'snd_rpi_hifiberry_dac', '{"sysname":"snd_rpi_hifiberry_dac","extlabel":"HiFiBerry DAC (I²S)","card_option":"format\t\"*:24:*\"","hwplatformid":"01","type":"i2s"}');

- execute the following 2 commands to re-initialize the Audio Card database
redis-cli del acards
php /srv/http/db/redis_acards_details

- reboot

Than like me all your 16bits file should play :P
Thanks again Frank
Posts: 1
Joined: 13 Nov 2016, 16:04

Re: AudioGD NFB28 ES9018 DAC I2S & RPI3 setting which works

Postby hondagx35 » 13 Nov 2016, 17:34

Hi barsailer,

welcome to Rune Audio.

Thank you for posting this detailed how-to.

User avatar
Posts: 3041
Joined: 11 Sep 2014, 22:06
Location: Germany

support RuneAudio Donate with PayPal

Return to Raspberry Pi

Who is online

Users browsing this forum: No registered users and 4 guests