Allo Boss Dac + Isolator

I am new to RP and Balena. Just put together my RP4 + Allo Boss Dac v1.2 + ISOLATOR V1.2. I powered RP4 from the Isolator and Dac from itself. Airplay works fine but nothing comes out of the RCAs! Any suggestions? I’ve added the BALENA_HOST_CONFIG_dtoverlay for allo-boss-dac-pcm512x-audio. I’ve forced the output to check for DAC. I don’t know what else I need to do! I just checked and nothing comes out of the RP audio jack either! I use the latest version balenaOS 2.73.1+rev1

Define DT parameters “i2c_arm=on”,“spi=on”,“audio=on”

Define DT overlays “vc4-fkms-v3d”

AUDIO_OUTPUT DAC

SOUND_DEVICE DAC

Nothing comes with: dmesg | grep hifi

Log shows the Dac is not found:

24.03.21 22:42:28 (+0000) audio WARNING: No DAC found. Falling back to PulseAudio defaults.
24.03.21 22:42:28 (+0000) audio Setting audio routing rules…
24.03.21 22:42:28 (+0000) audio Routing ‘balena-sound.input’ to ‘snapcast’.
24.03.21 22:42:28 (+0000) audio Routing ‘balena-sound.output’ to ‘0’.
24.03.21 22:42:28 (+0000) audio W: [pulseaudio] main.c: This program is not intended to be run as root (unless --system is specified).
24.03.21 22:42:29 (+0000) multiroom-client 2021-03-24 22-42-29.148 [Error] (Controller) Failed to send hello request, error: Connection timed out
24.03.21 22:42:29 (+0000) multiroom-client 2021-03-24 22-42-29.148 [Error] (Controller) Time sync request failed: Connection timed out
24.03.21 22:42:29 (+0000) audio W: [pulseaudio] server-lookup.c: Unable to contact D-Bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
24.03.21 22:42:29 (+0000) audio W: [pulseaudio] main.c: Unable to contact D-Bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11

root@7713a6f:~# dmesg | grep snd
[ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 bcm2708_fb.fbwidth=0 bcm2708_fb.fbheight=0 bcm2708_fb.fbdepth=16 bcm2708_fb.fbswap=1 smsc95xx.macaddr=DC:A6:32:EC:A5:6C vc_mem.mem_base=0x3f000000 vc_mem.mem_size=0x3f600000 dwc_otg.lpm_enable=0 console=tty1 console=ttyS0,115200 rootwait cgroup_enable=memory root=UUID=ba1eadef-192f-49d4-b5a9-0fb092554bef rootwait
[ 8.869584] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned.
[ 8.978969] snd-allo-boss-dac soc:sound: ASoC: failed to init link Boss DAC: -517
[ 9.018730] snd-allo-boss-dac soc:sound: snd_soc_register_card() failed: -517
[ 9.149658] snd-allo-boss-dac soc:sound: ASoC: failed to init link Boss DAC: -517
[ 9.158356] snd-allo-boss-dac soc:sound: snd_soc_register_card() failed: -517
[ 9.177913] snd-allo-boss-dac soc:sound: ASoC: failed to init link Boss DAC: -517
[ 9.187295] snd-allo-boss-dac soc:sound: snd_soc_register_card() failed: -517
[ 9.195351] snd-allo-boss-dac soc:sound: ASoC: failed to init link Boss DAC: -517
[ 9.203818] snd-allo-boss-dac soc:sound: snd_soc_register_card() failed: -517
[ 9.239670] snd-allo-boss-dac soc:sound: ASoC: failed to init link Boss DAC: -517
[ 9.247499] snd-allo-boss-dac soc:sound: snd_soc_register_card() failed: -517

Ok, I just managed to solve the issue! It was my mistake to remove the Jumper on the Dac, misunderstanding the guide about how to power RP4 and Dac separately!

So changes in the setting below worked for my system.

Device environment variables:
AUDIO_OUTPUT: DAC (Override Auto - Although this might not be nessasry)

Device configuration:
Define DT parameters: “i2c_arm=on”,“spi=on”,“audio=off” (Default was audio on)
Define DT overlays: “allo-boss-dac-pcm512x-audio” (Default was “vc4-fkms-v3d”)

I didn’t need to add BALENA_HOST_CONFIG_dtoverlay as it was suggested in the official guide.

The sound quality is excellent. The only minor issue I have on Airplay is the lag when you change the volume or hit the play. There is a few seconds delay on everything. I don’t know if there is a way to solve this.

Hey @farshad, the delay is expected as far as I understand and it’s required to keep many devices in-sync.

As for the BALENA_HOST_CONFIG_dtoverlay value you are correct that you don’t need to set it manually if you’ve already configured Define DT overlays (they both do the same thing).

Is there anything else we can help you with related to this project? We also happily accept community PRs if you would like to contribute!

Many thanks for your reply, Klutchell. Great work.