RPI 4 to Yamaha AVR

Nero9

Active Member
Joined
Oct 25, 2012
Messages
297
Points
28
Location
Vijayawada, AP
Hi guys,

I'm trying to connect my volumio RPI to Yamaha AVR (RXV 375), But it's not detecting, it doesn't support AVRs? Anyone help please

Thanks
 
Hi guys,

I'm trying to connect my volumio RPI to Yamaha AVR (RXV 375), But it's not detecting, it doesn't support AVRs? Anyone help please

Thanks
It would make sense to read the owner manual of volumio then you will know for sure if the same can be hooked to the AVR
 
Hi guys,

I'm trying to connect my volumio RPI to Yamaha AVR (RXV 375), But it's not detecting, it doesn't support AVRs? Anyone help please

Thanks
avr hdmi input to rpi hdmi
HDMI on RPI is HDMI OUT. You cannot connect receiver's HDMI to your Pi. What is the chain are you planning?

If you are running Volumio then using HDMI is no use. Try using the USB on the Pi to connect.

MaSh
 
avr hdmi input to rpi hdmi
In it's default configuration, RPI 4 detects HDMI only when a TV is connected to the HDMI port. Only after detection does it route audio over HDMI. Without a TV/monitor connected, the RPI will use DMT mode (digital monitor timing for computers), where it will output DVI and not HDMI. DVI doesn't have audio. To force HDMI output you need the RPI in CEA (Consumers Electronic Association) mode for TVs. To do this you may have to play with few settings in /boot/config.txt.

The answer to all your problems is here in this official documentation https://www.raspberrypi.com/documentation/computers/config_txt.html, but then you will have to RTFM.

Uncomment hdmi_drive=2 in /boot/config.txt and reboot your RPI4. Normally audio should work unless something has modified your /boot/config.txt. I'm not sure how much volumio has messed up with the Raspbian OS by modifying /boot/config.txt. If you can paste the contents, One can figure out why audio is not being sent on HDMI.

In some cases if hdmi_drive=2 in config.txt doesn't work then you might require hdmi_force_edid_audio=1

You haven't given your OS version and whether a I2S or USB dac is connected and if it recognized

For getting the OS version run the following command

cat /etc/os-release

For getting the kernel version, run the command

For getting the audio device capable of playng sound, run the following command


If you want to enable audio using the inbuilt broadcom driver then you have to enable vc4-hdmi in /boot/config.txt.

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d

If the above is there in /boot/config.txt, then running the aplay -l command will give you the following output, which shows audio can either be sent on the HDMI port or the headphone out. This is my RPI without a dac connected and where I'm using the inbuilt mai-pcm-i2s-hifi-0 broadcom driver. You should be able to see and enable this driver if you run the command sudo rasp-config

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 1: vc4hdmi [vc4-hdmi], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7

There are other advanced option to try out one you enable audio over HDMI. Try the below later

audio_pwm_mode​

audio_pwm_mode=1 selects legacy low-quality analogue audio from the 3.5mm AV jack.
audio_pwm_mode=2 (the default) selects high quality analogue audio using an advanced modulation scheme.
NOTEThis option uses more GPU compute resources and can interfere with some use cases.

disable_audio_dither​

By default, a 1.0LSB dither is applied to the audio stream if it is routed to the analogue audio output. This can create audible background "hiss" in some situations, for example when the ALSA volume is set to a low level. Set disable_audio_dither to 1 to disable dither application.

enable_audio_dither​

Audio dither (see disable_audio_dither above) is normally disabled when the audio samples are larger than 16 bits. Set this option to 1 to force the use of dithering for all bit depths.

pwm_sample_bits​

The pwm_sample_bits command adjusts the bit depth of the analogue audio output. The default bit depth is 11. Selecting bit depths below 8 will result in nonfunctional audio, as settings below 8 result in a PLL frequency too low to support. This is generally only useful as a demonstration of how bit depth affects quantisation noise.
 
Last edited:
here's my /boot/config.txt, I don't have any HAT, I just wanted to connect this PI to AVR and play my local music and spotify without connecting to TV.
initramfs volumio.initrd
gpu_mem=32
max_usb_current=1
dtparam=audio=on
audio_pwm_mode=2
dtparam=i2c_arm=on
disable_splash=1
hdmi_force_hotplug=1
force_eeprom_read=0

include userconfig.txt
os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
VOLUMIO_BUILD_VERSION="c87c6e2b1ae33dc5801986cbcbe970898b92e7b4"
VOLUMIO_FE_VERSION="c433755e569617abac52264d17ad61be303ef463"
VOLUMIO_FE3_VERSION="2419ddd8e895c5bdc456962163c9dc7c0f187aa7"
VOLUMIO_BE_VERSION="b949d6001d7e656b4668f31c119d2247cdf45158"
VOLUMIO_ARCH="arm"
VOLUMIO_VARIANT="volumio"
VOLUMIO_TEST="FALSE"
VOLUMIO_BUILD_DATE="Thu 30 Mar 2023 05:45:03 PM CEST"
VOLUMIO_VERSION="3.449"
VOLUMIO_HARDWARE="pi"
VOLUMIO_DEVICENAME="Raspberry Pi"
VOLUMIO_HASH="6428d8e2c06e98483f5c5d77e8f01989"
Kernel version:
5.10.92-v7l+
aplay- l

