[SOLVED] Alsa doesn't see the boom bonnet kit

Moderators: mdrjr, odroid

[SOLVED] Alsa doesn't see the boom bonnet kit

Unread postby mad_ady » Fri Sep 01, 2017 7:30 pm

Hello all!

I've just received the Boom Bonet kit and tested it on my development C2 and it works pretty well by following the instructions on the Wiki (https://wiki.odroid.com/accessory/sound ... oom_bonnet).

However, I plan on connecting it to a C1+ which runs Ubuntu minimal image and is headless (I will use it in a MPD server). The problem is - once I load the modules, aplay -l doesn't list any sound cards.

I've checked and:
* I have I2S support enabled
Code: Select all
adrianp@spica:~$ dmesg | grep -i i2s
[    8.215221] hdmitx: audio: i2s_to_spdif_flag:1
[    9.529305] enter aml_i2s_dai_probe
[    9.529317] i2s get no clk src setting in dts, use the default mpll 0
[    9.542637] aml-i2s 0:playback preallocate_dma_buffer: area=f04fc000, addr=3c840000, size=65536
[    9.550427] aml-i2s 1:capture preallocate_dma_buffer: area=f050e000, addr=3c860000, size=65536
[   17.404126] card->pinctrl_name:odroid_i2s
[   17.404965] aml-i2s 0:playback preallocate_dma_buffer: area=f056f000, addr=3c900000, size=65536
[   17.409328] odroid_snd odroid_sound_card.5:  pcm5102 <-> aml-i2s-dai.0 mapping ok

* The modules are loaded correctly:
Code: Select all
adrianp@spica:~$ lsmod | grep snd_soc
snd_soc_odroid_dac      5202  0
snd_soc_pcm5102         2933  1

* ALSA seems to see ODROID-HDMI:
Code: Select all
[    9.974307] ALSA device list:
[    9.974310]   #0: ODROID-HDMI

... And yet:
Code: Select all
adrianp@spica:~$ aplay -l
aplay: device_list:268: no soundcards found...


Code: Select all
adrianp@spica:~$ pulseaudio -D
adrianp@spica:~$ pacmd list-sinks
1 sink(s) available.
  * index: 0
        name: <auto_null>
        driver: <module-null-sink.c>
        flags: DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
        state: SUSPENDED
        suspend cause: IDLE
        priority: 1000
        volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        base volume: 65536 / 100% / 0.00 dB
        volume steps: 65537
        muted: no
        current latency: 0.00 ms
        max request: 344 KiB
        max rewind: 344 KiB
        monitor source: 0
        sample spec: s16le 2ch 44100Hz
        channel map: front-left,front-right
                     Stereo
        used by: 0
        linked by: 0
        configured latency: 0.00 ms; range is 0.50 .. 2000.00 ms
        module: 13
        properties:
                device.description = "Dummy Output"
                device.class = "abstract"
                device.icon_name = "audio-card"
Last edited by mad_ady on Fri Sep 01, 2017 7:37 pm, edited 1 time in total.
User avatar
mad_ady
 
Posts: 2577
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2

Re: Alsa doesn't see the boom bonnet kit

Unread postby mad_ady » Fri Sep 01, 2017 7:36 pm

Running as root looks fine:
Code: Select all
sudo aplay -l
**** List of PLAYBACK Hardware Devices ****
Home directory not accessible: Permission denied
card 0: ODROIDHDMI [ODROID-HDMI], device 0: SPDIF PCM dit-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: ODROIDDAC [ODROID-DAC], device 0: PCM5102 HiFi pcm5102-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

So, it must be a permission issue.
My user looked like this:
Code: Select all
adrianp@spica:~$ id
uid=1001(adrianp) gid=1001(adrianp) groups=1001(adrianp),4(adm),20(dialout),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),114(lightdm),115(nopasswdlogin)

And I changed it like this:
Code: Select all
adrianp@spica:~$ sudo usermod -a -G audio,bluetooth,pulse,pulse-access adrianp

