Unfortunately I played this scenario on my proto board andgot perfect omnidirectional response.
I would move your invert block to the signal path with the delay and ensure that the check box is ticked. The "signal merge" block also may not be the best way for you to add the signals. This block includes an automatic attenuation so that two input signals of equal amplitude will result in an output of the same amplitude as each individual input (-6 dB gain for each input with two inputs). A simple sum block should be fine to use instead.
How are you testing the response of this microphone array? Are you able to hear the proper directional response for other configurations, such as cardioid? If you are simply subtracting one signal from another with no delay between the two, you should get complete attenuation for signals with the same time of arrival (i.e, sounds coming from ±90º.
I have a custom build test anechoic chamber with rotational speaker:
I using a spectrum analyzer for tracking a test frequency. For cardioid plot a have 16 cycles delay (at 48 kHz fs) and 18db attenuation at 180 deg.
Do you mean that you have implemented a 16-sample delay in the ADAU1761 to achieve a cardioid pattern? With fs=48 kHz and 21 mm spacing, you should only need a 3-sample delay if you're doing a standard differential endfire array. At what frequency are you measuring the directionality? Am I misunderstanding what you're saying?
Yes, I have placed microphones at 21mm distance and plug them to eval board connector.
For 1 kHz audio frequency at 70dbSPL I need 16 samples delay to create cardio pattern.
There’s one thing: I mount these mics upside down on proto board and hardwired to connector.
Next week I will have actual PCB with soldered microphones and then I will tell you for sure about delays.
Hmmm...it sounds like something isn't set up correctly. With a 48 kHz sampling rate, 21 mm spacing, and 16 samples of delay, you should get something close to an omindirectional response. You can validate this in the beamforming simulator. What sort of response do you get with these settings and only 3 samples of delay? You might want to check that all of your clocks (including the PDM microphone clock) are at the expected frequencies. Is your implementation in SigmaStudio simply a delay and subtraction, like is shown in this image?
You absolutely right, the simulator showing very niceresponds and in real life we can have some deviations from simulations, but notlike that. I checked PDM clock frequency and it’s around 3.077MHzwhat is close to what I expected 3.072MHz.
This is my connection:
It's difficult to see exactly which blocks you're using in your screen shot. Is the second block in the lower signal path a signal invert block? If so, the inversion is not enabled unless you have checked the box in the block. If this is what you're using, then this may explain the responses that you're seeing. For a figure-8 pattern, with no delay, you would see an omnidirectional response if the two mics are in phase (one is not inverted). For a cardioid pattern, the long delay that you're adding may actually just be shifting one of the two signals so that it's out of phase with the other. 16 samples of delay at 48 kHz sampling rate is close to 1/2 the period of a 1 kHz sine wave. You may want to try checking the invert box to see if you get a spatial response closer to what's expected. You may also want to check that you're delaying and subtracting the correct mic for your geometry. You would typically delay the signal from the "rear" mic and subtract that delayed signal from the "front" mic's signal. Here, you have the delay in one path and the invert (subtraction) in the other.
I make suggested changes and got some attenuation (-6db)at 180 deg@1KHz@ 3delay cycles . Again I’mnot sure if my proto board giving me this problems.
I will verify my settings with actual proto board and letyou know about test results.
Retrieving data ...