@Mitchell, Also I have a problem with the microphone. The recording is blank, although it is being detected by the “arecord -l” command. Can you check the overlay if it is fine or not? Because I bought a brand new INMP441 microphone and soldered its pins, and still the recording is completely blank, either by “arecord” or by using “sounddevice” library in Python. If you can check it and let me know, I would be grateful.
Problem in Enabling I2C and I2S
As a note this does not work for me as well. The microphone seems to be recognised
radxa@radxa-zero3:~$ arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: inmp441 [inmp441], device 0: fe430000.i2s-rk_codec_digital fe478000.codec-digital-0 [fe430000.i2s-rk_codec_digital fe478000.codec-digital-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
However when trying to capture there is no sound recorded. Additionaly the vumeter displayed at the bottom of this command does not show any input.
arecord -D plughw:0 -c1 -r 48000 -f S32_LE -t wav -V mono -v file.wav
Trying with a stereo recording leads to the same issue
arecord -D plughw:0 -c2 -r 48000 -f S32_LE -t wav -V stereo -v file_stereo.wav
This DTS provided in this post works but with a lot of static noise in the backgound.
The same microphone on a RaspberryPI has no noise so it’s not a microphone hardware issue.
Could you share the DTS used to produce the DTBO above ?
The static noise was likely a wiring issue. I have now an amplifier connected as well and did some rewiring as a result. No more static sound.
Yes, works perfectly and so does the MAX98357 with that same DTS.
View the datasheet only supports the highest S24_LE
and 64
of mclk-fs
, which may help you get a better experience
I’ve changed the DTS and the capture with these new parameters, I couldn’t any meaningful differences. But in any case it is working fine for me.