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.

DS90UB954-Q1EVM: DS90UB953 registers are not available

Part Number: DS90UB954-Q1EVM
Other Parts Discussed in Thread: ALP

Hi,
I am using the DS90UB953 and DS90UB954. And I want to access the registers DS90UB953 which is connected to DS90UB954 via coaxial cable. DS90UB954 is connected to Jetson TX2 via i2c bus, etc.
Using i2cdetect I found DS90UB954 at 0x30. I can read registers with i2cdump (or i2cget) and write with i2cset, it works with DS90UB954, but I can't access DS90UB953 registers because it doesn't display i2cdetect. i2cdump can't read anything at 0x18 or 0x60.
Here is a listing of the script with which I tried to configure DS90UB954:
# Set up IDs
UB954 = 0x60
UB953ID = 0x30
UB953 = 0x18
OVTID = 0x60
OVT = 0xC4

# Set up Port0
board.WriteI2C(UB954, 0x4C, 0x01)

# Set up Back Channel Config (0x58)
board.WriteI2C(UB954,0x58,0x5E)

# Set up SER ID
#board.WriteI2C(UB954,0x5B,UB953ID)
# Set up SER Alias ID
board.WriteI2C(UB954,0x5C,UB953)

Maybe someone can tell me where I'm making a mistake, thanks.

  • Good afternoon,

    I tested your register configuration on the scripting tab with a 954. I was able to write to the serializer registers using the command “board.WriteI2C(0x18, addr, reg)”. Similarly, you should be able to read registers on the 953 with “board.ReadI2C(0x18, addr)”.

    Regards,

    Carrie

  • Hello, thank you for the answer.
    So I can read registers using board.ReadI2C (0x18, addr) while in ALP, but I can't read registers from Jetson TX2. When I run the "i2cget 0x18 addr" command, I get: "Error: Read failed"
    Also when using ALP, the registers on the Remoute Registers tab do not always match those obtained with board.ReadI2C (0x18, addr).
    Thanks.

  • Hello,

    Try setting the AUTO_ACK_ALL and the I2C_PASS_THROUGH bits of the BCC_CONFIG register (address 0x32) until you have resolved the current issue. Make sure that you are addressing the Jetson TX with the correct serial ID.

    Can you provide the scripting for the 954 that causes the read values to differ from the remote register values?

    Also, please verify lock (LOCK status bit of 954 DEVICE_STS register 0x04)

    Regards,

    Carrie

  • Hello, thank you for the answer.

    I set the AUTO_ACK_ALL and I2C_PASS_THROUGH bits of the BCC_CONFIG register (address 0x32), but it didn't affect my results.

    I only get serial ID 954 from Jetson TX, I can't access 953

    Here is a scenario for 954 that causes read values to differ from remote register.

    Here are the values of the remote register.

    LOCK status verifi

    Thanks.

  • Hello,

    The values in the remote register tab are the same as in the scripting tab. The scripting tab is displaying them in decimal format and the remote register tab displays them in hexadecimal.

    Although you can access registers on the 954 from the 953, the 954 doesn’t support a complete register dump from the 953.

    Regards,

    Carrie

  • Hello, thank you for the answer.

    Thanks, now I understand why the values did not match.

    I can't access the registers on the 954 from the 953 using i2cget.

    How exactly should I access registers 953 with jetson tx2?

    Thanks.

  • Good afternoon,

    The Jetson TX expects a 7 bit serial address, but the values for the address are printed as 8 bit format. This is why you are able to dump registers from the 954 with a read from 0x30. The 7-bit address of the 954 is 0x30 (0x60 >> 1). To access the serializer, use its 7 bit address (0x32>>1 = 0x19). When writing a new value to the serial ID or alias, write it in 8 bit format.

    Regards,

    Carrie

  • Hello, thank you for the answer.

    Yes, it solved my problem.

    Thank you, have a nice day.