Hey there,
I’m new to the Jetson Nano and want to set up the I2S microphone from Adafruit (SPH0645LM4H), which was quite frustrating so far.
After setting up the Jetson with the commands below, the terminal says it is recording something, but whenever I’m trying to play the sample, there is no sound. When loading the file to Matlab I can see that there are just zeros in the file.
I found this thread where it says how to set up the microphone, but that didn’t work for me.
I used the following Pins on the 40 Pin header:
3V → 3,3V (Pin 1)
GND → GND (Pin 39)
BCLK → Pin 12 (I2S_4_SCLK)
DOUT → Pin 38 (I2S_4_SDIN)
LRCL → Pin 35 (I2S_4_LRCLK)
I configured the I2S Pins on the Jetson Nano, where I selected the microphone SPH0645LM4H.
After that I used the following commands in the terminal:
$sudo grep dap4 /sys/kernel/debug/tegra_pinctrl_reg
Bank: 1 Reg: 0x70003144 Val: 0x00000044 → dap4_fs_pj4
Bank: 1 Reg: 0x70003148 Val: 0x00000054 → dap4_din_pj5
Bank: 1 Reg: 0x7000314c Val: 0x00000015 → dap4_dout_pj6
Bank: 1 Reg: 0x70003150 Val: 0x00000044 → dap4_sclk_pj7
Reset Mixer controls:
$alsactl init tegrasndt210ref
Map I2S4 to ADMAIF1
$ amixer -c tegrasndt210ref sget “ADMAIF1 Mux” amixer -c tegrasndt210ref sget “I2S4 Mux”
Make sure that the 'MVC1 Channels‘ is set to 0
$ amixer -c tegrasndt210ref sget ‘MVC1 Channels’
Record from the microphone
$ arecord -D hw:tegrasndt210ref,0 -r 48000 -f S32_LE -c 1 -d 10 test.wav
The „test.wav“ appears on the terminal but, as I wrote before, doesn’t include any data.
I already configured the microphone on a Raspberry Pi and it was working without any problems.
What could be the problem?
Thanks a lot in advance