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.

TPS65987DDJ: how to configure GUI FW to supports 4CC cmd

Part Number: TPS65987DDJ
Other Parts Discussed in Thread: TPS65987

note:MCU and PD are connected via I2C2 (I2C2_SCL/I2C2_SDA/I2C2_IRQ)

1.4CC CMD 'VDMs'

  a. Write UVDM data (0x08 0x09 0x02 0x03 0x00 0x76 0x2B 0x00 0x00 0x00 0x00 0x01) to 0x09 DATA1,

  b. Write the 'VDMs' -pd send VDM command to 0x08(0x08 0x04 0x56 0x44 0x4D 0x73)4CC CMD
fail:
  no UVDM data is sent from PD CC LOG.
2.4CC CMD 'SSrC' 
fail:
   no source capability data is sent from PD CC LOG.
  • Hi, 

    Thank you for reaching out!

    Write UVDM data (0x08 0x09 0x02 0x03 0x00 0x76 0x2B 0x00 0x00 0x00 0x00 0x01) to 0x09 DATA1,

    It seems the data length is 10 but you are telling it to write 9 bytes. Also, you would need to write the data to 0x09 so the first byte should be "0x09" instead of "0x08". 

    Write the 'VDMs' -pd send VDM command to 0x08(0x08 0x04 0x56 0x44 0x4D 0x73)4CC CMD

    This looks correct!

    Please see this guide on how to use 4CC commands along with an example. 

    2262.Using 4CC Commands (3).pdf

    Best Regards, 

    Aya Khedr 

  • Update progress (TPS65987DDJ), currently found that the first access to the host device, 4CC CMD can communicate normally, 
        but after the communication is complete, call 4CC CMD again found that PD did not respond to the command,the specific steps are as follows;
     
        1.First plug in 4CC 'VDMs' PASS:
            a.read 0x03(mode): 0x03 0x04 0x41 0x50 0x50 0x20---'APP '
            b.write 0x09(data1):0x09 0x09 0x02 0xFB 0x01 0x76 0x2B 0x01 0x7D 0x00 0x00
            c.write 0x08(cmd1):0x08 0x04 0x56 0x44 0x4D 0x73---'VDMs'
            d.delay 30ms
            e.read 0x08(cmd1):0x08 0x04 0x00 0x00 0x00 0x00
            f.delay 30ms
            g.read 0x09(data1):0x09 0x40 0x00 0xFB 0x01 0x76 0x2B 0x01 0x7D 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
            h.read 0x03(mode): 0x03 0x04 0x41 0x50 0x50 0x20---'APP '
     
        2.send again 4CC 'VDMs'  Fail:
            a.read 0x03(mode): 0x03 0x04 0x41 0x50 0x50 0x20---'APP '
            b.write 0x09(data1):0x09 0x09 0x02 0xFB 0x01 0x76 0x2B 0x01 0x7D 0x00 0x00
            c.write 0x08(cmd1):0x08 0x04 0x56 0x44 0x4D 0x73---SET 'VDMs'
            d.delay 30ms
            e.read 0x08(cmd1):0x08 0x04 0x56 0x44 0x4D 0x73---'VDMs' 4CC cmd fail
            f.write 0x08(cmd1):0x08 0x04 0x47 0x41 0x49 0x44---SET 'GAID'
            g.delay 30ms
            h.read 0x08(cmd1):0x08 0x04 0x47 0x41 0x49 0x44---'GAID4CC cmd fail
            i.read 0x03(mode): 0x03 0x04 0x41 0x50 0x50 0x20---'APP '
  • Hi, 

    Thank you for the update. I will look into this further and get back to you by Friday. 

    Best Regards, 

    Aya Khedr 

  • At present, from the IIC log, after 4CC cmd fail, try to read other registers of PD (0x03, 0x34, 0x06), the data returns normal, write 0x28 can reset PD,
     
        1.Need to confirm the following information,
            A.Chip specification:TPS65987DDJ 
            B.GUI TOOL:TPS65987_8_THUNDERBOLT Application Customization 6.3.6
            C.PD I2C channel:I2C2_IRQ/I2C2_SDA/I2C2_SCL
            D.Fail scene:PD communication is complete and send 4CC cmd again
     
        2.log:
            PD CC log:TPS65987DDJ_Plugin_4CC_FAIL.ccgx3(open tool :EZ-PD Protocol Analyzer Utility)
            PD IIC LOG:
                A.TPS65987DDJ_Plugin_4CC_FAIL.TLW(plug in)
                B.TPS65987DDJ_Send_agagin_4CC_FAIL.TLW(send 4CC cmd again)
            
        3.Our project file package, please also help to check whether there is any problem with the configuration,
            Our project:0415 EC.pjt
  • Hi, 

    Thank you for providing more information. 

    Could you please help identify where the EC is sending the 4CC command in the PD logs? Is the "Not Supported" message below the point of failure? 

    Also, see below for reasons as to why the command could be rejected:

    Best Regards, 

    Aya Khedr 

  • HI,

    Unsupported Old vendor id(0x12d1) is not supported, this does not trigger enter mode, so it is normal,

    As shown in the figure, enter mode has been triggered for vendor id(0x2B76), and the first time we send UVDM(0x2b7601fb 0x7d01) is successful,

    But when we receive UVDM(0x2b760002) sent by the object, then our MCU will send UVDM(0x2b76) to write PD 0x09data via IC2, PD does not have any CC log printed out.

    The IIC operates as follows:
    At this time, the PD status register 0x08 is read, and it is found that the execution is not according to spec.

  • Hi, 

    Thank you for providing additional information. I will need to look into this further and get back to you by Wednesday. 

    Best Regards, 

    Aya Khedr 

  • Hi,

    This issue is very urgent for us.Please let us know if you have any progress for this issue

  • This issue is very urgent for us.Please let us know if you have any progress for this issue

  • Is there any progress? Please give us your feedback. Thank you

  • Hi, 

    Thank you for your patience with this.

    I understand the urgency and have been prioritizing the above. I will get back to you with a detailed update by end of day.

    Best Regards, 

    Aya Khedr 

  • Hi, 

    I will close this thread since we are in communication via email. Thank you!

    Best Regards, 

    Aya Khedr