BackChannel Diagnosis is performed on the TimingMaster node. It inspects the ring segment by segment until it finds a ring break or detects a closed ring.
It cannot be performed during Node Discovery or Programming service.
Calling Ucs_Bcd_Start() starts the BackChannel Diagnosis. The function has a parameter report_fptr. It points to the report callback function. report_fptr will deliver a result for each inspected segment as well as a result which indicates the end of the diagnosis session.
Segment number 0 denotes the segment following the TimingMaster.
Parameter code | Parameter segment | Description |
---|---|---|
UCS_BCD_RES_SUCCESS | segment number | current segment is not broken |
UCS_BCD_RES_NO_RING_BREAK | segment number | No ring break detected. segment = number of nodes - 1. |
UCS_BCD_RES_RING_BREAK | segment number | Ring break detected in current segment. |
UCS_BCD_RES_TIMEOUT1 | segment number | Error during diagnosis: no communication on back channel. |
UCS_BCD_RES_TIMEOUT2 | UCS_BCD_DUMMY_SEGMENT | Error during diagnosis: no result received from local INIC. |
UCS_BCD_RES_ERROR | UCS_BCD_DUMMY_SEGMENT | An unexcpected error occurred. BackChannel Diagnosis was stopped. |
UCS_BCD_RES_END | UCS_BCD_DUMMY_SEGMENT | BackChannel Diagnosis ended regularly. |