TalonLRU Device

class ska_mid_cbf_mcs.talon_lru.talon_lru_device.TalonLRU(cl, name)[source]

Bases: SKABaseDevice

TANGO device class for controlling and monitoring a Talon LRU.

TalonDxBoard1

TANGO property

TalonDxBoard2

TANGO property

PDU1

TANGO property

PDU1PowerOutlet

TANGO property

PDU2

TANGO property

PDU2PowerOutlet

TANGO property

PDUCommandTimeout

TANGO property

LRUPowerMode

Power mode of the Talon LRU

simulationMode

Device attribute.

always_executed_hook() None[source]

Hook to be executed before any attribute access or command.

delete_device() None[source]

Uninitialize the device.

init_command_objects() None[source]

Sets up the command objects.

read_LRUPowerMode() PowerMode[source]

Read the power mode of the LRU by checking the power mode of the PDUs.

Returns:

Power mode of the LRU.

write_simulationMode(value: SimulationMode) None[source]

Write the simulation mode to the component manager.

create_component_manager() TalonLRUComponentManager[source]

Create and return a component manager for this device.

Returns:

a component manager for this device.

class InitCommand(target, op_state_model, logger=None)[source]

Bases: InitCommand

A class for the TalonLRU’s init_device() “command”.

do() Tuple[ResultCode, str][source]

Stateless hook for device initialisation. Creates the device proxies to the power switch devices.

Returns:

A Tuple containing a return code and a string message indicating status. The message is for information purpose only.

class OnCommand(target, op_state_model, logger=None)[source]

Bases: OnCommand

The command class for the On command.

Turn on both outlets that provide power to the LRU. Device is put into ON state if at least one outlet was successfully turned on.

do() Tuple[ResultCode, str][source]

Implement On command functionality.

Returns:

A Tuple containing a return code and a string message indicating status. The message is for information purpose only.

class OffCommand(target, op_state_model, logger=None)[source]

Bases: OffCommand

The command class for the Off command.

Turn off both outlets that provide power to the LRU. Device is put in the OFF state if both outlets were successfully turned off.

do() Tuple[ResultCode, str][source]

Implement Off command functionality.

Returns:

A Tuple containing a return code and a string message indicating status. The message is for information purpose only.

DebugDevice()

Enable remote debugging of this device.

To modify behaviour for this command, modify the do() method of the command class: DebugDeviceCommand.

GetVersionInfo()

Return the version information of the device.

To modify behaviour for this command, modify the do() method of the command class.

Returns:

Version details of the device.

GroupDefinitions

Device property.

Each string in the list is a JSON serialised dict defining the group_name, devices and subgroups in the group. A Tango Group object is created for each item in the list, according to the hierarchy defined. This provides easy access to the managed devices in bulk, or individually.

The general format of the list is as follows, with optional devices and subgroups keys:

[ {"group_name": "<name>",
   "devices": ["<dev name>", ...]},
  {"group_name": "<name>",
   "devices": ["<dev name>", "<dev name>", ...],
   "subgroups" : [{<nested group>},
                    {<nested group>}, ...]},
  ...
  ]

For example, a hierarchy of racks, servers and switches:

[ {"group_name": "servers",
   "devices": ["elt/server/1", "elt/server/2",
                 "elt/server/3", "elt/server/4"]},
  {"group_name": "switches",
   "devices": ["elt/switch/A", "elt/switch/B"]},
  {"group_name": "pdus",
   "devices": ["elt/pdu/rackA", "elt/pdu/rackB"]},
  {"group_name": "racks",
   "subgroups": [
        {"group_name": "rackA",
         "devices": ["elt/server/1", "elt/server/2",
                       "elt/switch/A", "elt/pdu/rackA"]},
        {"group_name": "rackB",
         "devices": ["elt/server/3", "elt/server/4",
                       "elt/switch/B", "elt/pdu/rackB"],
         "subgroups": []}
   ]} ]
LoggingLevelDefault

Device property.

Default logging level at device startup. See LoggingLevel

LoggingTargetsDefault

Device property.

Default logging targets at device startup. See the project readme for details.

Off()

Turn the device off.

To modify behaviour for this command, modify the do() method of the command class.

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

Return type:

(ResultCode, str)

On()

Turn device on.

To modify behaviour for this command, modify the do() method of the command class.

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

Return type:

(ResultCode, str)

Reset()

Reset the device from the FAULT state.

To modify behaviour for this command, modify the do() method of the command class.

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

Return type:

(ResultCode, str)

SkaLevel

Device property.

Indication of importance of the device in the SKA hierarchy to support drill-down navigation: 1..6, with 1 highest.

Standby()

Put the device into standby mode.

To modify behaviour for this command, modify the do() method of the command class.

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

Return type:

(ResultCode, str)

TangoClassClass

alias of TalonLRUClass

TangoClassName = 'TalonLRU'
adminMode

Device attribute.

buildState

Device attribute.

controlMode

Device attribute.

healthState

Device attribute.

loggingLevel

Device attribute.

See LoggingLevel

loggingTargets

Device attribute.

testMode

Device attribute.

versionId

Device attribute.