TalonBoard Device
- class ska_mid_cbf_mcs.talon_board.talon_board_device.TalonBoard(cl, name)[source]
Bases:
CbfDevice
TANGO device class for consuming logs from the Tango devices run on the Talon boards, converting them to the SKA format, and outputting them via the logging framework.
- TalonDxBoardAddress
TANGO property
- InfluxDbPort
TANGO property
- InfluxDbOrg
TANGO property
- InfluxDbBucket
TANGO property
- InfluxDbAuthToken
TANGO property
- Instance
TANGO property
- TalonDxSysIdAddress
TANGO property
- TalonDx100GEthernetAddress
TANGO property
- TalonStatusAddress
TANGO property
- HpsMasterAddress
TANGO property
- subarrayID
The Subarray ID assigned to the board. This attribute is only used for labelling.
- dishID
The Dish ID assigned to the board. This attribute is only used for labelling.
- vccID
The VCC ID assigned to the board. This attribute is only used for labelling.
- ipAddr
IP Address
- pingResult
True if the last ping to the board was successful. False otherwise
- bitstreamVersion
FPGA bitstream version
- bitstreamChecksum
FPGA bitstream checksum
- iopllLockedFault
iopll_locked_fault
- fsIopllLockedFault
fs_iopll_locked_fault
- commsIopllLockedFault
comms_iopll_locked_fault
- systemClkFault
system_clk_fault
- emifBlFault
emif_bl_fault
- emifBrFault
emif_br_fault
- emifTrFault
emif_tr_fault
- ethernet0PllFault
e100g_0_pll_fault
- ethernet1PllFault
e100g_1_pll_fault
- slimPllFault
slim_pll_fault
- fpgaDieTemperature
FPGA Die Temperature
- fpgaDieVoltage0
Value of the 12V FPGA Die Voltage Sensor
- fpgaDieVoltage1
Value of the 2.5V FPGA Die Voltage Sensor
- fpgaDieVoltage2
Value of the VCC FPGA Die Voltage Sensor
- fpgaDieVoltage3
Value of the VCCIO_SDM FPGA Die Voltage Sensor
- fpgaDieVoltage4
Value of the VCCPT FPGA Die Voltage Sensor
- fpgaDieVoltage5
Value of the VCCERAM FPGA Die Voltage Sensor
- fpgaDieVoltage6
Value of the VCCADC FPGA Die Voltage Sensor
- humiditySensorTemperature
Humidity Sensor Temperature
- dimmTemperatures
DIMM Memory Module Temperatures. Array of size 4. Value set to 0 if not valid.
- mboTxTemperatures
MBO Tx Temperatures. Value set to 0 if not valid.
- mboTxVccVoltages
MBO Tx VCC 3.3 Voltages. Value set to 0 if not valid.
- mboTxFaultStatus
MBO Tx Fault Status. True = status set.
- mboTxLolStatus
MBO Tx Loss of Lock Status. True = status set.
- mboTxLosStatus
MBO Tx Loss of Signal Status. True = status set.
- mboRxVccVoltages
MBO Rx VCC 3.3 Voltages. Value set to 0 if not valid.
- mboRxLolStatus
MBO Rx Loss of Lock Status. True = status set.
- mboRxLosStatus
MBO Rx Loss of Signal Status. True = status set.
- hasFanControl
Indicates whether this board has control over the fans. If false, the board cannot correctly read fan speed and fault.
- fansPwm
Fan PWM values.
- fansPwmEnable
Fan PWM enable values.
- fansRpm
Fan RPM.
- fansFault
Fan Fault status.
- ltmInputVoltage
LTM Input Voltage. One entry per LTM.
- ltmOutputVoltage1
LTM Output Voltage 1. One entry per LTM
- ltmOutputVoltage2
LTM Output Voltage 2. One entry per LTM
- ltmInputCurrent
LTM Input Current. One entry per LTM.
- ltmOutputCurrent1
LTM Output Current 1. One entry per LTM
- ltmOutputCurrent2
LTM Output Current 2. One entry per LTM
- ltmTemperature1
LTM Temperature 1. One entry per LTM
- ltmTemperature2
LTM Temperature 2. One entry per LTM
- ltmVoltageWarning
True if any input or output voltage warnings is set. One entry per LTM
- ltmCurrentWarning
True if any input or output current warnings is set. One entry per LTM
- ltmTemperatureWarning
True if any temperature warnings is set. One entry per LTM
- eth100g0Counters
a list of counters at the 100g ethernet input in the following order: [0] cntr_tx_1519tomaxb [1] TxFrameOctetsOK [2] cntr_rx_1519tomaxb [3] RxFrameOctetsOK
- eth100g0ErrorCounters
a list of error counters at the 100g ethernet input in the following order: [0]: number of transmitted frames less than 64 bytes [1]: number of transmitted oversized frames [2]: number of transmitted CRC errors [3]: number of received frames less than 64 bytes [4]: number of received oversized frames [5]: number of received CRC errors
- eth100g0DataFlowActive
True if there is data flowing at the 100g ethernet input
- eth100g0HasDataError
True if any error counter is non-zero at the 100g ethernet input
- eth100g0AllTxCounters
the full list of Tx counters at the 100g ethernet input
- eth100g0AllRxCounters
the full list of Rx counters at the 100g ethernet input
- eth100g1Counters
a list of counters at the 100g ethernet output in the following order: [0] cntr_tx_1519tomaxb [1] TxFrameOctetsOK [2] cntr_rx_1519tomaxb [3] RxFrameOctetsOK
- eth100g1ErrorCounters
a list of error counters at the 100g ethernet output in the following order: [0]: number of transmitted frames less than 64 bytes [1]: number of transmitted oversized frames [2]: number of transmitted CRC errors [3]: number of received frames less than 64 bytes [4]: number of received oversized frames [5]: number of received CRC errors
- eth100g1DataFlowActive
True if there is data flowing at the 100g ethernet output
- eth100g1HasDataError
True if any error counter is non-zero at the 100g ethernet output
- eth100g1AllTxCounters
the full list of Tx counters at the 100g ethernet output
- eth100g1AllRxCounters
the full list of Rx counters at the 100g ethernet output
- healthStateReport
the HPS Master latest polled healthStateReport value
- create_component_manager() TalonBoardComponentManager [source]
Create and return a component manager for this device.
- Returns:
a component manager for this device.
- Abort() tuple[list[ska_control_model.result_code.ResultCode], list[str]]
Abort any executing long running command(s) and empty the queue.
- Returns:
A tuple containing a result code and the unique ID of the command
- AbortCommands() tuple[list[ska_control_model.result_code.ResultCode], list[str]]
Empty out long running commands in queue.
- Returns:
A tuple containing a return code and a string message indicating status. The message is for information purpose only.
- CheckLongRunningCommandStatus(argin: str) str
Check the status of a long running command by ID.
- Parameters:
argin – the command id
- Returns:
command status
- DebugDevice() int
Enable remote debugging of this device.
To modify behaviour for this command, modify the do() method of the command class:
DebugDeviceCommand
.- Returns:
the port the debugger is listening on
- DeviceID
TANGO property
- ExecutePendingOperations() None
Execute any Tango operations that have been pushed on the queue.
The poll time is initially 5ms, to circumvent the problem of device initialisation, but is reset to 100ms after the first pass.
- GetVersionInfo() list[str]
Return the version information of the device.
To modify behaviour for this command, modify the do() method of the command class.
- Returns:
The result code and the command unique ID
- GroupDefinitions
Device property.
Each string in the list is a JSON serialised dict defining the
group_name
,devices
andsubgroups
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
andsubgroups
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": []} ]} ]
- class InitCommand(device: Device, logger: Logger | None = None, validator: ArgumentValidator | None = None)[source]
Bases:
InitCommand
A class for the TalonBoard’s init_device() “command”.
- 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() tuple[list[ska_control_model.result_code.ResultCode], list[str]]
Turn device off.
- Returns:
A tuple containing a return code and a string message indicating status. The message is for information purpose only.
- On() tuple[list[ska_control_model.result_code.ResultCode], list[str]]
Turn device on.
- Returns:
A tuple containing a return code and a string message indicating status. The message is for information purpose only.
- Reset() tuple[list[ska_control_model.result_code.ResultCode], list[str]]
Reset the device; currently unimplemented in Mid.CBF
- Returns:
A tuple containing a return code and a string message indicating status. The message is for information purpose only.
- SkaLevel
Device property.
Indication of importance of the device in the SKA hierarchy to support drill-down navigation: 1..6, with 1 highest.
- Standby() tuple[list[ska_control_model.result_code.ResultCode], list[str]]
Put the device into standby mode; currently unimplemented in Mid.CBF
- Returns:
A tuple containing a return code and a string message indicating status. The message is for information purpose only.
- TangoClassClass
alias of
TalonBoardClass
- TangoClassName = 'TalonBoard'
- adminMode
Read the Admin Mode of the device.
- It may interpret the current device condition and condition of all managed
devices to set this. Most possibly an aggregate attribute.
- Returns:
Admin Mode of the device
- buildState
Read the Build State of the device.
- Returns:
the build state of the device
- commandedState
Read the last commanded operating state of the device.
Initial string is “None”. Only other strings it can change to is “OFF”, “STANDBY” or “ON”, following the start of the Off(), Standby(), On() or Reset() long running commands.
- Returns:
commanded operating state string.
- controlMode
Read the Control Mode of the device.
The control mode of the device are REMOTE, LOCAL Tango Device accepts only from a ‘local’ client and ignores commands and queries received from TM or any other ‘remote’ clients. The Local clients has to release LOCAL control before REMOTE clients can take control again.
- Returns:
Control Mode of the device
- healthState
Read the Health State of the device.
It interprets the current device condition and condition of all managed devices to set this. Most possibly an aggregate attribute.
- Returns:
Health State of the device
- loggingLevel
Read the logging level of the device.
Initialises to LoggingLevelDefault on startup. See
LoggingLevel
- Returns:
Logging level of the device.
- loggingTargets
Read the additional logging targets of the device.
Note that this excludes the handlers provided by the ska_ser_logging library defaults - initialises to LoggingTargetsDefault on startup.
- Returns:
Logging level of the device.
- longRunningCommandResult
Read the result of the completed long running command.
Reports unique_id, json-encoded result. Clients can subscribe to on_change event and wait for the ID they are interested in.
- Returns:
ID, result.
- lrcFinished
Read info of the finished long running commands.
- Returns:
a list of info JSON blobs of the finished long running commands.
- lrcProtocolVersions
Return supported protocol versions.
- Returns:
A tuple containing the lower and upper bounds of supported long running command protocol versions.
- simulationMode
Read the Simulation Mode of the device.
- Returns:
Simulation Mode of the device.
- testMode
Read the Test Mode of the device.
Either no test mode or an indication of the test mode.
- Returns:
Test Mode of the device
- versionId
Read the Version Id of the device.
- Returns:
the version id of the device