freddyliu Hi, I'm looking to use the Bela boards for noise cancellation which requires quite low latency. From what I'm reading online it seems like Bela's analog inputs and outputs can achieve quite low round trip latency down to around 0.1ms. I just ordered the audio expander caplet recently so am still waiting for it to arrive, but I'm testing out the analog inputs with the standard Bela board Rev C for now. Using the latency code found in the tutorial [here] (https://learn.bela.io/tutorials/c-plus-plus-for-real-time-audio-programming/latency/) I am getting a delay of 13 frames (0.3ms) when I'm directly connecting an analog output to an analog input and setting the block size to 2. What else can I do to reduce this latency? Thanks in advance for the help.
giuliomoro freddyliu From what I'm reading online it seems like Bela's analog inputs and outputs can achieve quite low round trip latency down to around 0.1ms That's true only for the Bela Rev B cape (with a AD5668 string DAC), which was discontinued 3 years ago. The Rev C (with a ES9080Q sigma-delta DAC) you got has higher latency because of the larger group delay of the DAC.
freddyliu Thanks for the reply giuliomoro ! Just to confirm, even the analog outputs are using sigma-delta DACs now? So even if I attached the audio expander caplet to the Rev C board I wouldn't be able to get a lower latency?
giuliomoro Correct. Also - if relevant to your application - note that the sampling of the analog inputs (ADS8166) is done via a multiplexer, so the inputs are not sampled synchronously, but there's always a phase difference between them.
freddyliu giuliomoro Is there any way I can get my hands on a Rev B board with the lower latency? Or do you have any other recommendations on what I could do to achieve this lower latency? Thanks again for the help.