This guide explains how to enable the HiFiBerry DAC+ audio output on a Raspberry Pi running Batocera Linux, specifically when used with the Argon ONE V3 case. The Argon ONE V3 includes a built-in HiFiBerry DAC+ compatible board that provides high-quality audio output via the 3.5 mm audio jack and RCA outputs on the case.
By default, Batocera does not load the HiFiBerry DAC+ driver automatically. You will need to add the correct device tree overlay to the boot configuration, then select the correct audio output within Batocera's settings menu.
Before you begin, make sure you have the following:
📝 Note: These steps require editing system files on a running Batocera installation. Follow each step carefully. Incorrect edits to
config.txtcan prevent the system from booting correctly.
SSH (Secure Shell) allows you to remotely access the Batocera command line from another computer on the same network.
On Windows (using PuTTY):
192.168.1.74).22 and Connection type is set to SSH.On macOS or Linux (using Terminal):
ssh root@192.168.1.74
Replace 192.168.1.74 with your actual Batocera IP address.
Login credentials:
| Field | Value |
|---|---|
| Username | root |
| Password | linux |
📝 Note: When typing your password in the SSH terminal, no characters will appear on screen. This is normal behaviour — simply type
linuxand press Enter.📝 Note: If you see a security warning about the host key fingerprint (common on first connection), type
yesand press Enter to continue.
Batocera mounts the /boot partition as read-only by default to protect system files. You must remount it as writable before making any changes.
Run the following command:
mount -o remount,rw /boot
If the command completes with no output, it was successful. If you see a permission error, confirm that you are logged in as root.
📝 Note: This remount is temporary and only applies to the current session. The partition will return to read-only mode after a reboot, which is the expected behaviour.
The config.txt file controls low-level hardware settings on the Raspberry Pi, including which device tree overlays are loaded at startup. You will edit this file to enable the HiFiBerry DAC+ driver.
Open the file using the nano text editor:
nano /boot/config.txt
The file will open in the terminal. You can use the arrow keys to scroll through its contents.
📝 Note: Do not delete or modify any existing lines in
config.txtunless you are certain of what they do. Removing required entries can cause boot failures or hardware malfunctions.
Scroll to the very bottom of the file using the arrow keys, then add the following line on a new line:
dtoverlay=hifiberry-dacplus,save
Your addition should appear as a new line at the end of the file, after all existing content.
📝 Note: Make sure there are no extra spaces or characters around the overlay line. Typos in device tree overlay entries will prevent the driver from loading correctly.
Once you have added the overlay line, save the file and exit nano:
nano editor and return to the command prompt.You should now be back at the standard Batocera terminal prompt. Confirm your change was saved correctly by running:
grep "hifiberry" /boot/config.txt
The output should return:
dtoverlay=hifiberry-dacplus,save
If you see no output, the line was not saved correctly. Repeat Steps 3–5.
Apply the changes by rebooting the system:
reboot
Batocera will shut down and restart. Wait approximately 30–60 seconds for the system to fully boot before proceeding to the next step.
📝 Note: Your SSH session will disconnect when the reboot begins. This is expected. You do not need to reconnect via SSH for the remaining steps.
Once Batocera has finished rebooting, you need to tell Batocera to use the HiFiBerry DAC+ as the active audio device.
Built-in Audio StereoSND_RPI_HIFIBERRY_DACPLUS STEREO OUTPUT📝 Note: If
SND_RPI_HIFIBERRY_DACPLUS STEREO OUTPUTdoes not appear in the Audio Profile list, the overlay was not loaded correctly. Return to Step 2 and verify yourconfig.txtedit.
The HiFiBerry DAC+ is now active and Batocera will route all audio through the Argon ONE V3's audio hardware.
bash
ping 192.168.1.74mount command returns a "permission denied" errorroot. The Batocera default root username is root and the password is linux.bash
su -bash
mount -o remount,rw /bootconfig.txt cannot be saved in nano/boot partition is still mounted as read-only.nano without saving by pressing Ctrl + X, then N.bash
mount -o remount,rw /bootconfig.txt again and retry:bash
nano /boot/config.txtSND_RPI_HIFIBERRY_DACPLUS profile does not appear in Batoceraconfig.txt:bash
grep "hifiberry" /boot/config.txtBuilt-in Audio Stereo and Audio Profile is set to SND_RPI_HIFIBERRY_DACPLUS STEREO OUTPUT.config.txtdtoverlay=hifiberry-dacplus,save line from config.txt.dtoverlay=hifiberry-dacplus,saveconfig.txt if you made one before editing (see FAQ below for backup instructions).config.txt or reset audio settings.config.txt:bash
grep "hifiberry" /boot/config.txtThe HiFiBerry DAC+ is a high-quality Digital-to-Analogue Converter (DAC) built into the Argon ONE V3 case. It connects to the Raspberry Pi via the GPIO header and provides superior audio quality compared to the Raspberry Pi's default onboard audio output.
Batocera does not automatically detect or enable third-party audio hardware. The device tree overlay must be manually added to config.txt so that the Linux kernel loads the correct driver for the DAC at startup.
No. This guide only modifies the /boot/config.txt file, which controls hardware initialisation settings. Your games, save files, configurations, and other data stored on the Batocera partition are not affected.
config.txt before editing it?Yes, it is good practice to create a backup before modifying system files. After remounting the boot partition as writable (Step 2), run:
cp /boot/config.txt /boot/config.txt.backup
If anything goes wrong, you can restore the original file:
cp /boot/config.txt.backup /boot/config.txt
| Field | Value |
|---|---|
| Username | root |
| Password | linux |
📝 Note: It is strongly recommended to change the default root password if your Raspberry Pi is accessible on a shared or public network. Run
passwdafter logging in via SSH to set a new password.
No. You can only have one active audio output profile selected in Batocera at a time. To switch between HDMI audio and the HiFiBerry DAC+, go to Main Menu → System Settings and change the Audio Output and Audio Profile settings accordingly. No changes to config.txt are required to switch back to HDMI audio.
This guide is specifically written for the Argon ONE V3 case with its built-in HiFiBerry DAC+ compatible audio board. The dtoverlay=hifiberry-dacplus,save overlay may also work with other standalone HiFiBerry DAC+ HATs, but configuration details may differ for other hardware. Refer to the manufacturer's documentation for other devices.
If your Batocera device gets a different IP address after a reboot, you will need to find its new address before reconnecting via SSH. You can do this by:
Last updated by Argon 40 Technical Documentation Team.