Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No I2S signal (output) - probably soft issue #8

Open
acourdavault opened this issue Nov 21, 2017 · 1 comment
Open

No I2S signal (output) - probably soft issue #8

acourdavault opened this issue Nov 21, 2017 · 1 comment

Comments

@acourdavault
Copy link

acourdavault commented Nov 21, 2017

Hello everyone,

I have a little mystery,

I have a BeagleBone Black Wireless with OS
Linux beaglebone 4.9.45-ti-r57 #1 SMP PREEMPT Fri Aug 25 22:58:38 UTC 2017 armv7l

And when I play sound (48kHz 2 channels 32 signed LE WAV) with aplay I have no signal at all on the pin P9-31 (bitclock) nor P9-29, nor P9-28
I have an oscilloscope, to check this

I managed with this board to use the I2s a few weeks back with aplay and even by sending audio to it via bluetooth, but for a reason i don't know it does not work anymore.

I started up fresh from the official image, and so far i've done this:

  • check audio cards with aplay -Land -l (see ouputs below)
  • installed pulseaudio and pulseaudio-module-bluetooth
  • changed default settings to 48000Hz, 2 channels s32le
  • check pactl list sinks and the sink is active when i play audio
  • checked the pactl info (see below)
  • checked that HDMII (video) is working

All settings seems fine, the pin used are:
SData in 2 <=> P9-pin 28
LRClock in 2 <=> P9-pin 29
BClock in 2 <=> P9-pin 31
GND is on P9-45 but i also tried on P9-1 and P9-2

(pinout below for info)
I expect this cabling to be right as it worked in the past...

Can anyone help me?

  • should i reconfigure some pins?
  • Would there be a setting in ALSA that i may have forgotten, or PULSEAUDIO?
  • OR is it likely that my BBB has dead ports? (if so how could i test some other ports maybe to confirm?)

I know the I2S output is shared with the screen output, so i though i would not have to reconfigure pins

details

aplay

debian@beaglebone:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Black [TI BeagleBone Black], device 0: davinci-mcasp.0-hdmi-hifi.0 hdmi-hifi.0-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
debian@beaglebone:~$ aplay -L
default
    Playback/recording through the PulseAudio sound server
null
    Discard all samples (playback) or generate zero samples (capture)
sysdefault:CARD=Black
    TI BeagleBone Black,
    Default Audio Device
dmix:CARD=Black,DEV=0
    TI BeagleBone Black,
    Direct sample mixing device
dsnoop:CARD=Black,DEV=0
    TI BeagleBone Black,
    Direct sample snooping device
hw:CARD=Black,DEV=0
    TI BeagleBone Black,
    Direct hardware device without any conversions
plughw:CARD=Black,DEV=0
    TI BeagleBone Black,
    Hardware device with all software conversions

pactl info

Server String: /run/user/1000/pulse/native
Library Protocol Version: 32
Server Protocol Version: 32
Is Local: yes
Client Index: 28
Tile Size: 65496
User Name: debian
Host Name: beaglebone
Server Name: pulseaudio
Server Version: 10.0
Default Sample Specification: s32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.platform-sound.analog-stereo
Default Source: alsa_output.platform-sound.analog-stereo.monitor
Cookie: f45c:9a98

pinout

image

pin config

debian@beaglebone:~$ config-pin -i P9_31

Pin name: P9_31
Function if no cape loaded: gpio
Function if cape loaded: default gpio gpio_pu gpio_pd pwm spi pruout pruin
Function information: gpio3_14 default gpio3_14 gpio3_14 gpio3_14 ehrpwm0A spi1_sclk pr1_pru0_pru_r30_0 pr1_pru0_pru_r31_0
Cape: cape-universala cape-universaln cape-universalh cape-univ-audio
Kernel GPIO id: 110
PRU GPIO id: 142

debian@beaglebone:~$ config-pin -i P9_29

Pin name: P9_29
Function if no cape loaded: gpio
Function if cape loaded: default gpio gpio_pu gpio_pd pwm spi pruout pruin
Function information: gpio3_15 default gpio3_15 gpio3_15 gpio3_15 ehrpwm0B spi1_d0 pr1_pru0_pru_r30_1 pr1_pru0_pru_r31_1
Cape: cape-universala cape-universaln cape-universalh cape-univ-audio
Kernel GPIO id: 111
PRU GPIO id: 143

debian@beaglebone:~$ config-pin -i P9_28

Pin name: P9_28
Function if no cape loaded: gpio
Function if cape loaded: default gpio gpio_pu gpio_pd pwm spi pwm2 pruout pruin
Function information: gpio3_17 default gpio3_17 gpio3_17 gpio3_17 ehrpwm0_synci spi1_cs0 eCAP2_in_PWM2_out pr1_pru0_pru_r30_3 pr1_pru0_pru_r31_3
Cape: cape-universala cape-universaln cape-universalh cape-univ-audio
Kernel GPIO id: 113
PRU GPIO id: 145

debian@beaglebone:~$ config-pin -i P9_25

Pin name: P9_25
Function if no cape loaded: gpio
Function if cape loaded: default gpio gpio_pu gpio_pd qep pruout pruin
Function information: gpio3_21 default gpio3_21 gpio3_21 gpio3_21 eQEP0_strobe pr1_pru0_pru_r30_7 pr1_pru0_pru_r31_7
Cape: cape-universala cape-universaln cape-universalh cape-univ-audio
Kernel GPIO id: 117
PRU GPIO id: 149
@jadonk
Copy link
Member

jadonk commented Feb 5, 2018

Can you run "perl /opt/scripts/device/bone/show-pins.pl" to get the current pin status?

What is the video resolution?

https://elinux.org/Beagleboard:BeagleBoneBlack_HDMI might be a bit informative. Audio output is only available at certain video resolutions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants