CSP LMC Troubleshooting

Since the CSP LMC is the entry point of all the CSP sub-elements, the State, ObsState and HealthState of the CSP LMC have to reflect also the State, ObsState and HealthState of all the CSP subsystems. In order to identify the cause of a particular condition of the CSP LMC, the starting point is to understand the subsystems status. For doing that, we have defined some tables to link the status of the CSP LMC and the one of the subsystems.

Recover from a FAULT obsState

If something goes wrong in the observation, the ObsState of CSP.LMC could go in FAULT. Please note that this not refers to the case of the Tango Device has an internal error and the DevState goes in FAULT (see next for this case). To recover from this situation, the restart command is issued. This command will release also all the resources, taking the subarray in an EMPTY obstate.

The sequence of operations and responses is:

csp_sub1.obsstate -> FAULT

csp_sub1.restart()

csp_sub1.commandResult -> ('restart', '1')
csp_sub1.obsstate -> RESTARTING
csp_sub1.commandResult -> ('restart', '0')
csp_sub1.obsstate -> EMPTY

Please note that if the LOW CBF device AdminMode is DISABLE/UNKNOWN, the CSP LMC is not able to communicate with it. For this reason, despite the restart command, the CSP LMC will go into ObsState FAULT.

In this case, the best approach should be to set the AdminMode to OFFLINE and then to ONLINE/MAINTENANCE before proceeding with the restart command.

Recover from a FAULT State

When an internal error occours in the Low CSP.LMC Controller or Subarray, the DevState (State) of the device can transition to FAULT. To recover from this condition, the Reset command needs to be issued. Successufull execution of this command will return the device in its initial state, that is OFF/EMPTY for Subarray and STANDBY for the Controller.