============================ Powering ON SPS Equipment ============================ Before we can utilise SPS hardware, it must first be powered ON. Powering ON Tile Processing Modules =================================== TPMs are supplied power via the subrack backplane. This means to power ON the TPMs we must request the subrack management board of the corresponding subrack supplies power to the correct subrack slot. This page details how this can be done from the command line. Though it is worth noting that the :doc:`functional_tests/gui` has this functionality incorporated, so this can be used as an alternative to the below. The cabinet/station control script :code:`cabinet_control.py` is located in the :code:`src/ska_low_sps_testsuite/common` directory. This can be executed from the command line with a :doc:`station_config` or :doc:`cabinet_config` provided: .. code-block:: python cabinet_control.py --config --command The available commands are: * :code:`power_on` - Powers on all TPMs specified in config file * :code:`power_off` - Powers off all TPMs specified in config file * :code:`power_cycle` - Power cycles all TPMs specified in config file * :code:`are_tpms_on` - Prints if each TPM in each subrack specified in config file are on * :code:`set_fans_20` - Sets all fans of each subrack specified to 20% * :code:`set_fans_40` - Sets all fans of each subrack specified to 40% * :code:`set_fans_60` - Sets all fans of each subrack specified to 60% * :code:`set_fans_80` - Sets all fans of each subrack specified to 80% * :code:`set_fans_100` - Sets all fans of each subrack specified to 100% * :code:`get_tpm_power` - Returns a list if all TPM powers in W * :code:`get_health_status` - Returns status of all health monitoring points of each subrack To view the underlying communication with the subrack, set the log level to debug with :code:`--log_level debug`. Alternatively, a subrack control script is located in the :code:`src/ska_low_sps_testsuite/common` directory and can be executed from the command line using :code:`ipython`. This will then provide an interactive python environment where you can create a subrack object and issue commands: .. code-block:: ipython -i subrack_control.py # Create a subrack object my_subrack = Subrack('10.132.0.14') # Power on TPM slot 1 and slot 2 my_subrack.power_on_tpm([1, 2]) # Set fan speed to 100% my_subrack.set_fan_speed(100) # Power off all subrack slots (1-8) my_subrack.power_off_all_tpms() # Get all health monitoring points of the subrack my_subrack.get_health_status() # Get only temperature monitoring points of the subrack my_subrack.get_health_status("temperatures") The following methods are available: * :code:`power_on_all_tpms()` * :code:`power_off_all_tpms()` * :code:`power_cycle_all_tpms()` * :code:`power_on_tpm(slot_list)` * :code:`power_off_tpm(slot_list)` * :code:`power_cycle_tpm(slot_list)` * :code:`are_tpms_on()` * :code:`is_tpm_on(slot_list)` * :code:`set_fan_speed(percent_speed)` * :code:`get_health_status(monitoring_points)`