Could you please let me know the following:
1. What is the slave address of the Multi-Master Slave component and the slave address of the device you are trying to address?
2. Can you try the UDB implementation and see if this issue persists?
3. I'm able to get all the mode constants. Can you try to clean and build your project once again?
4. Can you please share your project file so that we can try to reproduce your issue from our side?
Thanks for responding Bragadeesh. I did do a clean and rebuild but the compiler still reports that I2C_MODE_COMPLETE_XFER is undefined.
However I have moved past this problem. I am using the lower level API calls now and the master-slave is working ok as far as I have been able to test. I have to get some hardware changes done before I can test everything.
But now I have a new issue. The I2C bus has 2 masters on it, the PSoC 5, and a PIC processor. Both masters are set for multi-master mode. Now I have never used a multi-master setup before so maybe it does not work like I expect but I have not found any documentation to show otherwise. What I expected is that both masters would be able to access the bus at about the same time, and the one that tried second would detect a collision and wait to try later (or report the collision and then allow me to program a retry). But what is actually happening is that when both masters attempt to communicate at once, the PSoC 5 locks up the I2C bus by holding the SCL line low. Nothing will work then until reboot.
Both masters have no problem communicating on the bus with the various slaves until they both try at once.
So I wonder what am I doing wrong....
That will take some time. I cannot send the project due to security issues. I must put together a test project to demonstrate the problem, and of course that is a good idea anyway. But I am buried in other work right now and so it may be a week before I can get to it.