Banana Pro - I2S interface

13 15428
Hi !

I'm working with the Banana Pro board as an Hifi Music Player. Right now i'm using the Lubuntu Image with MPD and my external USB DAC.
--> Work perfect up to 192 kHz/24 bit - MP3, Flac, ....

For my next steps i'd like to have an external SPDIF Interface directly on the board. I saw that there is an I2S and a SPDIF Interface available on the GPIO headers. Has anybody tested these interfaces ? I'd like to use the Digi+ Interface Board from Hifiberry https://www.hifiberry.com/digiplus/ I think this work with I2S, but i'm not sure what is needed on the kernel/driver side to support it.

Is there native Support for I2S Expansion boards in any of the Linux Distribution available for Banana pro ?

Thanks for any help or ideas.

I also hope some expert can make use of the I2S.

Edited by MusicMonkey at Thu Jan 15, 2015 10:00

At the moment i'm busy trying to install Volumio-WebUI on Bananian 1.5 .... but there some problems, still. I think after this I will just order the Hifiberry Board and test is by myself ;D

Edited by Alchemist at Sat Jan 17, 2015 05:39

I think using the I2S Interface is not that easy. It is not possible to use the HifiBerry interface as it is, because the GPIO Pinout differs from the PI.
The next thing is that you have to use (build)  Kernel Modules to get the I2S Soundcard working.
I would suggest to make some Test with this card:
http://www.ebay.de/itm/Audiophon ... hash=item2c84b085f7

This Image  http://www.igorpecovnik.com/2014/09/07/banana-pi-debian-sd-image/ should has got I2S enabled (although it is for the normal Banana Pi, all Things apart from Wlan should work, take a look at my comments from the 24 October 2014)
I am not an owner of the Pro , so I can not test these things.

Regards, good luck.

Edited by MusicMonkey at Tue Jan 20, 2015 08:14

Good Idea ! But I need - for my small project - digital audio out. So i'll focus on that.

I compared the bananian fex file and the cubiboard fex file - because the boards are very similar and saw a main difference in

i2s_used = 0  # Cubiboard here sets 1

spdif_used = 0  # Cubiboard here sets 1

Does anybody know if these settings e.g. tell the kernel or uboot which interface to use/support?

I'll try to change these settings and see if I can load the kernel moduls for I2S and SPDIF .... if this is working i'll start thinking about add hardware.

@Alchemist: GPIO pins can be re-patched easily .... as i'm a hardware guy, this is little effort, but a missing driver is hard

Did you try to connect a DAC to Pin Cons6-P33 this should be SPDIF Out; what is the output of:
aplay -l



After setting spdif_used = 1 and re-compiling script.bin i could load the following kernel modules:
modprobe sndspdif  sunxi_sndspdif  sunxi_spdif  sunxi_spdma (this brought errors before)

Now i have aplay -l :

card 3: sunxisndspdif [sunxi-sndspdif], device 0: SUNXI-SPDIF sndspdif-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Tomorrow i will do some measurements and then connect my DAC for testing

Edited by MusicMonkey at Thu Jan 22, 2015 14:09

OK, things are working out:

I connected:

  CON6-33     ----||-----330ohm-- --------- coax S/PDIF signal out
     in                                   100ohm                                      -----> Cinch to DAC IN
CON6-34 ---------------------------- ----- coax signal ground

And now i can listen to 192 kHz/24bit FLAC files on BananaPro+DAC !!! Costs: 4 peaces of wire, 2 resistors, 1 capacitor and an old cinch cable
I think i'll do a little board for this with Coax and Toslink connecting.

Next test with an DAC extender board connected to banana pro ;)

This is cool following this thread closely

Is there a documentation to the I2S pins on the header somewhere? Could you post a link?

You have to log in before you can reply Login | Sign Up

Points Rules