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.

TUSB422: TUSB422 About UFP Mode

Part Number: TUSB422

Hello~

It is being used as a UFP.

I want to control the charger using TUSB422 but the TUSB422 does not work.

Please check each of the registers below to see what's wrong.

The data read for each register is as follows:

////////////////////////////////////////////////////
0x10 ALERT_BYTE_0 : Read -> 0x01
0x11 ALERT_BYTE_1 : Read -> 0x00
0x12 ALERT_MASK_BYTE_0 : Read -> 0xFF
0x13 ALERT_MASK_BYTE_1 : Read -> 0x0F
0x14 POWER_STATUS_MASK : Read -> 0xFD
0x15 FAULT_STATUS_MASK : Read -> 0x7F

0x18 CONFIG_STARDARD_OUTPUT : Read -> 0x60
0x19 TCPC_CONTROL : Read -> 0x00
0x1A ROLE_CONTROL : Read -> 0x0A
0x1B FAULT_CONTROL : Read -> 0x06
0x1C POWER_CONTROL : Read -> 0x60
0x1D CC_STATUS : Read -> 0x30
0x1E POWER_STATUS : Read -> 0x00
0x1F FAULT_STATUS : Read -> 0x00

0x23 COMMAND : Write -> 0x99

0x24 DEVICE_CAPABILITIES_1_BYTE_0 : Read -> 0x98
0x25 DEVICE_CAPABILITIES_1_BYTE_1 : Read -> 0x1E
0x26 DEVICE_CAPABILITIES_2_BYTE_0 : Read -> 0xC5
0x27 DEVICE_CAPABILITIES_2_BYTE_1 : Read -> 0x00
0x28 STANDARD_INPUT_CAPABILITIES : Read -> 0x00
0x29 STANDARD_OUTPUT_CAPABILITIES : Read -> 0x00

0x2E MESSAGE_HEADER_INFO : Read -> 0x02
0x2F RECEIVE_DETECT : Read -> 0x07
0x30 RECEIVE_BYTE_COUNT : Read -> 0x00
stale.
0x31 RX_BUF_FRAME_TYPE : Read -> 0x00
of the register)
0x32 RX_BUF_HEADER_BYTE_0 : Read -> 0x00
0x33 RX_BUF_HEADER_BYTE_1 : Read -> 0x00
0x34 RX_BUF_OBJ1_BYTE_0 : Read -> 0x00

0x50 TRANSMIT : Read -> 0x00
0x51 TRANSMIT_BYTE_COUNT : Read -> 0x04
0x52 TX_BUF_HEADER_BYTE_0 : Read -> 0x41
0x53 TX_BUF_HEADER_BYTE_1 : Read -> 0x04
0x54 TX_BUF_OBJ1_BYTE_0 : Read -> 0xA2
0x55 TX_BUF_OBJ1_BYTE_1 : Read -> 0xA8
0x56 TX_BUF_OBJ1_BYTE_2 : Read -> 0xD6
0x57 TX_BUF_OBJ1_BYTE_3 : Read -> 0xAF

0x58 TX_BUF_OBJ2_BYTE_0 : Read -> 0x00
0x59 TX_BUF_OBJ2_BYTE_1 : Read -> 0x00
0x5A TX_BUF_OBJ2_BYTE_2 : Read -> 0x00
0x5B TX_BUF_OBJ2_BYTE_3 : Read -> 0x00
0x5C TX_BUF_OBJ3_BYTE_0 : Read -> 0x00
0x5D TX_BUF_OBJ3_BYTE_1 : Read -> 0x00
0x5E TX_BUF_OBJ3_BYTE_2 : Read -> 0x00
0x5F TX_BUF_OBJ3_BYTE_3 : Read -> 0x00
0x60 TX_BUF_OBJ4_BYTE_0 : Read -> 0x00
0x61 TX_BUF_OBJ4_BYTE_1 : Read -> 0x00
0x62 TX_BUF_OBJ4_BYTE_2 : Read -> 0x00
0x63 TX_BUF_OBJ4_BYTE_3 : Read -> 0x00
0x64 TX_BUF_OBJ5_BYTE_0 : Read -> 0x00
0x65 TX_BUF_OBJ5_BYTE_1 : Read -> 0x00
0x66 TX_BUF_OBJ5_BYTE_2 : Read -> 0x00
0x67 TX_BUF_OBJ5_BYTE_3 : Read -> 0x00
0x68 TX_BUF_OBJ6_BYTE_0 : Read -> 0x00
0x69 TX_BUF_OBJ6_BYTE_1 : Read -> 0x00
0x6A TX_BUF_OBJ6_BYTE_2 : Read -> 0x00
0x6B TX_BUF_OBJ6_BYTE_3 : Read -> 0x00
0x6C TX_BUF_OBJ7_BYTE_0 : Read -> 0x00
0x6D TX_BUF_OBJ7_BYTE_1 : Read -> 0x00
0x6E TX_BUF_OBJ7_BYTE_2 : Read -> 0x00
0x6F TX_BUF_OBJ7_BYTE_3 : Read -> 0x00

0x70 VBUS_VOLTAGE_BYTE_0 : Read -> 0x00
0x71 VBUS_VOLTAGE_BYTE_1 : Read -> 0x00
0x72 VBUS_SINK_DISCONNECT_THRESHOLD_BYTE_0 : Read -> 0x00
0x73 VBUS_SINK_DISCONNECT_THRESHOLD_BYTE_1 : Read -> 0x00
0x74 VBUS_STOP_DISCHARGE_THRESHOLD_BYTE_0 : Read -> 0x00
0x75 VBUS_STOP_DISCHARGE_THRESHOLD_BYTE_1 : Read -> 0x00
0x76 VBUS_VOLTAGE_ALARM_HI_CFG_BYTE_0 : Read -> 0x00
0x77 VBUS_VOLTAGE_ALARM_HI_CFG_BYTE_1 : Read -> 0x00
0x78 VBUS_VOLTAGE_ALARM_LO_CFG_BYTE_0 : Read -> 0x00
0x79 VBUS_VOLTAGE_ALARM_LO_CFG_BYTE_1 : Read -> 0x00