**** List of PLAYBACK Hardware Devices ****
card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 1: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3

From the default config, i added hdmi_drive=2, which gave me 2 options hdmi 0 and hdmi 1 as output. tried both but still no sound.
 
here's my /boot/config.txt, I don't have any HAT, I just wanted to connect this PI to AVR and play my local music and spotify without connecting to TV.

os-release




From the default config, i added hdmi_drive=2, which gave me 2 options hdmi 0 and hdmi 1 as output. tried both but still no sound.
hdmi_drive=2 is missing in /boot/config.txt. Check if it is present in /boot/userconfig.txt. Also output of userconfig.txt will be helpful.

Add the line hdmi_drive=2 to /boot/config.txt. You can add it anywhere in the file
From the aplay output it is clear that vc4-hdmi is also missing. Add the following lines also

# Enable DRM VC4 V3D driver
dtoverlay=vc4-kms-v3d
max_framebuffers=2

Once you have done that reboot the RPI4. Then do the following to test

1) Now that vc4 driver is enabled run the command
You should get an ouput like this
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 1: vc4hdmi [vc4-hdmi], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 8/8
... text snipped ...

The above tells that there are two devices named hw:vc4hdmi and hw:Headphones. To play on HDMI one has to use the first device. To play on the headpones one has to use the second devices. Now do the following

cd /usr/share/sounds/alsa
aplay -D hw:vc4hdmi Noise.wave

You should get sound on your speakers. Keep the volume low

3) Now I'm not sure what mess volumio has done with the default sound card configuration. Most likely it has not set it correctly to hw:b1 in your case. We will figure that out later after you do step 1 and step 2
 
hdmi_drive=2 is missing in /boot/config.txt. Check if it is present in /boot/userconfig.txt. Also output of userconfig.txt will be helpful.

Add the line hdmi_drive=2 to /boot/config.txt. You can add it anywhere in the file
From the aplay output it is clear that vc4-hdmi is also missing. Add the following lines also



Once you have done that reboot the RPI4. Then do the following to test

1) Now that vc4 driver is enabled run the command

You should get an ouput like this


The above tells that there are two devices named hw:vc4hdmi and hw:Headphones. To play on HDMI one has to use the first device. To play on the headpones one has to use the second devices. Now do the following



You should get sound on your speakers. Keep the volume low

3) Now I'm not sure what mess volumio has done with the default sound card configuration. Most likely it has not set it correctly to hw:b1 in your case. We will figure that out later after you do step 1 and step 2
1687071204921.png
1687071226471.png
1687071266199.png

No sound still. i connected the rpi hdmi to input of avr hdmi 1

here's the config
1687071356425.png
 
View attachment 77724

No sound still. i connected the rpi hdmi to input of avr hdmi 1

The above has given an error. "set_params: 1339: Sample format non available". It means it is not able to play the file at that sample rate.

The volumio build has used a 32 bit old version of raspbian. Remove the vc4 overlay driver from /boot/config.txt and reboot. As per your earlier output you got
card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]

So if you reboot, you will get the above. Try the same commands but with the different sound card device name. And don't use the volumio web configuration. else it will overwrite /boot/config.txt


cd /usr/share/sounds/alsa
aplay -D hw:b1 Noise.wave
 
The above has given an error. "set_params: 1339: Sample format non available". It means it is not able to play the file at that sample rate.

The volumio build has used a 32 bit old version of raspbian. Remove the vc4 overlay driver from /boot/config.txt and reboot. As per your earlier output you got
card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]

So if you reboot, you will get the above. Try the same commands but with the different sound card device name. And don't use the volumio web configuration. else it will overwrite /boot/config.txt
I'm able to play noise now
1687073546977.png

how to set this b2 as my default
edit: it's working now. thanks a lot. changed the output to hdmi 2
 
Last edited:
volumio has set your default device name somewhere.

run the following commands

cd /etc/alsa/conf.d
ls -l

cd
ls -l .asoundrc

ls -l /etc/modprobe.d

ls -l /usr/share/alsa

ls -l /usr/share/alsa/alsa.conf.d
I changed the output to hdmi 2 from web interface and its working
1687074045505.png
 
Now we can tweak the audio settings to sound better? Like camilladsp or any other options you want me to try?
You can try moode. It comes with camilladsp setup page. Also it uses a 64bit and much later version of Raspbian OS compared to other distributions.
 
Join WhatsApp group to get HiFiMART.com Offers & Deals delivered to your smartphone!
Back
Top