Hi All -
I'm pretty new to all of this (BeagleBone, LOGI-Bone, FPGA, etc.) but want to learn.
I have a working setup of a 32x32 LED matrix based on the Ubuntu 13.04 distro and the code, etc... I found here.
Now I would like to add the ability to utilize sound to this setup. An initial idea I have is to sample incoming sound and make the display react to it, perhaps perform a FFT and make the display behave like one of those liner equalizer displays.
I spent a couple of hours trying to get a C-Media based USB sound card to work with Alsa, but have had no success. Got stuck with arecord not being able to set install the hw params of the sound card...
Can someone suggest either an Arduino shield or a BBB cape that will work with this setup? I believe it shouldn't interfere with the signals used by the LOGI-Bone and be recognizable by the BBB, but am not yet well versed in this stuff.
Thanks in advance.
John
Comments
Also, there should be some sound/audio pmods available as well.
i did something quite similar when we designed logi-face (). What i did at the time was to use a usb sound card and i soldered a wire to the the biased audio output on the USB dongle which was then wired to a MCP3008 connected to the FPGA over i2C. The FPGA would then read the MCP3008 and make the face mouth react to sound.
For the pin-muxing, things changed a lot lately, and depending on your kernel version many of the device tree tutorial may not work. In the early day one would design an overlay which was a way to change pins functionality at run-time. Now device tree does not support overlays anymore and any pin-muxing have to be performed at boot time (device tree loaded at boot).
The pins that belongs to the group fpga config pins are used to bit-bang the FPGA configuration protocol but theoretically they could be used by the user when no FPGA configuration is ongoing. The problem is that when the device tree overlay for the logibone is loaded, these pins are considered used and cannot be released for the user. Before device-tree we could use these pins as IO for the FPGA configuration and then switch them back at their initial state after the config is done.
If you want to read the audio from the BBB to then send data to teh FPGA to modify the matrix display, you could hook an i2c ADC to the BBB IOs to sample the audio. The easier way would still be to use ALSA, and i can help with this if you want.