This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DS90UB949-Q1: DS90UB949-Q1: Script to read and write from a Remote slave connected to Deserializer DS90UB926

Part Number: DS90UB949-Q1
Other Parts Discussed in Thread: ALP

Hello, I am using DS90UB949 Serializer - EVM and a  DS90UB926 - Deserializer for one of my project.

I am trying to communicate to a remote slave (MCU) connected to the Deserializer DS90UB926 Via ALP Scripting.

My Serializer ID is 0x18, Deserializer ID is 0x5A and Remote Slave MCU ID is 0x6C.

I am using ALP application scripting and configured the serializer registers to be,

board.WriteI2C(0x18, 0x03, 0xDA)
board.WriteI2C(0x18, 0x07, 0x6C)
board.WriteI2C(0x18, 0x08, 0x6C) 
When trying to read from Deserializer, I am getting correct response
val = board.ReadI2C(0x5A, 0x00, 1)
print hex(val)
Result: 0x5A
But when I try to read from Slave MCU, I need to get '0x01' as response but I am getting NACK signal in logic analyzer and output as '0'.
val = board.ReadI2C(0x36, 0x10, 1)
print hex(val)
Result: 0
 
I tried to connect the MCU separately with I2CAnalyzer tool, there its working properly. 
I need to know, do we have to configure any other registers either in Serializer or Deserializer side before accessing the Slave MCU.
If possible, Please prove ALP scripting code.
 
Thanks!