.. _configuremid: ========= Configure ========= 1. CSP Leaf Node provides API for **Configure workflow**. 2. The CSP Leaf Node **accepts the command** if :- A. Operational **state** of the CSP Leaf node is **ON/OFF/INIT/STANDBY/ALARM** B. CSP Subarray is responsive. 3. The CSP Leaf Node **rejects the command** if :- A. Operational **state** of CSP Leaf node is **FAULT/UNKNOWN/DISABLE** . B. CSP Subarray is not responsive. 4. The following **state requirements** are applied for the **command execution** :- A. CSP Subarray is in 'observation state' **READY** or **IDLE** . B. CSP Subarray node is :term:`available` . 5. The **command execution** involves below **key operations** :- A. Any existing delay threads are **stopped** B. Delay model attribute value is **reinitialized** to **initial default value** then progressively updated by running delay threads using timing cadence. - Delay is calculated for mid-cbf timings beams. - Please refer - `Delay Calculation in TMC `_ for detailed view of delay calculation C. Configuration parameters related to assigned resources such as :- - Create **Katpoint Antenna objects** from antenna params - Update **assigned_receptors** to be passed on to Katpoint DelayCorrection D. From input JSON **“pointing”** section is removed before sending command to CSP Subarray. E. The command is then invoked on the CSP Subarray. - If CSP Subarray **raises exception** , command failure is reported as **'RESULT_CODE - FAILED'** on Long Running Command Result attribute of the CSP leaf node. - If CSP Subarray **accept command** , the TMC CSP leaf node will wait for command completion. 6. The CSP leaf node **monitors the progress** of command via the CSP sub-array node **ObsState transitions** and the **long running command results**. A. Command is **successful** when the CSP Subarray Node transitions to **READY** ObsState. This is reported as **'RESULT_CODE - OK'** on Long Running Command Result attribute of the TMC CSP Subarray node. B. Command **failure** is reported in any of the below cases as **'RESULT_CODE - FAILED'** on Long Running Command Result attribute of the TMC CSP Subarray leaf node. - The CSP Subarray reports **'RESULT_CODE - FAILED'** on its Long Running Command Result attribute - The command **times out** if CSP SubarrayNode **does not transition** to **READY** within the **timeout period** specified by `CommandTimeOutDefault` property specified in helm chart of the CSP Leaf Node . 7. Input JSON to CSP Subarray is as per schema detailed at - https://developer.skao.int/projects/ska-schemas/en/latest/schemas/csp/mid/configure/index.html