Volumio 2 on PINE64/ PINE A64-LTS / SOPINE Compute Module

This thread offers people the opportunity to discuss PINE64/ PINE A64-LTS / SOPINE Compute Module board versions maintained by me.
These images will not be released on the download page.
Anyone willing to help maintaining the PINE64/ PINE A64-LTS / SOPINE Compute Module platform is very welcome.

New images will be built at regular times to follow up on finished Volumio development cycles.
They will also be built on request (if there is appropriate demand for it).

This opening post will hold links to generated PINE A64-LTS / SOPINE Compute Module image versions.
They support a select number of simple I2S DACS.
Tested with the Pine64 DAC POT, a wired ES9023 DAC module and a pcm5121 DAC module.
Most old PI/PI2+ DACs should work (provided they do not need I2C for control).

Image Naming

Images PIne64/Pine64+: pine64plus
Images Pine64LTS/ soPine64: pine64solts

Latest Release

See the Volumio changelog link on the download page


Previous Releases

Fixes 2.863

As 2.861 but added I2S/HDMI/SPDIF to PIne64/Pine64+


Fixes 2.857

Update to kernel 5.7.19
Renaming images




1 Like

volumio-2.166-2017-05-11-pine64.img booting successful but I have a problem with last version for PINE A64:

[ 14.082739] sunxi-ehci 1c1a000.ehci0-controller: USB 0.0 started, EHCI 1.00
[ 14.090354] ehci_irq: highspeed device connect
[ 14.095591] hub 1-0:1.0: USB hub found
[ 14.099696] hub 1-0:1.0: 1 port detected
[ 14.104123] scene_lock_init name=ehci_standby
[ 14.108885] [ohci0-controller]: sunxi_usb_enable_ohci
[ 14.114417] [sunxi-ohci0]: probe, pdev->name: 1c1a000.ohci0-controller, sunxi_ohci: 0xffffffc000c0f868
[ 14.124639] sunxi-ohci 1c1a000.ohci0-controller: SW USB2.0 ‘Open’ Host Controller (OHCI) Driver
[ 14.134170] sunxi-ohci 1c1a000.ohci0-controller: new USB bus registered, assigned bus number 3
[ 14.143615] sunxi-ohci 1c1a000.ohci0-controller: irq 105, io mem 0xffffffc0001a7f3c
[ 14.214851] hub 3-0:1.0: USB hub found
[ 14.218955] hub 3-0:1.0: 1 port detected
[ 14.223365] scene_lock_init name=ohci_standby
[ 14.357468] initramfs: /dev/mmcblk0p2 not detected,retrying mdev in 5 seconds
[ 14.417325] usb 1-1: new high-speed USB device number 2 using sunxi-ehci
[ 14.928255] initramfs: /dev/mmcblk0p2 not detected,retrying mdev in 5 seconds
[ 15.498803] initramfs: /dev/mmcblk0p2 not detected,retrying mdev in 5 seconds
[ 16.069820] initramfs: No partition with /dev/mmcblk0p2 has been found

sure you picked the correct version?

Thank you for your great work.
Does this version support native dsd or dsd over pcm?
I have tested pcm up to 32bit 192khz, they are all good. But i2s has wrong BCLK when sample rates are higher than 96khz. Strangely, my dac just works fine with the wrong BCLK.

my dac board was built of es9028 and i use mcu to control it.

unfortunaly I can only use the driver as available in the current kernel, which is still based on Ayufan’s community work (kernel 3.10.105). So regarding BCLK there is nothing I can do.
The only “remedy” for the time being is resampling.

i will turn to use USB DAC, and hope it works fine.

thank you anyway.

Hello ,
Version 2.383-2018-03-17

If you have time please fix enable Volume Normalization headphones for the used have “hiss” , if i not to enable sound low

Thank !

This seems to be an alsa/driver issue and there have not been any fixes made on this old kernel.
It is as good as it will get, there is nothing I can do about that, sorry.
I’m waiting for a mainline kernel, but that can take a while.

Best alternative for you is a USB DAC with a headphone jack, they will work out-of-the-box and have far better performance than the crappy onboard DAC.

Sorry I remember wrong something please delete this post, thank

