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.

DS90UH928Q-Q1: DS90UH928 connected with DS90UB929 I2C can't work normally

Part Number: DS90UH928Q-Q1

Hi team,

Could you please kindly give some suggestions on following issue:

Background: After the high temperature test on DS90UH928 system, when connect 929 with 928 , use the same 929 connected with different 928, found some 928 can communicate with 929 through I2C, but some 928 can't (The problem was found in four of the more than a dozen films) .

Relate test: 

#1 No matter in the case of I2C normal communication or abnormal communication, video signal can be transmitted normally

#2 ABA test,Remove the 928 chip that cannot normally communicate with the 929 and put it on the 928 system board that can normally communicate, and the phenomenon will follow the 928 chip that cannot normally communicate

#3 Put the 928 chip that cannot normally communicate with 929 to our demo board, then it can communicate with 929 normally, and the register value as attached file shows.

#4 Test the power ripple, it looks good.

#5 remove all the I2C that connected with 929 and 928 on customer system, still can't build the communication

#6 Under the condition of no connection to 929, power is supplied to the system board of customer 928 separately. By comparing the registers of 928 which can normally communicate with those of 928 which cannot, it is found that the values of the following registers are different, as shown in the pink part.

Conclusion: By compare the test result of #3 and #6, it seems that the only difference is the 0xF2 register. when it can't work normally, the 0xF2 value is 0x42, which means ID code "B", when it can work normally the 0xF2 value is 0x48, Which means ID code"H".

Question: Could you please kindly help to give some suggestions about this issue. I also attached customer's SCH  for reference. Really appreciate for your time and looking forward to your reply. Thank you !

