I am currently working on a project involving some audio processing. An analog to digital stereo converter that can sample at 96k with 24-bit resolution is being used in conjunction with an external microphone to get digital audio data. This converter outputs data using the I2S bus specification (three pins: clock, word select, and data). My goal right now is to get the data outputted from this external ADC onto the BBB and stored in a file. My understanding is that the BBB supports I2S through the usage of HDMI. Is it possible to do what I want using the built in HDMI chip? If so, could you point me in the right direction to get this working? Or will it be easier to write my own code to interface with I2S using three GPIO pins?
A couple of years ago I designed and prototyped with the original BeagleBoard a single channel 24-bit, 192 kS/s high-quality audio DAC and an I2S driver for it. Works great.
The design is based in the TI PCM1792A chip
I am now planning to make it even better but have a few more urgent projects ahead of it.
I also designed a 24-bit, 192 kS/s single channel audio ADC board with a phantom microphone power connection.
Built a few boards but never had the time to test them. The design is based on the AKM AK5294A audio ADC.
Both boards use the expansion pins of the original BB and a few software tricks to get the necessary speed.
I am willing to join a project aiming to 20+ bit real life performance in digital audio.
Thanks for answering!
My goal is use the TI pcm1803 (i have this board) to capture 24 bit audio @48/96 kHz (the source will be a mems microphone).
My doubt lies with the software, specifically I2S drivers.
So i would like to know if i can use the same modules that my BeagleBone Audio Cape uses to capture the digital audio
or i’ll have to write a driver just as you did.