2- b is i2s2 is set slave mode and script is right and recording is works but still wrong .
Hi nkw3000,
Recording works mean BCLK and FS are sent by external device and received on I2S2 fine.
-
Probe the clocks from external device and ensure that the rates are as expected. Mention yes if they are fine and specify the rates on BCLK and FS
-
Also provide the recording to examine noise while recording text “hello 1 2 3 4”
If a) external BCLK and FS are fine, b) I2S2 is fine (can check with some other working codec) and still noise is seen, the data sent on BCLK, FS and DIN is not as per the default “i2s” mode or something wrong with the level of signals and both point issue in external H/W. For now, you could reply to the above mentioned items
Thanks
Hi atalambedu
I asked HW to review internal board situation and connecting I2S lines to codec directly for testing.
before : [input I2S - TX2’s I2S2 pins → TX2 → TX2’s I2S1 pins - codec]
now : [input I2S - codec]
i will share testing result soon
Hi atalambedu
I tested input I2S directly connect to codec is works good.
So problem is something wrong with I2S2 connection.
Hi atalambedu
i tested changed to i2s2 → i2s1 and result is same but codec speaker is works well and i still dont know why.
input i2s → codec → speaker is ok
input i2s → i2s1 → TX2 is wrong.
change clk by mixer
amixer -c 1 sset 'I2S1 BCLK Ratio' '2' // inputed i2s bclk is 3072000 and make same
amixer -c 1 sset 'I2S1 Mux' 'ADMAIF1'
cat clk_summary | grep i2s1
i2s1_sync_input 0 0 3072000 3072000 0 0
i2s1_sync_clk 0 0 3072000 0 0 0
i2s1 0 0 3071999 3072000 0 0
LR clock is 48000
arecord -Dhw:1,0 -f S16_LE -r 48000 -c 2 -t wav input_testing.wav
loopback test
device → i2s1
Hi nkw3000,
I see amplification and saturation in the recorded waveform via Jetson TX2 I2S1.
Check below points and reply with respect to each
-
Provide clk tree dump during usecase (cat /sys/kernel/debug/clk/clk_summary)
-
The 40-pin header I2S1 operates at voltage level 3.3V by default and 30-pin header I2S2 operates at 1.8V by default.
Ensure that input signals from external device are also at same voltage level as input Jetson TX2 I2S that is used.
Refer https://developer.nvidia.com/embedded/downloads#?search=TX2%20Developer%20Kit%20User%20Guide.
If voltage level does not match, the issues are expected -
I2S1 pins are configured for pull down if pinmux is set via jetson-IO tool. Ensure pull config is same on external device side
Thanks
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.