I am now using the last Reference Design version (5.2.0beta4), which allows the TALKER or LISTENER Entities to be deactivated.
I am testing the design with 2 LC Boards, either connecting them through a LabX Switch or directly.
I have found out that if I deactivate the TALKER on one of the LC Boards, the LRCLKs are not synchronized anymore (even if there is audio coming out, the LRCLKs are continuously drifting, therefore losing audio samples every now and then).
Nevertheless, if I deactivate the TALKER on the other board (and activating TALKER and LISTENER on the other), the LRCLKs are always phase locked.
That means, the problem is only appearing on one of the boards (always the same).
Finally, I have found out that if I comment the following lines in simple_demo_controller.c, the issue dissappears:
Code: Select all
// If we were previously master clock, restore this on connection to an XMOS talker
if (talker_guid->l < my_guid->l)
{
set_device_media_clock_type(0, DEVICE_MEDIA_CLOCK_LOCAL_CLOCK);
printstrln("Entity elected Master audio clock");
}
Could anyone please explain me why is this happening?
Thanks!