928_sch.pdf

  • Could you provide the 929 register reads? Do you see any CRC errors on 929 register 0x0A and 0x0B?
  • Hi Charley,

    Thank you very much for your quickly reply.

    When 929 connected with 928, we found that 929 register is unstable, as the first picture shows, you can see that  when i read 929 for many times during the abnormal communication, the value in 0x18 will changed. Another side in the second and third picture, we can see that the DES was missed recognized, and sometimes 929 can't recognize DES at all. The fourth picture shows the 0x0A register compare between good condition and bad condition. i also attache the relate test file, thank you very much and appreciate for your patience.

    [REGISTERS]
    Device = ALP Nano 1 - DS90UH929, Connector 1
    Comments = "929"
    Date = 03/01/2019
    Time = 16:08:46
    Reg = 0,0x0000,0x18
    Reg = 0,0x0001,0x00
    Reg = 0,0x0003,0xDA
    Reg = 0,0x0004,0x90
    Reg = 0,0x0005,0x00
    Reg = 0,0x0006,0x58
    Reg = 0,0x0007,0xA0
    Reg = 0,0x0008,0xB0
    Reg = 0,0x0009,0x00
    Reg = 0,0x000A,0x04
    Reg = 0,0x000B,0x00
    Reg = 0,0x000C,0x07
    Reg = 0,0x000D,0x20
    Reg = 0,0x000E,0x07
    Reg = 0,0x000F,0x00
    Reg = 0,0x0010,0x00
    Reg = 0,0x0011,0x00
    Reg = 0,0x0012,0x00
    Reg = 0,0x0013,0x88
    Reg = 0,0x0014,0x00
    Reg = 0,0x0015,0x01
    Reg = 0,0x0016,0xFE
    Reg = 0,0x0017,0xDE
    Reg = 0,0x0018,0x7F
    Reg = 0,0x0019,0xFF
    Reg = 0,0x001A,0xF7
    Reg = 0,0x001B,0x00
    Reg = 0,0x001C,0x01
    Reg = 0,0x001D,0x00
    Reg = 0,0x001E,0x01
    Reg = 0,0x001F,0xF4
    Reg = 0,0x0020,0x03
    Reg = 0,0x0021,0x00
    Reg = 0,0x0022,0x25
    Reg = 0,0x0023,0x00
    Reg = 0,0x0024,0x00
    Reg = 0,0x0025,0x00
    Reg = 0,0x0026,0x00
    Reg = 0,0x0027,0x00
    Reg = 0,0x0028,0x01
    Reg = 0,0x0029,0x20
    Reg = 0,0x002A,0x20
    Reg = 0,0x002B,0xE0
    Reg = 0,0x002C,0x00
    Reg = 0,0x0030,0x00
    Reg = 0,0x0031,0x00
    Reg = 0,0x0032,0x00
    Reg = 0,0x0033,0x00
    Reg = 0,0x0034,0x00
    Reg = 0,0x0035,0x00
    Reg = 0,0x0036,0x00
    Reg = 0,0x0037,0x00
    Reg = 0,0x0038,0x00
    Reg = 0,0x0039,0x00
    Reg = 0,0x003A,0x00
    Reg = 0,0x003B,0x00
    Reg = 0,0x003C,0x00
    Reg = 0,0x003D,0x00
    Reg = 0,0x003E,0x00
    Reg = 0,0x003F,0x00
    Reg = 0,0x0040,0x14
    Reg = 0,0x0041,0x55
    Reg = 0,0x0042,0x00
    Reg = 0,0x0043,0x00
    Reg = 0,0x0044,0x80
    Reg = 0,0x0045,0x00
    Reg = 0,0x0046,0x00
    Reg = 0,0x0047,0x00
    Reg = 0,0x0048,0x00
    Reg = 0,0x0049,0x00
    Reg = 0,0x004A,0x00
    Reg = 0,0x004B,0x00
    Reg = 0,0x004C,0x00
    Reg = 0,0x004D,0x00
    Reg = 0,0x004E,0x00
    Reg = 0,0x004F,0x00
    Reg = 0,0x0050,0x97
    Reg = 0,0x0051,0xA1
    Reg = 0,0x0052,0x1E
    Reg = 0,0x0053,0x00
    Reg = 0,0x0054,0x28
    Reg = 0,0x0055,0x0C
    Reg = 0,0x0056,0x00
    Reg = 0,0x0057,0x00
    Reg = 0,0x0058,0x00
    Reg = 0,0x0059,0x00
    Reg = 0,0x005A,0xDD
    Reg = 0,0x005B,0x20
    Reg = 0,0x005C,0x02
    Reg = 0,0x005D,0x06
    Reg = 0,0x005E,0x44
    Reg = 0,0x005F,0x49
    Reg = 0,0x0060,0x22
    Reg = 0,0x0061,0x02
    Reg = 0,0x0062,0x00
    Reg = 0,0x0064,0x10
    Reg = 0,0x0065,0x00
    Reg = 0,0x0066,0x03
    Reg = 0,0x0067,0x03
    Reg = 0,0x0068,0x30
    Reg = 0,0x0069,0x00
    Reg = 0,0x006A,0x00
    Reg = 0,0x006B,0x00
    Reg = 0,0x006C,0x00
    Reg = 0,0x0070,0x00
    Reg = 0,0x0071,0x00
    Reg = 0,0x0072,0x00
    Reg = 0,0x0073,0x00
    Reg = 0,0x0074,0x00
    Reg = 0,0x0075,0x00
    Reg = 0,0x0076,0x00
    Reg = 0,0x0077,0x00
    Reg = 0,0x0078,0x00
    Reg = 0,0x0079,0x00
    Reg = 0,0x007A,0x00
    Reg = 0,0x007B,0x00
    Reg = 0,0x007C,0x00
    Reg = 0,0x007D,0x00
    Reg = 0,0x0080,0x00
    Reg = 0,0x0081,0x00
    Reg = 0,0x0082,0x00
    Reg = 0,0x0083,0x00
    Reg = 0,0x0084,0x00
    Reg = 0,0x0090,0x00
    Reg = 0,0x0091,0x00
    Reg = 0,0x0092,0x00
    Reg = 0,0x0093,0x00
    Reg = 0,0x0094,0x00
    Reg = 0,0x0098,0x00
    Reg = 0,0x0099,0x00
    Reg = 0,0x009A,0x00
    Reg = 0,0x009B,0x00
    Reg = 0,0x009C,0x00
    Reg = 0,0x009D,0x00
    Reg = 0,0x009E,0x00
    Reg = 0,0x009F,0x00
    Reg = 0,0x00A0,0x00
    Reg = 0,0x00A1,0x00
    Reg = 0,0x00A2,0x00
    Reg = 0,0x00A3,0x00
    Reg = 0,0x00C0,0x00
    Reg = 0,0x00C1,0x00
    Reg = 0,0x00C2,0xA8
    Reg = 0,0x00C3,0x00
    Reg = 0,0x00C4,0x68
    Reg = 0,0x00C5,0x00
    Reg = 0,0x00C6,0x21
    Reg = 0,0x00C7,0x00
    Reg = 0,0x00C8,0xC0
    Reg = 0,0x00C9,0x00
    Reg = 0,0x00CA,0x00
    Reg = 0,0x00CB,0x00
    Reg = 0,0x00CC,0x00
    Reg = 0,0x00CE,0xFF
    Reg = 0,0x00D0,0x00
    Reg = 0,0x00D1,0x00
    Reg = 0,0x00D2,0x00
    Reg = 0,0x00D3,0x00
    Reg = 0,0x00E0,0x00
    Reg = 0,0x00E1,0x00
    Reg = 0,0x00E2,0xA8
    Reg = 0,0x00E3,0x00
    Reg = 0,0x00E4,0x68
    Reg = 0,0x00E5,0x38
    Reg = 0,0x00E6,0x21
    Reg = 0,0x00E7,0x00
    Reg = 0,0x00F0,0x5F
    Reg = 0,0x00F1,0x55
    Reg = 0,0x00F2,0x42
    Reg = 0,0x00F3,0x39
    Reg = 0,0x00F4,0x32
    Reg = 0,0x00F5,0x39
    Reg = 0,0x00F6,0x00
    Reg = 0,0x00F8,0x00
    Reg = 0,0x00F9,0x00
    

    [REGISTERS]
    Device = ALP Nano 1 - DS90UH929, Connector 1
    Comments = "929"
    Date = 03/01/2019
    Time = 16:12:08
    Reg = 0,0x0000,0x18
    Reg = 0,0x0001,0x00
    Reg = 0,0x0003,0xDA
    Reg = 0,0x0004,0x80
    Reg = 0,0x0005,0x00
    Reg = 0,0x0006,0x58
    Reg = 0,0x0007,0x00
    Reg = 0,0x0008,0x00
    Reg = 0,0x0009,0x00
    Reg = 0,0x000A,0x0D
    Reg = 0,0x000B,0x00
    Reg = 0,0x000C,0x07
    Reg = 0,0x000D,0x20
    Reg = 0,0x000E,0x00
    Reg = 0,0x000F,0x00
    Reg = 0,0x0010,0x00
    Reg = 0,0x0011,0x00
    Reg = 0,0x0012,0x00
    Reg = 0,0x0013,0x88
    Reg = 0,0x0014,0x00
    Reg = 0,0x0015,0x01
    Reg = 0,0x0016,0xFE
    Reg = 0,0x0017,0x1E
    Reg = 0,0x0018,0x7F
    Reg = 0,0x0019,0x7F
    Reg = 0,0x001A,0x01
    Reg = 0,0x001B,0x00
    Reg = 0,0x001C,0x03
    Reg = 0,0x001D,0x00
    Reg = 0,0x001E,0x01
    Reg = 0,0x001F,0xF5
    Reg = 0,0x0020,0x03
    Reg = 0,0x0021,0x00
    Reg = 0,0x0022,0x25
    Reg = 0,0x0023,0x00
    Reg = 0,0x0024,0x00
    Reg = 0,0x0025,0x00
    Reg = 0,0x0026,0x00
    Reg = 0,0x0027,0x00
    Reg = 0,0x0028,0x01
    Reg = 0,0x0029,0x20
    Reg = 0,0x002A,0x20
    Reg = 0,0x002B,0xE0
    Reg = 0,0x002C,0x00
    Reg = 0,0x0030,0x00
    Reg = 0,0x0031,0x00
    Reg = 0,0x0032,0x00
    Reg = 0,0x0033,0x00
    Reg = 0,0x0034,0x00
    Reg = 0,0x0035,0x00
    Reg = 0,0x0036,0x00
    Reg = 0,0x0037,0x00
    Reg = 0,0x0038,0x00
    Reg = 0,0x0039,0x00
    Reg = 0,0x003A,0x00
    Reg = 0,0x003B,0x00
    Reg = 0,0x003C,0x00
    Reg = 0,0x003D,0x00
    Reg = 0,0x003E,0x00
    Reg = 0,0x003F,0x00
    Reg = 0,0x0040,0x14
    Reg = 0,0x0041,0x55
    Reg = 0,0x0042,0x00
    Reg = 0,0x0043,0x00
    Reg = 0,0x0044,0x80
    Reg = 0,0x0045,0x00
    Reg = 0,0x0046,0x00
    Reg = 0,0x0047,0x00
    Reg = 0,0x0048,0x00
    Reg = 0,0x0049,0x00
    Reg = 0,0x004A,0x00
    Reg = 0,0x004B,0x00
    Reg = 0,0x004C,0x00
    Reg = 0,0x004D,0x00
    Reg = 0,0x004E,0x00
    Reg = 0,0x004F,0x00
    Reg = 0,0x0050,0x97
    Reg = 0,0x0051,0xA1
    Reg = 0,0x0052,0x1E
    Reg = 0,0x0053,0x00
    Reg = 0,0x0054,0x28
    Reg = 0,0x0055,0x0C
    Reg = 0,0x0056,0x00
    Reg = 0,0x0057,0x00
    Reg = 0,0x0058,0x00
    Reg = 0,0x0059,0x00
    Reg = 0,0x005A,0xDD
    Reg = 0,0x005B,0x20
    Reg = 0,0x005C,0x02
    Reg = 0,0x005D,0x06
    Reg = 0,0x005E,0x44
    Reg = 0,0x005F,0x42
    Reg = 0,0x0060,0x22
    Reg = 0,0x0061,0x02
    Reg = 0,0x0062,0x00
    Reg = 0,0x0064,0x10
    Reg = 0,0x0065,0x00
    Reg = 0,0x0066,0x00
    Reg = 0,0x0067,0x00
    Reg = 0,0x0068,0x00
    Reg = 0,0x0069,0x00
    Reg = 0,0x006A,0x00
    Reg = 0,0x006B,0x00
    Reg = 0,0x006C,0x00
    Reg = 0,0x0070,0x00
    Reg = 0,0x0071,0x00
    Reg = 0,0x0072,0x00
    Reg = 0,0x0073,0x00
    Reg = 0,0x0074,0x00
    Reg = 0,0x0075,0x00
    Reg = 0,0x0076,0x00
    Reg = 0,0x0077,0x00
    Reg = 0,0x0078,0x00
    Reg = 0,0x0079,0x00
    Reg = 0,0x007A,0x00
    Reg = 0,0x007B,0x00
    Reg = 0,0x007C,0x00
    Reg = 0,0x007D,0x00
    Reg = 0,0x0080,0x00
    Reg = 0,0x0081,0x00
    Reg = 0,0x0082,0x00
    Reg = 0,0x0083,0x00
    Reg = 0,0x0084,0x00
    Reg = 0,0x0090,0x00
    Reg = 0,0x0091,0x00
    Reg = 0,0x0092,0x00
    Reg = 0,0x0093,0x00
    Reg = 0,0x0094,0x00
    Reg = 0,0x0098,0x00
    Reg = 0,0x0099,0x00
    Reg = 0,0x009A,0x00
    Reg = 0,0x009B,0x00
    Reg = 0,0x009C,0x00
    Reg = 0,0x009D,0x00
    Reg = 0,0x009E,0x00
    Reg = 0,0x009F,0x00
    Reg = 0,0x00A0,0x00
    Reg = 0,0x00A1,0x00
    Reg = 0,0x00A2,0x00
    Reg = 0,0x00A3,0x00
    Reg = 0,0x00C0,0x00
    Reg = 0,0x00C1,0x00
    Reg = 0,0x00C2,0xA8
    Reg = 0,0x00C3,0x00
    Reg = 0,0x00C4,0x28
    Reg = 0,0x00C5,0x00
    Reg = 0,0x00C6,0x00
    Reg = 0,0x00C7,0x60
    Reg = 0,0x00C8,0xC0
    Reg = 0,0x00C9,0x00
    Reg = 0,0x00CA,0x00
    Reg = 0,0x00CB,0x00
    Reg = 0,0x00CC,0x00
    Reg = 0,0x00CE,0xFF
    Reg = 0,0x00D0,0x00
    Reg = 0,0x00D1,0x00
    Reg = 0,0x00D2,0x00
    Reg = 0,0x00D3,0x00
    Reg = 0,0x00E0,0x00
    Reg = 0,0x00E1,0x00
    Reg = 0,0x00E2,0xA8
    Reg = 0,0x00E3,0x00
    Reg = 0,0x00E4,0x28
    Reg = 0,0x00E5,0x38
    Reg = 0,0x00E6,0x00
    Reg = 0,0x00E7,0x00
    Reg = 0,0x00F0,0x5F
    Reg = 0,0x00F1,0x55
    Reg = 0,0x00F2,0x42
    Reg = 0,0x00F3,0x39
    Reg = 0,0x00F4,0x32
    Reg = 0,0x00F5,0x39
    Reg = 0,0x00F6,0x00
    Reg = 0,0x00F8,0x00
    Reg = 0,0x00F9,0x00
    

  • Do you have any other devices on the same I2C bus? If yes, would you able to disable other I2C devices to isolate the bus.
    On the 929, why are registers 0x04, 0x0E, 0x17, 0x19 and 0x1A have different values between good and bad? Did you change the value?

    On bad system, could you change the registers to match the good system and see if you could talk across the channel?

    Best Regards,
    Charley Cai
  • Hi Charley,

    Thank you very much for your reply.

    Yes, we also tried to disconnect all the I2C bus device both on 929 side and 928 side. I2C still can't work.
    we do not change any register of 929. From last reply i send to you we can see that 929's register is unstable after connected with 928.
    For 928 difference we can't change the different register cause these different registers are read only.

    So far i think it mostly relate to the 928 0xF2 register after power up. Cause after we have the same power supply condition only for 928 systerm(not connected with 929 systerm), and we do not make any configuration about the 928 device, but the register of 0xF2 is different, abnormal one is 0x42(ID code means"B"), but normal one is 0x48(ID code means "H"), so i mean if there have some design limited for different UH928 devices.

    Thank you.
  • Can i get the top marking of your two different 928?
    We do have both UB928 and UH928, but if you think you only have UH928 chip and the register 0xF2 show "B". There might be something wrong with the chip.

    Best Regards,
    Charley Cai
  • Also, could you capture the power rails timing at device startup?
  • Hi Charley,

    OK, got it, thank you very much for your quick reply.

    Best regards
    Jessica
  • Hi Charley,

    I also checked the device top mark before and found the abnormal one is the same as normal one.

    I attached the power up timing. Thank you.Power up test result.pptx

  • 4011.Power up test result.pptxHi Charley,

    I need to update the test result to you, please ignore the last reply.  It seems that the difference is the LOCK pin's voltage is different during the VCC rising edge.

  • how about the status here? you can capture the i2c signal in both ser. and deser in the same time to make sure the I2C is passed through or not.

    regards,
    Steven
  • Hi Steven,

    Thank you very much for your support.
    I am confused about that:
    For example ,When I write data from 929 to 928, we can only measure the I2C data from 929 I2C interface. At the same time, can we measure the I2C signal from 928 I2C interface?

    My understanding is that we cannot measure any data from the I2C interface of 928, because the I2C data written from 929 to 928 needs to be packaged and then send through forward channel. In this case, it is difficult for us to accurately test the high-speed data of the forward channel

    Could you please kindly help to give more detail explaination about "capture the i2c signal in both ser. and deser in the same time to make sure the I2C is passed through or not."

    Thank you & Best regards
    Jessica
  • you can use 4probes: 2porbes are used to measure the SCL/SDA in the 929 side, and the other 2probes are used to measure SCL/SDA in the 928 side.

    Steven