0

HifiBerry Digi - OpenElec4

I bought the HifiBerry Digi since my surround system only supports optical/coaxial in (no hdmi). All went fine, HifiBerry is recognized by XBMC after running this via ssh:

cat >/storage/.config/modules-load.d/hifiberry.conf <<EOF
snd_soc_bcm2708
snd_soc_bcm2708_i2s
bcm2708_dmaengine
snd_soc_wm8804
snd_soc_hifiberry_digi
EOF

Green light is burning but my amp signals 'DATA ERROR' on optical and coaxial from the HifiBerry. I tried the Test Image which plays the wav file but no avail:

login as: root
root@192.168.1.41's password:
##############################################
# OpenELEC - The living room PC for everyone #
# ...... visit http://www.openelec.tv ...... #
##############################################

OpenELEC (official) Version: 4.0.4
XBMC:~ # pi@raspberrypi ~ $ aplay -l
-sh: pi@raspberrypi: not found
XBMC:~ # #!/bin/bash
XBMC:~ # kernel=uname -r
echo "Kernel: $kernel"
cat /etc/*-release
echo
echo

echo "Checking drivers"
echo

for i in snd_soc_bcm2708_i2s bcm2708_dmaengine snd_soc_wm8804 snd_soc_hifiberry_ digi; do
f=grep $i /etc/modules
if [ "$f" == "" ]; then
echo $i missing in /etc/modules
XBMC:~ # echo "Checking system"
Checking system
XBMC:~ # echo

echo $i enbaled in /etc/modules
XBMC:~ # uname -a

f=lsmod | grep $i
if [ "$f" == "" ]; then
echo $i module not loaded
else
echo $i loaded
fi

f=grep $i /etc/modprobe.d/*blacklist*
if [ "$f" != "" ]; then
echo $i is blacklisted
Linux XBMC 3.14.5 #1 PREEMPT Wed Jun 4 14:03:32 CEST 2014 armv6l GNU/Linux
fi

XBMC:~ # echo "Kernel: $kernel"
Kernel: 3.14.5
XBMC:~ # cat /etc/*-release
done

for i in drivers/dma/bcm2708-dmaengine.ko sound/soc/bcm/snd-soc-bcm2708-i2s.ko s ound/soc/bcm/snd-soc-hifiberry-digi.ko sound/soc/codecs/snd-soc-wm8804.ko; do
ls -l /lib/modules/$kernel/kernel/$i 2>/dev/null >/dev/null
if [ $? != 0 ]; then
echo module file /lib/modules/$kernel/kernel/$i not found
fi
done

echo "Sound cards"
OpenELEC (official) - Version: 4.0.4aplay -l


NAME="OpenELEC"
VERSION="4.0.4"
ID="openelec"
VERSION_ID="4.0"
PRETTY_NAME="OpenELEC (official) - Version: 4.0.4"
HOME_URL="http://www.openelec.tv"
BUG_REPORT_URL="https://github.com/OpenELEC/OpenELEC.tv"
XBMC:~ # echo

XBMC:~ # echo

XBMC:~ #
XBMC:~ # echo "Checking drivers"
aplay sin1000_48khz.wavChecking drivers
XBMC:~ # echo

XBMC:~ #
XBMC:~ # for i in snd_soc_bcm2708_i2s bcm2708_dmaengine snd_soc_wm8804 snd_soc_h
ifiberry_digi; do
> f=grep $i /etc/modules
> if [ "$f" == "" ]; then
> echo $i missing in /etc/modules
> else
> echo $i enbaled in /etc/modules
> fi
>
> f=lsmod | grep $i
> if [ "$f" == "" ]; then
> echo $i module not loaded
> else
> echo $i loaded
> fi
>
> f=grep $i /etc/modprobe.d/*blacklist*
> if [ "$f" != "" ]; then
> echo $i is blacklisted
> fi
>
> done
grep: /etc/modules: No such file or directory
snd_soc_bcm2708_i2s missing in /etc/modules
snd_soc_bcm2708_i2s loaded
grep: /etc/modules: No such file or directory
bcm2708_dmaengine missing in /etc/modules
bcm2708_dmaengine loaded
grep: /etc/modules: No such file or directory
snd_soc_wm8804 missing in /etc/modules
snd_soc_wm8804 loaded
grep: /etc/modules: No such file or directory
snd_soc_hifiberry_digi missing in /etc/modules
snd_soc_hifiberry_digi loaded
XBMC:~ #
XBMC:~ # for i in drivers/dma/bcm2708-dmaengine.ko sound/soc/bcm/snd-soc-bcm2708
-i2s.ko sound/soc/bcm/snd-soc-hifiberry-digi.ko sound/soc/codecs/snd-soc-wm8804.
ko; do
> ls -l /lib/modules/$kernel/kernel/$i 2>/dev/null >/dev/null
> if [ $? != 0 ]; then
> echo module file /lib/modules/$kernel/kernel/$i not found
> fi
> done
XBMC:~ #
XBMC:~ # echo "Sound cards"
Sound cards
XBMC:~ # aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpihifiberry [snd_rpi_hifiberry_digi], device 0: HifiBerry Digi HiFi wm8804-spdif-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
XBMC:~ #
XBMC:~ # if [ ! -f sin1000_48khz.wav ]; then
> wget http://www.hifiberry.com/files/sin1000_48khz.wav
> fi
Connecting to www.hifiberry.com (91.250.114.49:80)
sin1000_48khz.wav 100% |*******************************| 5625k 0:00:00 ETA
XBMC:~ # aplay sin1000_48khz.wav
Playing WAVE 'sin1000_48khz.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, S tereo
XBMC:~ # aplay sin1000_48khz.wav
Playing WAVE 'sin1000_48khz.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
XBMC:~ #

Is it a defective unit or can I try something else?

7 comments

Please sign in to leave a comment.