Can you post an updated Pine64 compatible build?
I tried this one and it works only if the Pine64 7" LCD module is disconnected, which sucks.

I posted in the Pine64 forum and was suggested to repost here.


Yes, I have followed the discussion, even participated. Volumio for Pine64 works with an HD (1080p) monitor, I have no LCD to test with.
Concluding that there is a Volumio problem because Android works with your LCD is a bit premature, different kernels, it’s like comparing apples and pears, sorry.
We only have the Pine64 community Linux kernel to work with, if that does not work for your LCD then there is nothing much I can do.
Please understand our focus is on audio, non-working peripherals you need to clear with the Pine64 community.

– Gé –

Any chance you could reply there again? They pushed me here. It was working, now it doesn’t. The reason I mentioned the working Android rom install, which I thought was obvious, is that I was making it clear there isnt a hardware problem, but a software one. Volumio linux build is… software.

Also, my question actually was “can you post an updated build”…?

I’m very sorry, believe me, there is nothing i can do at the time being.
To my knowledge there is no newer kernel software. On top, we have no hardware to test with.
Please understand that peripherals on dedicated platforms are not our prime focus, we expect the Pine community to deal with this.
Our aim and contribution to the Pine community is to make audio work with the platform’ s best available options.
When someone can tell what we have to add/ replace to solve your issue, it will be done.

Yeah I get it, its ok. I’ll keep trying, perhaps I missed something. You do remember however on that thread I only ordered the LCD model after confirming with you first that it actually worked (Pine64 + their LCD + Volumio)!

Is the current (volumio-2.383-2018-03-17-pine64) version working with the Add on DAC board?

PS: Just flashed another SD card to Armbian, and after enabling the screen:

Its working fine (on a real Linux, not Android ROM).

Then please go back there and re-read my post. I was VERY specific about what I wrote and tested :open_mouth:

My opinion has not changed, from a Volumio point of view, the kiosk works fine with pine64.
Any information on how to add support for the LCD is welcome.
Myself, I’m not searching for it but promise to add any findings (matching our kernel) to make it work.

As for your posted armbianEnv.txt, that should be an equivalent for out uEntv.txt, you could try adding “pine64_lcd=on” and then add
“gt9xxf_ts” to /etc/modules. No idea if this will help as I don’t know if armbian uses the same uboot (for reading/interpreting uEnv.txt) and the lcd module.

Edit: Extra info: I double checked, driver support for that particular lcd is in our kernel as a module.
So, try to add the uEnv.txt bit and add the module into /etc/modules (just add the line at the end)…
Perhaps someone else with the same LCD can jump in too…


I purchased an ‘ES9023 DAC Audio Decoder I2S’ to hook up to my Pine64, because it is mentioned here as working. Thanks for testing!! Just wondering though how I hook it up in the right way.

On my DAC I see pins +5V, GND, BCK, LRCK, DATA, and MCLK.
I see five I2S pins on the Pine 64: MCK, BCK, DOUT, DIN, and SYNC.

What pins should be connected? Thanks in advance!

Cheers, Roland.

Hoi Roland,

It should work this way (pine64<==>DAC)

GND <==> GND
+5V0 <==> 5V0


Whether you need MCLK connected at all is something you need to try, you will hear the difference immediately.
Don’t connect/ disconnect while running, first poweroff, then connect/disconnect and reboot.


I am writing here so that maybe someone who experienced the same issue with this Volumio build can assure me, that the fault is not in my hardware.

I have tried the Volumio os for SOPine64, and unfortunetely, the audio is extremely distorted.

I am using a custom board (which may or may not be the fault) with a Sabre ES9023 IC with 50MHz master clock.

As this is the only computer I can test the DAC with, I couldn’t manage to edit an Armbian distro to work with the DAC, I tried using this Volumio build and it did not work. The distortion is so extreme that you cannot listen to any music with it.

Maybe there are some tweaks to the OS I could try?

Thank you.

Did you try without connecting MCLK?

I don’t even use the MCLK provided by the SOPINE board. I have a dedicated crystal oscilator with 50MHz frequency on the DAC PCB. So the chip has it’s own MCLK.

BTW: I also wrote you on the Pine64 forum, where one guy was trying to solve connecting an external DAC to the board. (forum.pine64.org/showthread.php … &pid=42950)