After this question I asked about UMIK, We tried this other mic as a different solution.
The mic is correctly recognized and We are able to record audio and detect ambient noise in it.
Problem is, the recorded audio is clearly distorted. Using a calibrator emitting 94 dB SPL at 1kHz, We detected some samples are lower than what they should be (see image)
Here’s some facts:
- We tried at least 2 Andoer mic and they both present distortion when used on WEC7;
- When they are connected to a PC (Windows 10), recordings are clean, no distortion at all;
- As mentioned, We previously used this UGreen sound card for feasibility tests and it worked fine, it gave us no problem;
- The recordings were made with the provided vcpp_audio_record_demo provided;
Any suggestion? I will gladly provide any additional needed info.
Distortion sampling 94 dB SPL
Distortion signal 94 dB SPL
Distortion sampling >94 dB SPL (it gets worse)
I see various possible sources for this distortion:
- Analog distortion caused by an unstable Microphone power supply.
- Analog distortion caused by EMI
- Software issue distorting the data on the digital side.
To track down the problem I suggest the following:
- Connect the microphone behind an external powered USB hub.
If the 5V supply was the issue, this should be fixed now.
- Use long USB cables and put the hub and the microphone far away from the Colibri board.
If it was about EMI generated by the Colibri or carrier board, this should be fixed now, or at least be reduced.
- Use an USB analyzer and try to locate the sample data. As the distortion repeats quite often and regularely, I hope you should be able to validate whether the distortion is already present in the transmitted USB data
- If it is present, the Microphone generates this “wrong” data
- If not, there is probably a software issue in the audio driver which corrupts the audio samples for some reason.
I performed the tests suggested in points 1 and 2, using an external powered USB hub with long cables to connect the mic and keep it far away from the device.
The distortion is still present.
The mic does not present any distortion when used on a PC. Could you point me to an USB analyzer that I could use to log sample data under WinCE, or how to do this test?
Any updates about the audio driver?
The microphone does not present any distortion when used on any PC so I don’t think USB log could be of much use.
At the moment and tracing this issue on the WinCE Audio driver is quite a time-consuming process. I would like to request you to test with Linux and let us know the feedback. It would help to focus on the issue area.
Programming Linux can be done easily by following this documentation : https://developer.toradex.com/knowledge-base/flashing-linux-on-tegra-modules and USB Audio : https://developer.toradex.com/knowledge-base/audio-(linux)#USB_Audio_Hardware
You need to use USB Hardware Analyzer to log the data for working and not working the case. One such is : https://www.totalphase.com/products/beagle-usb480/
Please let us know if you face any difficulty with this.