Al4d4R Posted February 4, 2017 Posted February 4, 2017 Hi all! I have browsing the forum quite while but I did not a solution for my problem. I have bought the OP Zero from DX.com and it came with an expansion board which has two additional USB ports, a 3.5 mm AV socket and a built in microphone. And now I would like to use the audio socket as audio output and I want to use its microphone as well. But I headed some problems and I cannot use its audio features . I am using this kernel: Armbian_5.24_Orangepizero_Ubuntu_xenial_dev_4.9.4 I think there is no audio driver installed on this system. here are some other debug info: aplay: device_list:268: no soundcards found... arecord: device_list:268: no soundcards found... !!All Loaded Modules !!------------------ Module ccm evdev xradio_wlan mac80211 cfg80211 rfkill sun8i_ths cpufreq_dt uio_pdrv_genirq thermal_sys gpio_keys uio Could you please someone help me how to configure the Orange Pi Zero on board audio? Do I need to install any audio driver? If yes, how? If you need any additional information feel free to ask. Thank you!
Igor Posted February 4, 2017 Posted February 4, 2017 Kernel 4.8.4. You are using developing kernel for which we don't provide any end user support. It's meant for developers and testing. On the download page, there is a big red sign: Warning: nightly downloads are automated untested builds and no end user support is provided for them! If you want audio and microphone with this kernel and addon, which is not officially supported yet, you need to write a driver. There is nothing like "install a driver". http://linux-sunxi.org/Linux_mainlining_effort / here you can see how far things are developed You will have more success with old kernel 3.4.113 ... but even there you might need to play with board configuration (/boot/script.bin) switches. Microphone or audio might be disabled on this board, since by default it doesn't have audio connector.
Al4d4R Posted February 4, 2017 Author Posted February 4, 2017 Thank you for your fast response! Unfortunately I have ingnored that red sign... Maybe I will try other kernel if I will be in trouble with the driver. Thanks again! 1
guidol Posted August 24, 2017 Posted August 24, 2017 On 4.2.2017 at 3:12 PM, Al4d4R said: Thank you for your fast response! Unfortunately I have ingnored that red sign... Maybe I will try other kernel if I will be in trouble with the driver. Thanks again! I did try a "official" image from http://www.orangepi.org/downloadresources/ :Raspbian Server - updated: 2017-05-05 which links to http://www.orangepi.org/downloadresources/orangepizero/2017-05-05/orangepizero_e7c74a532b47c34968b5098.htmlOriginal release date was 2016-11-24 with version 0.8.0 ( Raspbian_server_For_zero_H2+_V0_1 ) Its has (as told to me) a "horrible outdated kernel(uname -r : 3.4.39)", but has a working audio-driver for the analog and the (not inclueded) HDMI-Connector: root@OrangePI:~# aplay -l **** List of PLAYBACK Hardware Devices **** card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC sndcodec-0 [] Subdevices: 0/1 Subdevice #0: subdevice #0 card 1: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0see also
Igor Posted August 24, 2017 Posted August 24, 2017 4 hours ago, guidol said: but has a working audio-driver for the analog and the (not inclueded) HDMI-Connector: As all of our images in download section with a label "legacy kernel" which contains kernel 3.4.113 with 100+ fixes on top of horribly outdated 3.4.39, found in stock builds. There is another DEV kernel (currently 4.13), which we are talking about here and that one lacks some basic functions. It is possible that certain features are disabled in board config in our image for Opi Zero. If there is no audio connector on board, this feature might be disabled ... but it can be simple enable back.
guidol Posted August 24, 2017 Posted August 24, 2017 1 hour ago, Igor said: As all of our images in download section with a label "legacy kernel" which contains kernel 3.4.113 with 100+ fixes on top of horribly outdated 3.4.39, found in stock builds. There is another DEV kernel (currently 4.13), which we are talking about here and that one lacks some basic functions. It is possible that certain features are disabled in board config in our image for Opi Zero. If there is no audio connector on board, this feature might be disabled ... but it can be simple enable back. Its fine to read that the kernel 3.4.114 has so much fixes, but with my OPi Zero and the USB/Audio-Expansionboard (plus case) - for me - its getting hotter than the stock kernel 3.4.39. The new kernel from the mainline does not getting so hot like the legacy kernel with fixes. So I will hope & bid for 2 things / possibilities: 1.) include the dynamic cpu-switching like in mainline to the legacy kernel or 2.) include/enable the audio-feature (like in the stock kernel) to the mainline kernel. I think in future much more people will request this feature (for the mainline kernel) , because on eBay they sell the OPi Zero + USB/Audio-Board + Case as a kit:http://www.ebay.co.uk/itm/3-in-1-Orange-Pi-Zero-512MB-Development-Board-Expansion-Board-Black-Case-Kit/142329429602
Igor Posted August 24, 2017 Posted August 24, 2017 12 minutes ago, guidol said: Its fine to read that the kernel 3.4.114 has so much fixes, but with my OPi Zero and the USB/Audio-Expansionboard (plus case) - for me - its getting hotter than the stock kernel 3.4.39. Judging by the scientific method and using an external temperature meter? We invested hundreds of hours into optimising those things (check h3consumtion tool for going deeper with this), while board maker hasn't done anything at all. I am wondering how this is possible since so far we could only find people saying it's running cooler with Armbian than with stock image. There are some troubles with Zero rev. 1.4 and in general this board heat dispersion is bad. Mainline kernel is not ready yet but close. There is no way to speed up the process if you rely on few amateurs doing this.
guidol Posted August 24, 2017 Posted August 24, 2017 1 hour ago, Igor said: Judging by the scientific method and using an external temperature meter? We invested hundreds of hours into optimising those things (check h3consumtion tool for going deeper with this), while board maker hasn't done anything at all. I am wondering how this is possible since so far we could only find people saying it's running cooler with Armbian than with stock image. There are some troubles with Zero rev. 1.4 and in general this board heat dispersion is bad. Mainline kernel is not ready yet but close. There is no way to speed up the process if you rely on few amateurs doing this. Its was a finger-feeling and not a external temperature meter, but I think I found "my problem". First after yor message I did use the internal temperature meter named cat /sys/devices/virtual/thermal/thermal_zone0/temp cat /sys/devices/virtual/thermal/thermal_zone1/temp (not available at Mainline Kernel) So I did try Stock-, Legacy- and Mainline-Kernel: Stock Kernel Linux OrangePI 3.4.39 #2 SMP PREEMPT Mon Nov 21 16:23:11 CST 2016 armv7l GNU/Linux idle 66-67 degree Celsius SanDisk Ultra SDHC 16GB Class 10 Legacy Kernel Linux orangepizero 3.4.113-sun8i #18 SMP PREEMPT Thu Jun 15 02:16:06 CEST 2017 armv7l armv7l armv7l GNU/Linux idle 62-67 degree Celsius Kingston SDHC 8GB Class 4 Mainline Kernel Linux orangepizero 4.11.12-sun8i #1 SMP Wed Aug 23 15:21:32 CEST 2017 armv7l armv7l armv7l GNU/Linux idle 54-58 degree Celsius SanDisk Ultra SDHC 16GB Class 10 As I didnt got a third "SanDisk Ultra SDHC 16GB Class 10" I used a "Kingston SDHC 8GB Class 4" for the Legacy-Kernel. Above we can see that there isnt much difference between Stock and Legacy-Kernel here (in the end 67 degree idle), BUT I must admit that the OPi Zero is getting hotter around the Class 4 Kingston Card against the Class 10 SanDisk Ultra. So my finger-feeling could belong to a hotter MicroSD-Cards rather than to the complete system which is measured from the internal temperature-sensor. I have to check if the Legacy-Kernel would be running cooler if I flash it on the Class 10 Sandisk Ultra. Do you got informations about different temperatures with different MicroSD Cards? I did got this as a problem on my mind. =============================================================================================================== Iam very pleased with the work from the armbian-teams - also for the OPi Zero. I understand to esteem the hard work here while not getting informations from the maker-companys of the boards. For me you are all very cool doing support for single-board-computers which have lost their manufacturer-support sometimes after an initial release. I know the v1.4 doenst seems the best revision of the board in meaning of heat - but I does come with the kit to me If there is the legacy working for me (with a newer MicroSD Card) then there is no problem for me to wait for a great mainline-kernel. And if there will be audio included I will be very happy. The "few amateurs" be certain to do a great job! =================================================================================================================
Dmitry_ Posted December 25, 2017 Posted December 25, 2017 Has the current mainline Armbian 5.36 kernel 4.13.16 no audio drivers too?
Igor Posted December 25, 2017 Posted December 25, 2017 2 hours ago, Dmitry_ said: Has the current mainline Armbian 5.36 kernel 4.13.16 no audio drivers too? Both kernels have audio drivers and on both kernels, audio is disabled by default because there is no audio connector.
guidol Posted December 25, 2017 Posted December 25, 2017 3 hours ago, Dmitry_ said: Has the current mainline Armbian 5.36 kernel 4.13.16 no audio drivers too? You can enable it by yourself armbian-config -> System -> Hardware: select analog-audio with the space-key then SAVE and exit armbian-config and reboot Did work for me
Dmitry_ Posted December 26, 2017 Posted December 26, 2017 I've figured out the problem. If I use out-of-the box 5.35 then I have sound. If I run `apt upgrade` then it updates to 5.36 and the sound does not work there. By the way the `README.sun8i-h3-overlays` file has no words "sound" or "audio" in it. It was not strait forward to figure out that is "audio-codec" is for sound. I've search for this for this words and found nothing. I think you should put them there.
guidol Posted December 26, 2017 Posted December 26, 2017 7 hours ago, Dmitry_ said: It was not strait forward to figure out that is "audio-codec" is for sound. I've search for this for this words and found nothing. I think you should put them there. I have ARMBIAN 5.37.171221 nightly Ubuntu 16.04.3 LTS 4.14.8-sunxi Linux orangepizero 4.14.8-sunxi #58 SMP Thu Dec 21 09:27:04 CET 2017 armv7l armv7l armv7l GNU/Linux and audio root@orangepizero:~# aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 you only have to use the command "armbian-config" and use the menu as I did wrote before
Dmitry_ Posted December 26, 2017 Posted December 26, 2017 Then it might be some other thing I've changed. This is my login screen: Welcome to ARMBIAN 5.36 user-built Ubuntu 16.04.3 LTS 4.13.16-sunxi System load: 0.64 0.16 0.05 Up time: 0 min Memory usage: 13 % of 240MB IP: 10.0.1.1 CPU temp: 29°C Usage of /: 9% of 15G This is my armbianEnv.txt: verbosity=1 logo=disabled console=both disp_mode=1920x1080p60 overlay_prefix=sun8i-h3 overlays=analog-codec i2c0 spi-spidev uart1 uart2 usbhost2 usbhost3 rootdev=UUID=ebe9dacf-124f-486c-b6c1-08749e209374 rootfstype=ext4 param_spidev_spi_bus=1 param_spidev_max_freq=32000000 usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u This is my /etc/modules: g_serial fbtft_device fbtft_device is defined in /etc/modprobe.d/fbtft_device.conf options fbtft_device name=tm022hdh26 buswidth=8 rotate=270 gpios=reset:7,dc:2,led:6 fps=10 busnum=1 width=240 height=320 I have X.org and Qt5 installed and some Python3 libraries. And I also upgraded from 5.35 to 5.36. I think that's all I've changed, as far as I can remember. I also have a RTL8188CUS wi-fi dongle which worked out of the box on the mainline release. When I run `ls -lah /dev/snd` I get total 0 drwxr-xr-x 2 root root 60 Feb 11 2016 . drwxr-xr-x 13 root root 14K Feb 11 2016 .. crw-rw---- 1 root audio 116, 33 Feb 11 2016 timer
guidol Posted December 26, 2017 Posted December 26, 2017 1 hour ago, Dmitry_ said: Then it might be some other thing I've changed. This is my login screen: Welcome to ARMBIAN 5.36 user-built Ubuntu 16.04.3 LTS 4.13.16-sunxi When I run `ls -lah /dev/snd` I get total 0 drwxr-xr-x 2 root root 60 Feb 11 2016 . drwxr-xr-x 13 root root 14K Feb 11 2016 .. crw-rw---- 1 root audio 116, 33 Feb 11 2016 timer You got "ARMBIAN 5.36 user-built" and I got "ARMBIAN 5.37.171221 nightly" my "ls -lah /dev/snd" root@orangepizero:/boot# ls -lah /dev/snd total 0 drwxr-xr-x 3 root root 140 Dec 26 13:07 . drwxr-xr-x 13 root root 14K Dec 26 13:07 .. drwxr-xr-x 2 root root 60 Dec 26 13:07 by-path crw-rw---- 1 root audio 116, 0 Dec 26 13:07 controlC0 crw-rw---- 1 root audio 116, 24 Dec 26 13:07 pcmC0D0c crw-rw---- 1 root audio 116, 16 Dec 26 13:07 pcmC0D0p crw-rw---- 1 root audio 116, 33 Dec 26 13:07 timer there is something missing in your ARMBIAN build Could you try the nightly-version: https://dl.armbian.com/orangepizero/nightly/Armbian_5.34.171121_Orangepizero_Ubuntu_xenial_next_4.13.14.7z and update it to 5.37 via apt update & upgrade? Your other files doesnt show something special. I got only 2 usbhosts active (and cir for infrared): overlays=analog-codec cir usbhost2 usbhost3 On my/this Opi Zero does run my InterNetradio via node.js/NodeRed/NodeRed_dashboard/mpg123/mplayer SO sound is working in the nightly
jgeisler Posted December 27, 2017 Posted December 27, 2017 Hi, I have a similar problem on my OPi zero. I have Welcome to ARMBIAN 5.36 user-built Ubuntu 16.04.3 LTS 4.13.16-sunxi overlays=analog-codec is set but nothing happens, not the silghtest hint what might go wrong in dmesg. But when I do sudo modprobe sun8i-codec-analog sudo modprobe sun4i-codec I get jgeisler@orangepizero:~$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 and jgeisler@orangepizero:~$ dmesg|tail [ 142.801380] sun4i-codec 1c22c00.codec: Codec <-> 1c22c00.codec mapping ok That looks promising, though I have not yet soldered a jack to the pins to see if the audio actually works. What does that tell me? What is going wrong with the overlay?
guidol Posted December 28, 2017 Posted December 28, 2017 11 hours ago, jgeisler said: But when I do sudo modprobe sun8i-codec-analog sudo modprobe sun4i-codec I get jgeisler@orangepizero:~$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 That looks promising, though I have not yet soldered a jack to the pins to see if the audio actually works. What does that tell me? What is going wrong with the overlay? Looks like the overlay is OK, but you only did miss a automatic modprobe (dont know if activating a overlay also enables some modprobe) You could insert the commands in /etc/rc.local or try to put the 2 modules in /etc/modules? sun4i_codec sun8i_codec_analog My demsg is also showing only this one mapping line for the codec, but lsmod shows me for the codec-modules (without manual modprobe): root@orangepizero:~# lsmod Module Size Used by sun4i_codec 32768 3 sun8i_codec_analog 24576 1
jgeisler Posted December 28, 2017 Posted December 28, 2017 Yay, it works. I get audio. Loading the modules via /etc/modules is a good solution. Now I just wonder, what the overlay does. Looking at this source code sun8i-h3-analog-codec.dts, I don't see anything that might load a driver. I thought that is what overlays do: load and configure drivers. Maybe this overlay is incomplete?
VihangaA Posted May 13, 2018 Posted May 13, 2018 On 12/26/2017 at 4:36 PM, guidol said: I have ARMBIAN 5.37.171221 nightly Ubuntu 16.04.3 LTS 4.14.8-sunxi Linux orangepizero 4.14.8-sunxi #58 SMP Thu Dec 21 09:27:04 CET 2017 armv7l armv7l armv7l GNU/Linux and audio root@orangepizero:~# aplay -l **** List of PLAYBACK Hardware Devices **** card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 you only have to use the command "armbian-config" and use the menu as I did wrote before I have Armbian 5.38 I connected pin 8 and 2 (also 7 and 2) in single header of Orange PI Zero. When I execute the command u mentioned above (aplay -l) I get the same results. BTW Master and PCM channels are not in Alsamixer and there was no file called .asoundrc. So I created a one. pcm.!default{ type hw card 0 } ctl.!default{ type hw card 0 } But when I execute speaker-test I get no sound but this. speaker-test 1.1.3 Playback device is default Stream parameters are 48000Hz, S16_LE, 1 channels Using 16 octaves of pink noise Rate set to 48000Hz (requested 48000Hz) Buffer size range from 256 to 262144 Period size range from 128 to 32768 Using max buffer size 262144 Periods = 4 I tried to play a music using aplay song.mp3 but I got, aplay: set_params:1299: Sample format non available Available formats: - S16_LE - S32_LE So how can I sort this out? Thank you
guidol Posted May 13, 2018 Posted May 13, 2018 35 minutes ago, VihangaA said: I have Armbian 5.38 I connected pin 8 and 2 (also 7 and 2) in single header of Orange PI Zero. When I execute the command u mentioned above (aplay -l) I get the same results. BTW Master and PCM channels are not in Alsamixer and there was no file called .asoundrc. So I created a one. But when I execute speaker-test I get no sound but this. I tried to play a music using aplay song.mp3 but I got, So how can I sort this out? Thank you M OPi Zero is now at ARMBIAN 5.44.180510 nightly Ubuntu 16.04.4 LTS 4.14.40-sunxi Linux orangepizero 4.14.40-sunxi #155 SMP Sat May 12 11:12:46 CEST 2018 armv7l armv7l armv7l GNU/Linux aplay -l shows **** List of PLAYBACK Hardware Devices **** card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 Your .asoundrc should be in your homedirectory (mostly then edited as ~/.asoundrc ) or you could place the same entrys in /etc/asound.conf I also didnt get a sound from teh speaker-test, but when I do some "espeak 'Hello' 2>/dev/null" (you have to install espeak with a"apt install espeak") I do hear the voice (the soundsystem is in the first time in "sleep"-mode but you should hear the second try) Pin 2 is GND and Pin 7 is LINEOUT-Right and Pin 8 is LINEOUT-Left You also need an amplified speaker, because the signal is only at Line-Out-Level. for playing a .mp3 install mpg123 (via "apt install mpg123") and then play the .mp3 with mpg123 song.mp3 In my alsamixer the correct ones for the volume are: "Line Out" and "DAC"
VihangaA Posted May 14, 2018 Posted May 14, 2018 22 hours ago, guidol said: M OPi Zero is now at ARMBIAN 5.44.180510 nightly Ubuntu 16.04.4 LTS 4.14.40-sunxi Linux orangepizero 4.14.40-sunxi #155 SMP Sat May 12 11:12:46 CEST 2018 armv7l armv7l armv7l GNU/Linux aplay -l shows **** List of PLAYBACK Hardware Devices **** card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 Your .asoundrc should be in your homedirectory (mostly then edited as ~/.asoundrc ) or you could place the same entrys in /etc/asound.conf I also didnt get a sound from teh speaker-test, but when I do some "espeak 'Hello' 2>/dev/null" (you have to install espeak with a"apt install espeak") I do hear the voice (the soundsystem is in the first time in "sleep"-mode but you should hear the second try) Pin 2 is GND and Pin 7 is LINEOUT-Right and Pin 8 is LINEOUT-Left You also need an amplified speaker, because the signal is only at Line-Out-Level. for playing a .mp3 install mpg123 (via "apt install mpg123") and then play the .mp3 with mpg123 song.mp3 In my alsamixer the correct ones for the volume are: "Line Out" and "DAC" Now it works! Thank you very much! I had to create asound.conf file. Also connected an amplifier to speaker. 1
SergioAiello Posted November 18, 2018 Posted November 18, 2018 (edited) Hi Everybody. I just bought the OrangePi Zero (v1.5) with extension module. I'm wondering howto have line out and mic working. I have following setup and it doesn't work. Welcome to ARMBIAN 5.65 stable Debian GNU/Linux 9 (stretch) 4.14.78-sunxi System load: 0.08 0.02 0.01 Up time: 20:51 hours Memory usage: 12 % of 493MB IP: 192.168.1.18 CPU temp: 39°C Usage of /: 31% of 7.1G Is somebody available to share the most important info to succeed? Many thanks, Sergio Edited November 18, 2018 by SergioAiello
SergioAiello Posted November 20, 2018 Posted November 20, 2018 I just find the clue: from alsamixer GUI 1) <TAB> key to select the proper view and 2) ";" to toggle the mic to "capture". In the past two days I played a lot with alsamixer command but just yesterday got by chance this tricky sequence (also because the FX keys as suggested by alsamixer help do work for me). (to marine1988) The mic works ... pretty well! REPLY
NormaRSpurling Posted January 11, 2019 Posted January 11, 2019 Hey SergioAiello, Can you help me out to resolve it? I tried everything as mentioned here but no help.
thanh_tan Posted September 25, 2019 Posted September 25, 2019 I have successfully make the zero play with the extension via 3.5 audio jack 1. open armbian-config and check into the analogue 2. reboot and check aplay -l shows, it shoud be aplay -l shows **** List of PLAYBACK Hardware Devices **** card 0: Codec [H3 Audio Codec], device 0: CDC PCM Codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 3. create file .asoundrc in home directory put this in pcm.!default{ type hw card 0 } ctl.!default{ type hw card 0 } 4. type alsamixer and make sure that the M and O like this 5. speaker-test -twav -c2 -Dhw:0 and the sound plays Front Left Front Right 1
jarocho Posted January 23, 2020 Posted January 23, 2020 Hola thanh_tan Can you share the connection diagram on the Organge Pi board for the 3.5mm connector, please
Recommended Posts