swadhin 3 My MUSIC algorithm for AoA estimation is not working.
"Not Working" can mean anything from measurements are roughly correct, but not as accurate as you expect, to output from algorithm is complete garbage to as far as the program simply doesn't run or it crashes before processing is completed.
Have you tested your code with a synthesized data set to verify the algorithm yields the expected output from a controlled (cooked) input data set?
What amount of error are you getting, and under what conditions?
To put things into perspective, a delay error on one of the channels of 20us is equivalent to a microphone positioning error of 1/4 inch, (or about 6mm if you prefer). The maximum 8us error giuliomoro stated corresponds to about 3mm positioning error in the microphone array.
Correct me if I'm wrong, but I doubt your microphone assembly is perfectly accurate to the millimeter, so you might be barking up the wrong tree (at first).
Probably the best way to handle all of these cumulative sources of measurement errors is to calibrate it out of your measurements.
The first thing I would do, though, is to see the algorithm works on cooked data with increasing complexity of synthesized noise and echoes. Then if your hardware implementation breaks that you know it has something to do with your hardware implementation.
The nice thing about Bela is you can add one verification step by using the anolog channel outputs connected to the analog channel inputs for injecting cooked data. That will at least validate your algorithm and Bela as a measurement system in one shot. After that you've narrowed down problems to your mic array.