Microphone Array on MATRIX Creator

Usage
Driver installation
Follow the instructions below for allowing your MATRIX Creator to register as a microphone for your Raspberry Pi.curl https://apt.matrix.one/doc/apt-key.gpg | sudo apt-key add - echo "deb https://apt.matrix.one/raspbian $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/matrixlabs.list sudo apt-get update sudo apt-get upgrade
sudo reboot
sudo apt install matrixio-kernel-modules
sudo reboot
Check If Everything Works
Your Raspberry Pi should now treat your MATRIX Creator as a regular microphone. You can test this by using the following commands to record and play a 5 second long audio file on your Raspberry Pi.Be sure to have something connected to the Raspberry Pi's audio output.
arecord recording.wav -f S16_LE -r 16000 -d 5 aplay recording.wav
ALSA Configuration
The microphones can be grabbed using ALSA. Multiple libraries that support ALSA use these configurations to read microphone data with ALSA.
Device name - hw:2,0
Rates(Hz) - 8000 12000 16000 22050 24000 32000 44100 48000
Channels for each microphone - 1 2 3 4 5 6 7 8
Audio Specifications
Sample Rate: 8 to 96 kHz
Bit Depth: Signed 16 bit
Position [x,y] of each mic in the array (mm)
| Mic | X | Y |
|---|---|---|
| M1 | 20.0908795 | -48.5036755 |
| M2 | -20.0908795 | -48.5036755 |
| M3 | -48.5036755 | -20.0908795 |
| M4 | -48.5036755 | 20.0908795 |
| M5 | -20.0908795 | 48.5036755 |
| M6 | 20.0908795 | 48.5036755 |
| M7 | 48.5036755 | 20.0908795 |
| M8 | 48.5036755 | -20.0908795 |
Connection to the FPGA
You can check the physical connection between the FPGA and other components in creator.ucf
| Mic | FPGA pin | PDM_Data |
|---|---|---|
| M1 | P45 | pdm_data<0> |
| M2 | P46 | pdm_data<1> |
| M3 | P47 | pdm_data<2> |
| M4 | P58 | pdm_data<3> |
| M5 | P59 | pdm_data<4> |
| M6 | P64 | pdm_data<5> |
| M7 | P65 | pdm_data<6> |
| M8 | P44 | pdm_data<7> |
| CLK | P47 | pdm_clk |