Hello Everyone,
I am currently working on a project where I need to record sounds from an I²S MEMS microphone ( http://www.analog.com/static/imported-files/data_sheets/ADMP441.pdf ).
My problem is that I cannot activate correctly the McASP0 module and make it works. I try to do it with a device tree.
Firstly, I deactivated the HDMI and HDMIN virtual capes in the file /boot/uboot/uEnv.txt with the line capemgr=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN
It works well and I can use the normally allocated (to HDMI functions) pins.
Then I tried to reactivate correctly the McASP0 module.
I found the device tree source code of the Audio Cape ( https://github.com/beagleboard/meta-beagleboard/blob/5c4299b3058e3ece763f69f8757f98147a7a1517/common-bsp/recipes-kernel/linux/linux-mainline-3.8/not-capebus/0156-beaglebone-add-dts-for-audio-cape.patch ) and of the HDMI audio virtual cape ( http://hipstercircuits.com/wp-content/uploads/2013/05/cape-boneblack-hdmi-audio-00A0.dts_1.zip ).
When I compile and use the audio cape source code, my beaglebone black detects a playback and a record devices (with the aplay -l and arecord -l commands) but I cannot play anything : it stay blocked after the command aplay aud.wav and I need to use the ^C command.
Besides, I can see on the P9 header pins that no clock is generated. If I try to enable the 2,4MHz oscillator by putting a hight level on pin59, it generate a clock on akclkx (normal because it is the output of the oscillator) but not on aclkx.
When I compile and use the hdmi audio source code, my beaglebone black detects only a playback device and I can play a sound (I see it because the aplay aud.wav command does not block and there is a signal on the P9 header : see the picture).
Finally, I tried to “mix” the two files but I cannot make the recording works.
Can you help me please ?
Thank you.