search
top

How To Fix RetroPie 4.7.1 No Sound 3.5mm Jack In EmulationStation

How To Fix RetroPie 4.7.1 No Sound 3.5mm Jack EmulationStation

Introduction

Recently I started a project on creating an arcade using a Raspberry Pi 3 B+ with RetroPie and ran into an issue in getting the 3.5 mm headphone jack to work for the sound output. This was mentioned in the RetroPie Release Notes for 4.7.1. Through searching I found bits and pieces to rectify the issue. In this post we will see how the issues was resolved.

Fix at the OS Level

First issue to resolve was setting the Raspberry Pi OS to set the default sound interface to the headphone jack.

To find out what the default sound device is set to we use the aplay command. I noticed the default card listed is HDMI and I wanted 3.5 (Headphone).

pi@retropie:~$ aplay -L

aply output

Next step is to get a listing and details that the OS sees. Execute the command:

pi@retropie:~$cat /proc/asound/cards

retropie soundcards

From the output we see device 1 is the headphones output. We can now tell ALSA that the PCM device default is device 1.

Next, create /etc/asound.conf

pi@retropie:~$cd /etc
pi@retropie:~$sudo nano asound.conf

asound conf

Add the following and save the changes.

defaults.pcm.card 1

Fix EmulationStation Issue Correction

A recent change in kernel/firmware for the audio system on the Pi changes the names of the cards and devices which causes a naming mismatch between the OS and EmulationStation.

Emulationstation was still using HeadphoneS (plural) but ALSA Mixer was using Headphone (with no “S”)

To correct this, edit /opt/retropie/configs/all/emulationstation/es_settings.cfg and set AudioDevice to Headphone.

pi@retropie:~$sudo nano /opt/retropie/configs/all/emulationstation/es_settings.cfg

Make the following changes.

<string name="AudioCard" value="default" /> 
<string name="AudioDevice" value="Headphone" />

asond conf content
Last step add this code to the /boot/config.txt and tell the OS to not use HDMI for sound.

pi@retropie:~$ sudo nano /boot/config.txt
# Pretends no audio formats are supported by HDMI display, forcing all sound out the 3.5mm headphone jack.
# May not be needed for all HDMI devices
hdmi_ignore_edid_audio=1

Boot config

Restart the system and you will now have sound.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

top