herosdevices.hardware.sinara.booster - Heros Devices 0.6.1 documentation

Skip to content
Back to top
View this page

# herosdevices.hardware.sinara.booster

Hardware driver for the Booster RF amplifiers.

## Module Contents

class herosdevices.hardware.sinara.booster.Version

  Bases: `NamedTuple`

  A named tuple representing the version information of a device.

  fw_rev: str
  fw_hash: str
  fw_build_date: datetime.datetime
  device_id: str
  hw_rev: str

class herosdevices.hardware.sinara.booster.Status_short

  Bases: `NamedTuple`

  A named tuple representing the short version status information of a device.

  detected: bool
  enabled: bool
  interlock: bool
  output_power_mu: int
  reflected_power_mu: int
  I29V: float
  I6V: float
  V5VMP: float
  temp: float
  output_power: float
  reflected_power: float

class herosdevices.hardware.sinara.booster.Status_long

  Bases: `NamedTuple`

  A named tuple representing the long version status information of a device.

  detected: bool
  enabled: bool
  interlock: bool
  output_power_mu: int
  reflected_power_mu: int
  I29V: float
  I6V: float
  V5VMP: float
  temp: float
  output_power: float
  reflected_power: float
  input_power: float
  fan_speed: float
  error_occurred: bool
  hw_id: str
  i2c_error_count: int

herosdevices.hardware.sinara.booster.UNIT_MAP

class herosdevices.hardware.sinara.booster.Booster(device: str, port: int = 5000, read_timeout: float = 1, *_args, **_kwargs)

  Booster 8-channel RF Amplifier.

  dev
  get_version() → Version

    Return the device version information as a named tuple.

  ping() → bool

    Return True if we are connected to a Booster.

  set_enabled(channel: int, enabled: bool = True) → None

    Enable/disable a channel.

  get_enabled(channel: int) → bool

    Return True is the channel is enabled.

  get_detected(channel: int) → bool

    Return True is the channel is detected, otherwise False.

    Non-detected channels indicate a serious hardware error!

  get_status(channel: int) → Status_short | Status_long

    Return a named tuple containing information about the status of a given channel.

    Channel Status Fields
    Field | Description
    --- | ---
    detected | True if the channel is detected
    enabled | True if the channel was enabled
    interlock | True if the interlock has tripped for this channel
    output_power_mu | Output (forward) power detector raw ADC value
    reflected_power_mu | Output reverse power detector raw ADC value
    output_power | Output (forward) power (dBm)
    reflected_power | Output reverse power (dBm)
    input_power | Input power (dBm)
    I29V | Current consumption on the main 29V rail (A)
    I6V | Current consumption on the 6V (preamp) rail (A)
    V5VMP | Voltage on the 5VMP rail
    temp | Channel temperature (°C)
    fan_speed | Chassis fan speed (%)
    error_occurred | True if an error (e.g. over temperature) has occurred, otherwise False. Error conditions can only be cleared by power-cycling Booster.
    hw_id | Unique ID number for the channel
    i2c_error_count | Number of I2C bus errors that have been detected for this channel

  get_current(channel: int) → float

    Return the FET bias current (A) for a given channel.

  get_temperature(channel: int) → float

    Return the temperature (C) for a given channel.

  get_output_power(channel: int) → float

    Return the output (forwards) power for a channel in dBm.

  get_input_power(channel: int) → float

    Return the input power for a channel in dBm.

  get_reflected_power(channel: int) → float

    Return the reflected power for a channel in dBm.

  get_fan_speed() → float

    Return the fan speed as a number between 0 and 100.

  set_interlock(channel: int, threshold: float) → str | bool

    Set the output forward power interlock threshold (dBm) for a given channel channel.

    This setting is stored in non-volatile memory and retained across power cycles.

    Parameters:

      threshold – must lie between 0dBm and 38dBm

  get_interlock(channel: int) → float

    Return the output forward power interlock threshold (dBm) for a channel.

  clear_interlock(channel: int) → None

    Reset the forward and reverse power interlocks for a given channel.

  get_interlock_tripped(channel: int) → bool

    Return True if the output forwards or reverse power interlock has tripped for a given channel.

  get_forward_power_interlock_tripped(channel: int) → bool

    Return True if the output forwards power interlock has tripped for a given channel.

  get_reverse_power_interlock_tripped(channel: int) → bool

    Return True if the output forwards power interlock has tripped for a given channel.

  get_error_occurred(channel: int) → bool

    Return True if a device error (over temperature etc) has occurred on a given channel.

  teardown() → None

    Close the device connection.