After a relogin, I get this:
Code: Select all
adrianp@spica:~$ aplay -l                                                                                                                                                                               [94/94]
**** List of PLAYBACK Hardware Devices ****
card 0: ODROIDHDMI [ODROID-HDMI], device 0: SPDIF PCM dit-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: ODROIDDAC [ODROID-DAC], device 0: PCM5102 HiFi pcm5102-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
adrianp@spica:~$ id
uid=1001(adrianp) gid=1001(adrianp) groups=1001(adrianp),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),30(dip),46(plugdev),113(lpadmin),114(lightdm),115(nopasswdlogin),120(bluetooth),123(pulse),124(pulse-a
ccess)
adrianp@spica:~$ pacmd list-sinks
2 sink(s) available.
  * index: 0
        name: <alsa_output.platform-aml_m8_sound_card.4.analog-stereo>
        driver: <module-alsa-card.c>
        flags: HARDWARE DECIBEL_VOLUME LATENCY
        state: IDLE
        suspend cause:
        priority: 9009
        volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        base volume: 65536 / 100% / 0.00 dB
        volume steps: 65537
        muted: no
        current latency: 92.61 ms
        max request: 16 KiB
        max rewind: 16 KiB
        monitor source: 0
        sample spec: s16le 2ch 44100Hz
        channel map: front-left,front-right
                     Stereo
        used by: 0
        linked by: 0
        fixed latency: 92.88 ms
        card: 0 <alsa_card.platform-aml_m8_sound_card.4>
        module: 6
        properties:
                alsa.resolution_bits = "16"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = ""
                alsa.id = "SPDIF PCM dit-hifi-0"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "0"
                alsa.card = "0"
                alsa.card_name = "ODROID-HDMI"
                alsa.long_card_name = "ODROID-HDMI"
                device.bus_path = "platform-aml_m8_sound_card.4"
                sysfs.path = "/devices/platform/aml_m8_sound_card.4/sound/card0"
                device.string = "hw:0"
                device.buffering.buffer_size = "16384"
                device.buffering.fragment_size = "4096"
                device.access_mode = "serial"
                device.profile.name = "analog-stereo"
                device.profile.description = "Analog Stereo"
                device.description = "ODROID-HDMI Analog Stereo"
                module-udev-detect.discovered = "1"
                device.icon_name = "audio-card"
        ports:
                analog-output: Analog Output (priority 9900, latency offset 0 usec, available: unknown)
                        properties:

        active port: <analog-output>
    index: 1
        name: <alsa_output.platform-odroid_sound_card.5.analog-stereo>
        driver: <module-alsa-card.c>
        flags: HARDWARE DECIBEL_VOLUME LATENCY
        state: IDLE
        suspend cause:
        priority: 9009
        volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        base volume: 65536 / 100% / 0.00 dB
        volume steps: 65537
        muted: no
        current latency: 92.75 ms
        max request: 16 KiB
        max rewind: 16 KiB
        monitor source: 2
        sample spec: s16le 2ch 44100Hz
        channel map: front-left,front-right
                     Stereo
        used by: 0
        linked by: 0
        fixed latency: 92.88 ms
        card: 1 <alsa_card.platform-odroid_sound_card.5>
        module: 7
        properties:
                alsa.resolution_bits = "16"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = ""
                alsa.id = "PCM5102 HiFi pcm5102-0"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "0"
                alsa.card = "1"
                alsa.card_name = "ODROID-DAC"
                alsa.long_card_name = "ODROID-DAC"
                alsa.driver_name = "snd_soc_odroid_dac"
                device.bus_path = "platform-odroid_sound_card.5"
                sysfs.path = "/devices/platform/odroid_sound_card.5/sound/card1"
                device.string = "hw:1"
                device.buffering.buffer_size = "16384"
                device.buffering.fragment_size = "4096"
                device.access_mode = "serial"
                device.profile.name = "analog-stereo"
                device.profile.description = "Analog Stereo"
                device.description = "ODROID-DAC Analog Stereo"
                module-udev-detect.discovered = "1"
                device.icon_name = "audio-card"
        ports:
                analog-output: Analog Output (priority 9900, latency offset 0 usec, available: unknown)
                        properties:

        active port: <analog-output>


So, it should work now. The issue was I was not in the right groups.
User avatar
mad_ady
 
Posts: 2577
Joined: Wed Jul 15, 2015 5:00 pm
Location: Bucharest, Romania
languages_spoken: english
ODROIDs: XU4, C1+, C2


Return to I2S Devices (HiFi Shield DAC and Stereo Boom Bonnet Kit)

Who is online

Users browsing this forum: No registered users and 2 guests