Tool/software:
When DS90UB941AS-Q1 is connected to two remote deserializers in splitter or independent mode which have the same physical I2C address, how can they be accessed independently via I2C?
question 1:
I refer to the following article:
https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1073342/faq-ds90ub941as-q1-access-two-deserializers-in-splitter-mode-which-have-the-same-i2c-address?tisearch=e2e-sitesearch&keymatch=FAQ%25252525252525252520941%25252525252525252520Splitter
it mean that like this?
i2cdetect -y -r 4
i2cset -y 4 0x0C 0x1E 0x01 # Sel-Port-0
i2cset -y 4 0x0C 0x5B 0x07 # Splitter Mode 0x07
i2cset -y 4 0x0C 0x03 0x9A # Pass-Through Enabled
i2cset -y 4 0x0C 0x70 0x5C # 941-Port-0 --- 948(0x2E) # 0x2E<<1 Physical Address
i2cset -y 4 0x0C 0x77 0x5C # 941-Port-0 --- 948(0x2E) # 0x2E<<1 alias Address
i2cset -y 4 0x2E 0x00 0x5C #question: this 0x00 it's mean 948 0x00 or 941 0x00?
i2cset -y 4 0x0C 0x1E 0x02 # Sel 941-Port-1
i2cset -y 4 0x0C 0x03 0x9A # Pass-Through Enabled
i2cset -y 4 0x0C 0x72 0x5C # 941-Port-0 --- 948(0x2E) # 0x2E<<1 Physical Address
i2cset -y 4 0x0C 0x79 0x5E # 941-Port-0 --- 948(0x2F) # 0x2F<<1 alias Address
i2cset -y 4 0x2f 0x00 0x9A #question: this 0x00 it's mean 948 0x00 or 941 0x00?
Execution Result:
Another situation:
#!/bin/sh
set -x
i2cset -y 4 0x0C 0x01 0x08 # RESET
i2cset -y 4 0x0C 0x1E 0x04 # Sel 941-Port-0/1
echo
i2cdetect -y -r 4
echo
i2cget -y 4 0x0C 0x03
i2cset -y 4 0x0C 0x03 0x9A # Pass-Through Enabled
i2cget -y 4 0x0C 0x03
i2cget -y 4 0x0C 0x70
i2cset -y 4 0x0C 0x70 0x5C
i2cget -y 4 0x0C 0x70
i2cget -y 4 0x0C 0x77
i2cset -y 4 0x0C 0x77 0x5D
i2cget -y 4 0x0C 0x77
i2cset -y 4 0x2E 0x00 0x5D
i2cset -y 4 0x0C 0x1E 0x02
i2cset -y 4 0x0C 0x03 0x9A
i2cget -y 4 0x0C 0x72
i2cset -y 4 0x0C 0x72 0x5C
i2cget -y 4 0x0C 0x72
i2cget -y 4 0x0C 0x79
i2cset -y 4 0x0C 0x79 0x5E
i2cdetect -y -r 4
i2cget -y 4 0x0D 0x79
i2cset -y 4 0x2F 0x00 0x5E
echo
i2cdetect -y -r 4
i2cget -y 4 0x2E 0x64
i2cget -y 4 0x2F 0x64
i2cset -y 4 0x2E 0x64 0x14
i2cget -y 4 0x2E 0x64
i2cget -y 4 0x2F 0x64
i2cset -y 4 0x2F 0x64 0x12
i2cget -y 4 0x2F 0x64
i2cget -y 4 0x2E 0x64
set +x
The execution result this time includes addresses 2E and 2F
However, when writing and reading back from the addresses of 2E and 2F in the execution result, it appears to be the same address, both belonging to port0, The address and alias of prot1 are not provided.
question 2:
What does this section in the manual actually mean?
question 3:
Can you provide me with a complete example of configuring port 0 and port 1 of 941 to access I2C of 948?
Thanks!