Hi Aldo,
So I managed to switch the I2C lines and I have noticed that whats appearing on the scope seems to be different now. It appears as though the RTC device is showing some kind of ACK, however i m still a little confused. I m not seeing data on the rx buffer. But it seems that for some cases, whats on the scope looks good. I tested running the MasterReceive function for the year value and the second value because I know that the year will be a fixed value and the seconds will be a changing value. When I use the receive function for the year register(0x07) I can the following,

The reference from the previous record taken in white is the same. When I used the receive function for the seconds register, the reference from the previous measurement changes, shown below. So I m assuming that the RTC is responding.

A basic test with the adi_I2C_MasterSlaveLoopback function seems to show that the ACK is low which is as expected. eg

I m still trying to figure out why nothing is appearing in my receive buffer. The code to do this was as follows,
int main (void)
{
ADI_I2C_DEV_HANDLE hDevice;
uint16_t slaveID = 0x51;
uint16_t bytesRemaining, bytecount;
SystemInit();
test_Init();
tx[0] = 0x07;
SetSystemClockDivider(ADI_SYS_CLOCK_PCLK, 16);
SetSystemClockDivider(ADI_SYS_CLOCK_CORE, 16);
adi_I2C_MasterInit(ADI_I2C_DEVID_0, &hDevice);
adi_I2C_RegisterCallback(hDevice, cbHandler, hDevice);
adi_initpinmux();
adi_I2C_SetMasterClock(hDevice, MASTER_CLOCK);
adi_I2C_SetBlockingMode(hDevice, false);
adi_I2C_MasterReceive(hDevice, slaveID, 0x07, 1, rx, 3, false);
adi_I2C_UnInit(hDevice);
}
Thanks,
Ronan