Dear Team,
Currently we only use 1 PDM MIC SPH0655LM4H-1, but cannot record.
Is it mandatory to connect to PDM_BIT_STREAM0 first?
we are connecting to PDM_BIT_STREAM1 pin.
If we have to connect to PDM_BIT_STREAM0 first, is there any way to fix it without repairing the hardware?
Thanks in advance
Kind regards,
Solved! Go to Solution.
Hello, I hope you are doing well.
It should not be an issue use PDM_BIT_STREAM1 and not PDM_BIT_STREAM0 first.
Is it recognized correctly?
Do you have data signals from the MIC?
Best regards.
Hello, I hope you are doing well.
It should not be an issue use PDM_BIT_STREAM1 and not PDM_BIT_STREAM0 first.
Is it recognized correctly?
Do you have data signals from the MIC?
Best regards.
Hi JorgeCas,
I use the following command:
"arecord -Dsysdefault:CARD=imxaudiomicfil -f S32_LE -d30 -r 48000 capture.wav -vvv"
When I connect the MIC to PDM_BIT_STREAM0, I can record, save the .wav file, and replay it.
but when I connect to PDM_BIT_STREAM1, the error "Max peak (6000 samples): 0x7fffe000 #################### 99%" appears continuously. It appears that audio data is not being recorded
Is there any way to fix it?
Below is the log in 2 cases:
Hello,
I tried to replicate the issue, but I was not able to do it.
Maybe you could try to use plughw, such as:
arecord -D plughw:1,0 -f S32_LE -d10 -r 48000 capture.wav -vvv
Also, could you please try to with a different quality with amixer, for example:
root@imx8mpevk:~# amixer -c 1 cset name='MICFIL Quality Select' 0
numid=9,iface=MIXER,name='MICFIL Quality Select'
; type=ENUMERATED,access=rw------,values=1,items=6
; Item #0 'High'
; Item #1 'Medium'
; Item #2 'Low'
; Item #3 'VLow0'
; Item #4 'Vlow1'
; Item #5 'Vlow2'
: values=0
Best regards.
Hi JorgeCas,
I tried your command, but errors appear
root@imx8mp-lpddr4-evk:~# amixer -c 1 cset name='MICFIL Quality Select' 0
amixer: Cannot find the given element from control sysdefault:1
root@imx8mp-lpddr4-evk:~# arecord -D plughw:1,0 -f S32_LE -d10 -r 48000 capture.wav -vvv
arecord: main:831: audio open error: No such file or directory
I then tried changing the command as follows:
root@imx8mp-lpddr4-evk:~# amixer -Dsysdefault:CARD=imxaudiomicfil cset name='MICFIL Quality Select' 0
numid=9,iface=MIXER,name='MICFIL Quality Select'
; type=ENUMERATED,access=rw------,values=1,items=8
; Item #0 'Medium'
; Item #1 'High'
; Item #2 'N/A'
; Item #3 'N/A'
; Item #4 'VLow2'
; Item #5 'VLow1'
; Item #6 'VLow0'
; Item #7 'Low'
: values=0
root@imx8mp-lpddr4-evk:~# arecord -Dsysdefault:imxaudiomicfil -f S32_LE -d10 -r 48000 capture.wav -vvv
Recording WAVE 'capture.wav' : Signed 32 bit Little Endian, Rate 48000 Hz, Mono
Plug PCM: Hardware PCM card 2 'imx-audio-micfil' device 0 subdevice 0
Its setup is:
stream : CAPTURE
access : RW_INTERLEAVED
format : S32_LE
subformat : STD
channels : 1
rate : 48000
exact rate : 48000 (48000/1)
msbits : 32
buffer_size : 24000
period_size : 6000
period_time : 125000
tstamp_mode : NONE
tstamp_type : MONOTONIC
period_step : 1
avail_min : 6000
period_event : 0
start_threshold : 1
stop_threshold : 24000
silence_threshold: 0
silence_size : 0
boundary : 6755399441055744000
appl_ptr : 0
hw_ptr : 0
Max peak (6000 samples): 0x00fe0900 # 0%
Max peak (6000 samples): 0x00fe0900 # 0%
Max peak (6000 samples): 0x00fe0900 # 0%
~~~( ellipsis)~~~~
Max peak (6000 samples): 0x00fe0900 # 0%
Max peak (6000 samples): 0x00fe0900 # 0%
Max peak (6000 samples): 0x00fe0900 # 0%
root@imx8mp-lpddr4-evk:~#
When running record, it returns all 0%
Is there any way to fix it?
Best regards,
Hello,
Is sound card 1,0 of -Dplughw the same as imxaudiomicfil on your system? The -D plughw:1,0 of my example command corresponds to my list of sound cards and sub-devices detected, you should try with imxaudiomicfil as is showed on your command log of:
arecord -l
The same applies to amixer -c <your mic>
Best regards.
Hello JorgeCas,
My Software team is trying to debug it
Thank you for your support
I would like to temporarily close this topic
Best regards,