Unofficial Volumio3 images (with MyVolumio) for NanoPi Neo, Neo2, Air (with I2S-slave support)

This thread was created to post links and discuss Volumio 3 images (with MyVolumio) for NanoPi Neo, NanoPi Neo2 and NanoPi Air boards. These images are based on a kernel built with Armbian tools and include support the I2S bus in slave mode.
You can set master/slave (default) mode of i2s and tune other interfaces just by edit overlays in armbianEnv.txt.

DISCLAIMER: those images are unofficial, released “as-it-is”. No official support will be provided for those devices, but help from other community members is more than welcome.

Updates will be released from time-to-time, without a regular schedule. They can be applied with OTA update or by flashing the new image on the SD-card.

Big thanks to @Darmur!

NanoPi Neo

NanoPi Neo2

NanoPi Air


New images with up-to-date Volumio backend:




New images with up-to-date Volumio backend:



And new image for NanoPi Neo3 with support SPDIF, I2S without/with external master-clock:
If you want try I2S with external master-clock signal, you can edit armbianEnv.txt and set user_overlays like this:
user_overlays=rockchip-spdif-out-enable rockchip-i2s-external-mclk
By default, external clocks frequencies set to 11,2896M and 12,288M, but you can change it in rockchip-i2s-external-mclk.dts and recompile DTS. Pin GPIO2_A2 used for switching clocks 11,2896M/12,288M, but also may be changed by DTS. Pin I2S_MCLK is master clock input and can’t be changed to other pin.


Hi Nikkov, can this image be used with Tidal music? and if so, do you plan to also post a 3.569 version that supports FLAC?
I would like to change the master clock frequencies in .dts, could you post a little suggestion of how to recompile?

spacibo genialny druk.

here the release 3.569 supporting Tidal Flac

Hi Darmur, thanks for your answer, this is version with external master-clock and SPDIF?

this is the version with Armbian kernel, the kernel package has been provided by @nikkov

I don’t know if it does support external master-clock and SPDIF, let’s wait for his response

I just had a look to his previous post, I confirm the NanoPi-NEO3 image has support for SPDIF and external master-clock.

for the details on how to change the MCLK frequency, let’s wait for his response

Yes, this versions for NanoPi Neo3 can work with external master-clock and SPDIF-out. You can enable/disable this features through armbianEnv.txt (SPDIF enabled by default).
After change some parameter in dts (e.g. master-clock values) you must recompile it:
dtc -@ -q -I dts -O dtb -o rockchip-i2s-external-mclk.dtbo rockchip-i2s-external-mclk.dts

Really thanks Nikkov thanks for string, thanks Darmur, and good new year

Hi NIKKOV, just a small question, I don’t understand how GPIO2_A2 works. Is it out or in? through tidal change from 44.1 mqa to 24/96 but its status does not change, it always remains high. Is the clock switch driven by the NEO3 or does it have to be done externally? Maybe the pin only works if the external clock is active?
thanks and sorry again.

Hi milom,

GPIO2_A2 works as output only with external master-clock and used for switching 48/44.1 generators.

new version 3.703 is available

Nanopi NEO

Nanopi NEO Air

Nanopi NEO2

Nanopi NEO3

1 Like

my PCM 5102DAC with i2S input , But which is the BCK of the NEO3`s gpio .
how to connet DAC and the NEO3 in the I2s ways