Support for WM8731 DAC?

Hi,

I’m only discovering this wonderful project now. I don’t have a factory i2s DAC hat nor a spare Raspberry Pi on hand (they’re so hard to find right at a right price now), but I have this device (picture below) that I made a couple of years ago for a different project, which runs on a PI3B+ and features a custom audio IO board, so I figured I could try Volumio on it.

So, I flashed a micro SD with Volumio OS 3, accessed the hotspot and config wizard but there was no option for my DAC, which is a Wolfson WM8731. I followed the procedure on [adding compatibility to my DAC] page, rebooted, but it is still not showing in the list of i2s devices available in the web interface / settings.

_

In more details, I ssh to the PI with a terminal and edited the following file:

sudo nano /volumio/app/plugins/system_controller/i2s_dacs/dacs.json

and added the following line to the RPI section

{"id":"wm8731","name":"WM8731","overlay":"rpi-proto,i2s-mmap","alsanum":"2","mixer":"","modules":"","script":"","needsreboot":"yes"},

The dtoverlay I used to add to config.txt for my DIY device for the WM8731 is rpi-proto and as far as I remember, the PI didn’t need anything else, but I’m not so are anymore.

Am I editing the wrong file ? Or can I override the dtoverlay manually in config.txt ?

_

Any help appreciated ! I hope I can use Volumio directly on this device, I don’t really want to dismantle the prototype, but if I need to, I 'll get a Hifiberry DAC or something directly supported. Also, please forgive me if I’m posting in the wrong category, I really was not sure where to ask for help, here or in the DIY category…

Thanks :slight_smile:

Edit: I’ve found this post who might come in handy. Will try a variant tomorrow maybe [GUIDE] Wolfson Cirrus Audio Card / Raspberry Pi 1 - Modell B V2011.12

I got it working:

in the dacs.json file, I added the alsacard name AND number:

{"id":"wolfson8731","name":"Wolfson_WM8731","overlay":"rpi-proto","alsanum":"2","alsacard":"sndrpiproto","mixer":"","modules":"","script":"","needsreboot":"yes"},

and in /boot/userconfig.txt I added dtoverlay=rpi-proto which corresponds to the WM8731

:white_check_mark: The audio card now appears in the settings page and I have audio out.

:orange_circle: The only downside is that I can’t get the hardware mixer to work, no matter which option I choose from the dropdown list: Master or Output Mixer Hifi.

I may have to modify asound.conf or something. I don’t know yet.

try to run alsamixer, then select your soundcard with F6

you should be able to try on the fly what control makes the volume changing

1 Like

Thanks for your reply @Darmur That’s a good call!
In alsamixer, I’ve realized I can only mute or unmute the “output mixer hifi” on this card.

Re-reading the documentation for the wm8731 and from the following diagram, it makes sense now.
I can only control the volume on the headphone output. I completely forgot that.

The Master controls the volume of the headphone output. So I’ve now simply plugged my audio device to the hifi using the headphone output instead of the main L & R. In Volumio, I set the mixer to Master and the problem is solved, I can control the volume from the web interface.

2 Likes

glad to hear that!