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.

UCD9090-Q1: How do I read/clear fault logs using PMBus commands?

Part Number: UCD9090-Q1
Other Parts Discussed in Thread: UCD90240, UCD90124A

Is there an Application Report similar to Monitoring Voltage, Current, and Temperature Using the UCD90xxx Devices that provides examples for reading and clearing Black Box fault logs, how to parse them, and how to clear them?

The UCD90xxx Sequencer and System Health Controller PMBus Command Reference document is somewhat misleading stating that Section 9 Implementation Details for User Data Commands is for UCD90240 only.

I'd like to better understand how to read each event in the fault log, parse the fault info, and clear log entries.

 

  • Section 9 is dedicated for UCD90240. But read/clear fault logs are under section 10. Please refer section 10.26 to 10.28.

    They defines the command protocol to read or clear fault logs.

    If you have more questions, please post here.

    Regards

    Yihe

  • Thanks for the response.  That helps clear up part of the question.  Perhaps the more helpful information would be if an Application Report exists that is similar to Monitoring Voltage, Current, and Temperature Using the UCD90xxx Devices that provides examples for reading and clearing Black Box fault logs, how to parse them, and how to clear them.

    That would be super helpful to get a feel with how normal interaction with the fault logs is performed.

  • Thanks for the comments. we will put this into a future to-do list.

    The best way now is to use the PMBUS logging fucntion inside the Fusion, the logging functioin of Fusion GUi will record all issued commands.
    you can perform the action on the GUi and check the logging file to see what commands are used.

    Hope this help.
    Yihe

  • Here is the general procedures to read the fault log

    1. Host first send 0xEB command to query fault log. if 0xABCD is retured, where AB tells number of the fault log and 0xCD tells the current fault log that device is accessing.

    2. If the log is not empty, Host need modify the 2nd byte of the value returned by command 0xEB to set the right index.

      For example, 0x0504 is return by the 0xEB, host shall write 0x0500 via 0xEB command to tell UCD that the first fault log detail shall be read

    3. host sends out 0xEC read block command to get the details.

    4. Repeat step B(increment the index) and C until all fault log has read out.

    Here is a example of the pmbus logging file from UCD90124A. but it shall be applied on UCD9090-Q.

    The log file show how to read all 5 fault logs from the device

     

    Timestamp	Category	Adapter	Address	Part_ID	ID	Code	Page	Phase	Request	Status	Num_Attempts	Value_Encoded	Value_Text	Value_Numeric
    2018-03-21 12:16:15.096	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			ReadWord	ACK	1	0x0504	
    2018-03-21 12:16:15.096	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			READ	ACK	1	0x0504	Fault Index: 4, Num Entries: 5	
    2018-03-21 12:16:15.096	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WriteWord	ACK	1	0x0500	
    2018-03-21 12:16:15.096	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WRITE	ACK	1	0x0500	Fault Index: 0, Num Entries: 5	
    2018-03-21 12:16:15.126	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			BlockRead	ACK	1	0x0002E0B880000002EB0F	
    2018-03-21 12:16:15.126	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			READ	ACK	1	0x0002E0B880000002EB0F	2 Days, 00:03:08.600: Rail #1 Vout OV Fault @ 994.870 mV	
    2018-03-21 12:16:15.126	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WriteWord	ACK	1	0x0501	
    2018-03-21 12:16:15.126	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WRITE	ACK	1	0x0501	Fault Index: 1, Num Entries: 5	
    2018-03-21 12:16:15.156	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			BlockRead	ACK	1	0x0002F4F580000002E10F	
    2018-03-21 12:16:15.156	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			READ	ACK	1	0x0002F4F580000002E10F	2 Days, 00:03:13.781: Rail #1 Vout OV Fault @ 992.430 mV	
    2018-03-21 12:16:15.156	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WriteWord	ACK	1	0x0502	
    2018-03-21 12:16:15.156	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WRITE	ACK	1	0x0502	Fault Index: 2, Num Entries: 5	
    2018-03-21 12:16:15.196	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			BlockRead	ACK	1	0x0003019280000002D70F	
    2018-03-21 12:16:15.196	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			READ	ACK	1	0x0003019280000002D70F	2 Days, 00:03:17.010: Rail #1 Vout OV Fault @ 989.990 mV	
    2018-03-21 12:16:15.196	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WriteWord	ACK	1	0x0503	
    2018-03-21 12:16:15.196	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WRITE	ACK	1	0x0503	Fault Index: 3, Num Entries: 5	
    2018-03-21 12:16:15.226	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			BlockRead	ACK	1	0x00030E9A80000002E10F	
    2018-03-21 12:16:15.226	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			READ	ACK	1	0x00030E9A80000002E10F	2 Days, 00:03:20.346: Rail #1 Vout OV Fault @ 992.430 mV	
    2018-03-21 12:16:15.226	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WriteWord	ACK	1	0x0504	
    2018-03-21 12:16:15.226	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL_INDEX	0xEB			WRITE	ACK	1	0x0504	Fault Index: 4, Num Entries: 5	
    2018-03-21 12:16:15.256	SAA	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			BlockRead	ACK	1	0x0003194780000002CB0F	
    2018-03-21 12:16:15.256	PMBus	1	101	UCD90124A	LOGGED_FAULT_DETAIL	0xEC			READ	ACK	1	0x0003194780000002CB0F	2 Days, 00:03:23.079: Rail #1 Vout OV Fault @ 987.060 mV	
    

    Regards

    Yihe