Skip to content

Navigation Menu

Sign in
Sign up

Hi, are the pots working fine? I have tested to connect 8 pots via a analog-multiplexer ... #12

Answered by copych
ErichHeinemann asked this question in Q&A
Discussion options

Hi CopyCH, as we do not have a lot of free GPIOs, i allways try to use I2C-Multiplexer or in this case I tried to use a Multiplexer like Marcel Licence uses ... it seems that any additional task ruins the audio-quality.
Therefore, my question as I did not check Your solution with the 3 Pots.
if all should run on one single ESP32, then there is a dirty solution, - I moved all code for Audio to the Core1 and Core0 does all the controls like Buttons, Pots and perhaps Display. The bad side, the audio is only "acceptable" by 34500 KHz, at 44100 it is bad again. Perhaps it makes sense to split the project into 2 cores to get best quality and more functions if we cannot fix that.

You must be logged in to vote

Hi @ErichHeinemann thanks for the attention! In fact I have started testing ESP32 sound synthesis abilities from your forked Marcel Licence drum sampler.
About the pots: I myself have successfully tested 5 pots directly connected to the GPIOs.
About multiplexing: I think that running I2C bus is time-consuming itself, while simple (like CD74HC4067) analog multiplexer's routine should "fit between" the audio tasks.
About the multithreading: I already use both Core0 and Core1 for synthesis and FX and mixing, so there's almost equal core loading.
You can check the output with #define DEBUG_TIMING to have an idea on how mush does it take to generate, process and mix.
Routines are quite optimiz...

Replies: 1 comment

Comment options

Hi @ErichHeinemann thanks for the attention! In fact I have started testing ESP32 sound synthesis abilities from your forked Marcel Licence drum sampler.
About the pots: I myself have successfully tested 5 pots directly connected to the GPIOs.
About multiplexing: I think that running I2C bus is time-consuming itself, while simple (like CD74HC4067) analog multiplexer's routine should "fit between" the audio tasks.
About the multithreading: I already use both Core0 and Core1 for synthesis and FX and mixing, so there's almost equal core loading.
You can check the output with #define DEBUG_TIMING to have an idea on how mush does it take to generate, process and mix.
Routines are quite optimized, float division is almost eliminated, most of more or less complex functions are in tables now, so there's not much "room" left.

You must be logged in to vote
0 replies
Answer selected by copych
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet

AltStyle によって変換されたページ (->オリジナル) /