Alexei 0 Posted June 3, 2021 Hello there. We are trying to use the tinkerboard as an ADC connected via Ethernet. We are using tinker os (debian). Аn electrodynamic microphone is connected to jack 3.5 . The sound card driver successfully detects the microphone and allows audio recording from it. The problem is that the amplitude of the input signal is too high and distorsion is observed. As you can see in the picture below. Usually this problem is solved by reducing the gain of the analog amplifier of the sound card. However, if you adjust the microphone gain via "pulse audio" or "alsa", the amplitude is reduced, but the distortion remains. This means that the gain control is done digitally. Those. the resulting amplitude is simply divided by some coefficient But this behavior is wrong. All sound cards have a controllable amplifier before of the ADC. OS gain control should use it to control input gain. I'm not very good at Linux programming, but it seems to me that this is a bug in the sound card driver. Or it is necessary to use some other library to access the gain. Or it is necessary to adjust something in the OS itself so that the gain works correctly. The question is what needs to be done to use the analog preamplifier of the sound card? Thanks for attention Share this post Link to post Share on other sites
Frank3_Wu 2 Posted June 4, 2021 Hi Alexi, What sku of Tinker you used? is Tinker Board /S or Tinker Board 2/S or others. Share this post Link to post Share on other sites
Alexei 0 Posted June 4, 2021 5 hours ago, Frank3_Wu said: Hi Alexi, What sku of Tinker you used? is Tinker Board /S or Tinker Board 2/S or others. Share this post Link to post Share on other sites
Alexei 0 Posted June 9, 2021 Hello The problem was solved using the console program alsamixer. alsa uses analog gain amplifier. Share this post Link to post Share on other sites