Using dynamic microphones with the DAC+ ADC


Using dynamic microphones with the DAC+ ADC

The DAC+ ADC features a stereo analogue input that can be configured for a wide range of input voltages. While it performs best with line-level analogue sources like a CD player, it is also possible to use it as a microphone input.

There are some things you that are important for this.

  1. You can only use dynamic microphones. These are microphones often used for voice recording. Condenser microphones that require a phantom power supply are not supported.
  2. Microphone output voltage is very low. This means you need to further amplify it. Luckily the DAC+ ADC already has the necessary pre-amplifier integrated. You just need to set the jumpers correctly.
  3. The sound from the input won’t by played back automatically on the output. You need to use some software that reads the input and outputs it again.

Check that the DAC+ ADC driver is configured correctly

You will need an updated Linux kernel. You will need at least version 4.18.12. You can check this using the command uname

# uname -a
Linux hifiberry 4.18.12-v7 #1 SMP ...

Now add the line


to /boot/config.txt and reboot. The system should now list the correct card:

# arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: sndrpihifiberry [snd_rpi_hifiberry_dacplusadc], 
 device 0: HiFiBerry DAC+ADC HiFi multicodec-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0


Setting the correct input amplifier settings for a microphone

By default, the input sensitivity is matched for line-level audio sources like the audio output of your mobile phone, CD player or Amazon Alexa. This is doing via a jumper on the J1 header.

To use a microphone, the jumper needs to be set differently as shown in the following picture. Otherwise, the volume would be very low.

Looping the audio input to the output

There is no electrical connection between the input and the output. This means, the input from the connected microphone won’t be played back automatically on the output. So if you want to hear it on the output, you need to tool that handles this. The simple command line tool “alsaloop” can be used for this.
It just takes the input from the default input sound card and outputs it onto the default output.


Without additional options, alsaloop does not display anything on the screen.

Connecting a stage microphone with an XLR output

Stage microphones usually come with a balanced XLR output. The DAC+ ADC does not support this out-of-the-box. However, with many microphones, as simple balanced/unbalanced adapter (XLR/RCA) will work fine:

Last updated: October 4, 2019