Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Orange Pi Zero (Problem With Onboard Soundcard)

Featured Replies

Hi Srs!

I have problem in using Armbian 14 with orange pi zero ..

I already used the Armbian system in my OrangepiZero. However, I reinstalled everything again and downloaded the latest version of the operating system here on the site. When I try to use onboard audio (both capture and output) does not work. I have already enabled the analog-codec and it still does not work.

Remembering that I already used the equipment with the Armbian and used the onboard capture of the board perfectly.

 

Thanks!

14 minutes ago, Aurélio Radioamador said:

I have problem in using Armbian 14 with orange pi zero ..

Armbian is at 5.4x now.. :P I think you use Armbian with 4.14 mainline kernel right?

  • Author

Before enabling analog-codec in armbian-config:

# arecord -l

arecord: device_list:270: no soundcards found...

 

After enabled analog-codec in armbian-config:

# arecord -l

**** List of CAPTURE Hardware Devices ****
card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

 

but not play audio and not capture ..

Do you guys have any suggestions on what it might be?

 

Thanks!

  • Author

 

# arecord -L

 

null
    Discard all samples (playback) or generate zero samples (capture)
default:CARD=Codec
    H3 Audio Codec,
    Default Audio Device
sysdefault:CARD=Codec
    H3 Audio Codec,
    Default Audio Device
dmix:CARD=Codec,DEV=0
    H3 Audio Codec,
    Direct sample mixing device
dsnoop:CARD=Codec,DEV=0
    H3 Audio Codec,
    Direct sample snooping device
hw:CARD=Codec,DEV=0
    H3 Audio Codec,
    Direct hardware device without any conversions
plughw:CARD=Codec,DEV=0
    H3 Audio Codec,
    Hardware device with all software conversions

 

do you got (for playback) a /etc/asound.conf with this content?:
 

pcm.!default {
    type hw
    card 0
    device 0
  }
  ctl.!default {
    type hw
    card 0
  }

Did you check with alsamixer the lebel of "Line Out" and "DAC"?

 

  • Author

Before it worked properly with an old version of Armbian, after I updated it stopped working. And now with the Armbian website change I am not finding the download of the old armbian that I used. :(

15 hours ago, Aurélio Radioamador said:

 You are not yet playing the audio on the analog outputs (3.5mm jack).

My audio is comming from the analog audio (3.5mm jack)

 

For recording you could try:

arecord -D plughw:0,0 -f cd ./test2.wav

 

BUT arecord doesnt support natively .flac - so you have to use a longer command from
https://askubuntu.com/questions/490850/arecord-flac-format

 

 

  • Author

Hello Guidol!

 

I try here with  ARMBIAN 5.30 stable Debian GNU/Linux 8 (jessie) 3.4.113-sun8i ...

Now it looks like it worked.

a few more minutes and put the results.

I had the same issue today, with a system working well with xenial but no sound on stretch.

 

The problem was with the wrongly identified active / passive controls, i had to manually adjust the line out volume and enable the line out to get any sound out from the 3.5 jack.

You can use this code to enable the line out on your board:

# enable line out on jack connector (IMPORTANT)
/usr/bin/amixer -c 0 cset numid=4 on
# Set line out volume to maximum (0-31)
/usr/bin/amixer -c 0 cset numid=3 31
# Setting the DAC volume (master PCM channel) (0-63)
/usr/bin/amixer -c 0 cset numid=1 63
# Enable DAC to be routed to output (analog pcm) (on/off)
/usr/bin/amixer -c 0 cset numid=10 on

 

You must also disable the mic1 loopback, otherwise everything coming from your microphone will be forwarded to the line out and you most certainly dont want to do that:

# Microphone settings
#mic1 (internal) volume 0-7
/usr/bin/amixer -c 0 cset numid=7 7
#mic1 CAPTURE switch (on/off) - this will let you use the microphone
/usr/bin/amixer -c 0 cset numid=18 on
#mic1 (input) boost (0-7, 1 recommended)
/usr/bin/amixer -c 0 cset numid=8 1
#mic1 (internal) playback loop switch (direct route to output) (on/off) LEAVE IT OFF to avoid feedback loop between internal microphone and speakers !!!
/usr/bin/amixer -c 0 cset numid=13 off

#mic2 volume 0-7
/usr/bin/amixer -c 0 cset numid=5 7
#mic2 CAPTURE switch (on/off) - this will let you use the microphone
/usr/bin/amixer -c 0 cset numid=19 on
#mic2 boost (0-7, 1 recommended)
/usr/bin/amixer -c 0 cset numid=6 1
#mic2 playback loop switch (direct route to output) (on/off)
/usr/bin/amixer -c 0 cset numid=14 off

# obviously you can disable the capture in either or both of the microphones if you want to have a single source (mic1/mic2/linein)

Simply save it somewhere, make it executable, and insert at /etc/rc.local before the exit 0; line.

I hope someone will find this info valuable.

 

Edited by Gipsz Jakab
corrected some typo and added some comment

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.