0x90 Vendor Interrupt Status : Read -> 0x00
0x92 Vendor Interrupt Mask : Read -> 0x00
0x94 CC General Control : Read -> 0x04
0x95 PHY BMC TX Control : Read -> 0x00
0x96 PHY BMC RX Control : Read -> 0x00
0x97 PHY BMC RX Status : Read -> 0x00
0x98 VBUS and VCONN Control : Read -> 0x00
0x99 OTSD Control : Read -> 0x00
0x9A .. 0x9F Reserved : Read -> 0x00
0xA0 LFO Timer Low : Read -> 0x10
0xA1 LFO Timer High : Read -> 0x00
0xFF Page Select : Read -> 0x00
////////////////////////////////////////////////////

Best Regards

  • we are looking at this issue and will reply soon.
  • Hi, Brian~

    I'll wait for some good information.

    I have additional questions.

    With an EVM, everything is solved.

    But the EVM seems to have been discontinued. Is that right?

  • yes,it's discontinued, but how you get EVM?
  • I'm sorry. I wrote it wrong. I don't have an EVM.

    It is now successful to send a message.

    1. Do not send GoodCRC automatically.

    2. Adaptor(Source) unilaterally send 'Source_Cap'.

    Which register should I check?

  • Is PD Rx enabled for SOP?
  • Hello, Brian

    0x2F is enabled for 0x01(SOP Enable).

    If you can provide us with a sample code, please send it here.

    shimbg@misum.co.kr

    Then, the power supply is "hard reset" as shown below.

    The data read for each register are as follows.

    Please help me.

    ////////////////////////////////////////////////////
    0x10 ALERT_BYTE_0 : Read -> 0x10
    0x11 ALERT_BYTE_1 : Read -> 0x00
    0x12 ALERT_MASK_BYTE_0 : Read -> 0xB8
    0x13 ALERT_MASK_BYTE_1 : Read -> 0x89
    0x14 POWER_STATUS_MASK : Read -> 0xB2
    0x15 FAULT_STATUS_MASK : Read -> 0x7E

    0x18 CONFIG_STARDARD_OUTPUT : Read -> 0x02
    0x19 TCPC_CONTROL : Read -> 0x00
    0x1A ROLE_CONTROL : Read -> 0x0A
    0x1B FAULT_CONTROL : Read -> 0x16
    0x1C POWER_CONTROL : Read -> 0x20
    0x1D CC_STATUS : Read -> 0x30
    0x1E POWER_STATUS : Read -> 0x00
    0x1F FAULT_STATUS : Read -> 0x00

    0x24 DEVICE_CAPABILITIES_1_BYTE_0 : Read -> 0x98
    0x25 DEVICE_CAPABILITIES_1_BYTE_1 : Read -> 0x1E
    0x26 DEVICE_CAPABILITIES_2_BYTE_0 : Read -> 0xC5
    0x27 DEVICE_CAPABILITIES_2_BYTE_1 : Read -> 0x00
    0x28 STANDARD_INPUT_CAPABILITIES : Read -> 0x00
    0x29 STANDARD_OUTPUT_CAPABILITIES : Read -> 0x00

    0x2E MESSAGE_HEADER_INFO : Read -> 0x02
    0x2F RECEIVE_DETECT : Read -> 0x01

    0x70 VBUS_VOLTAGE_BYTE_0 : Read -> 0x10
    0x71 VBUS_VOLTAGE_BYTE_1 : Read -> 0x00
    0x72 VBUS_SINK_DISCONNECT_THRESHOLD_BYTE_0 : Read -> 0x00
    0x73 VBUS_SINK_DISCONNECT_THRESHOLD_BYTE_1 : Read -> 0x00
    0x74 VBUS_STOP_DISCHARGE_THRESHOLD_BYTE_0 : Read -> 0x00
    0x75 VBUS_STOP_DISCHARGE_THRESHOLD_BYTE_1 : Read -> 0x00
    0x76 VBUS_VOLTAGE_ALARM_HI_CFG_BYTE_0 : Read -> 0x00
    0x77 VBUS_VOLTAGE_ALARM_HI_CFG_BYTE_1 : Read -> 0x00
    0x78 VBUS_VOLTAGE_ALARM_LO_CFG_BYTE_0 : Read -> 0x00
    0x79 VBUS_VOLTAGE_ALARM_LO_CFG_BYTE_1 : Read -> 0x00

    0x90 Vendor Interrupt Status : Read -> 0x00
    0x92 Vendor Interrupt Mask : Read -> 0x00
    0x94 CC General Control : Read -> 0x04
    0x95 PHY BMC TX Control : Read -> 0x00
    0x96 PHY BMC RX Control : Read -> 0x01
    0x97 PHY BMC RX Status : Read -> 0x0F
    0x98 VBUS and VCONN Control : Read -> 0x03
    0x99 OTSD Control : Read -> 0x00

    0xA0 LFO Timer Low : Read -> 0x00
    0xA1 LFO Timer High : Read -> 0x00

    0xFF Page Select : Read -> 0x00
    ////////////////////////////////////////////////////



  • In addition, sending 'Get_Source_Cap' only comes with 'GoodCRC'message.
    The Source Cap message does not come.