Managing and Prioritizing Multiple Audio Channels with ESP32 #1684
-
Grüezi and Hello everyone, I recently came across this discussion where someone faced a similar challenge to what I'm currently working on. I’m working on a project where I need to manage and prioritize three audio channels from three different radios. While high-definition audio isn’t necessary, it’s crucial that the channels are sampled and prioritized correctly. The highest-priority channel should then be output via Bluetooth, essentially creating a multiplexer. To manage multiple channels, I’m considering using three analog Schmitt triggers to monitor the signals and send an "Audio ON" signal to a digital pin. A digital output would then switch the three analog signals to an I2C ADC. The software would handle the switching between the signals, similar to this project: Audio Switcher Arduino. I'm curious if anyone has tackled a similar problem and how it was ultimately solved. Any insights or advice would be greatly appreciated! Any thoughts on this Project? Thanks in advance! Best regards, |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 5 replies
-
Are your radios mono or stereo ? |
Beta Was this translation helpful? Give feedback.
-
The ESP32 has 2 I2S ports, so you can use 2 I2S ADCs. I2S is stereo, so you get max 2 * 2 = 4 audio input channels. Therfore you have also the option to use 2 I2S ADCs and do your multiplexing in software |
Beta Was this translation helpful? Give feedback.
-
For a hardware based analog multiplexer solution: I found this cheap module You could use one to select the input to the audio ADC and one to monitor the volume on each line with the internal ADC which then decides on the input to select. |
Beta Was this translation helpful? Give feedback.
The ESP32 has 2 I2S ports, so you can use 2 I2S ADCs. I2S is stereo, so you get max 2 * 2 = 4 audio input channels.
Therfore you have also the option to use 2 I2S ADCs and do your multiplexing in software