# Smartline V2 Transmitter Series

class pymeasure.instruments.thyracont.smartline_v2.SmartlineV2(adapter, name='Thyracont SmartlineV2 Transmitter', baud_rate=115200, address=1, timeout=250, **kwargs)

  Bases: `Instrument`

  A Thyracont vacuum sensor transmitter of the Smartline V2 series.

  You may subclass this Instrument and add the appropriate channels, see the following example.

      from pymeasure.instruments import Instrument
      from pymeasure.instruments.thyractont import SmartlineV2

      PiezoAndPiraniInstrument(SmartlineV2):
          piezo = Instrument.ChannelCreator(Piezo)
          pirani = Instrument.ChannelCreator(Pirani)

  Communication Protocol v2 via RS485:

    - Everything is sent as ASCII characters

    - Package (bytes and usage):

        - 0-2 address, 3 access code, 4-5 command, 6-7 data length.

        - if data: 8-n data to be sent, n+1 checksum, n+2 carriage return

        - if no data: 8 checksum, 9 carriage return

    - Access codes (request: master->transmitter, response: transmitter->master):

        - read: 0, 1

        - write: 2, 3

        - factory default: 4,5

        - error: -, 7

        - binary 8, 9

    - Data length is number of data in bytes (padding with zeroes on left)

    - Checksum: Add the decimal numbers of the characters before, mod 64, add 64, show as ASCII.

  Parameters:

    adress – The device address in the range 1-16.

  class Sources(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)

    Bases: `IntEnum`

  property analog_output_setting

    Get current analog output setting. See manual.

  ask(command_message, query_delay=None)

    Ask for some value and check that the response matches the original command.

    Parameters:

      command_message (str) – Access code, command, length, and content. The command sent is compared to the response command.

  ask_manually(accessCode, command, data='', query_delay=None)

    Send a message to the transmitter and return its answer.

    Parameters:

      - accessCode – How to access the device.

      - command – Command to send to the device.

      - data – Data for the command.

      - query_delay (float) – Time to wait between writing and reading in seconds.

    Return str:

      Response from the device after error checking.

  property baud_rate

    Set the device baud rate.

  property bootloader_version

    Get the bootloader version.

  check_set_errors()

    Check the errors after setting a property.

  property device_address

    Set the device address.

  property device_serial

    Get the transmitter device serial number.

  property device_type

    Get the device type, like ‘VSR205’.

  property device_version

    Get the device hardware version.

  property display_data

    Control the display data source (strict SOURCES).

  property display_orientation

    Control the orientation of the display in relation to the pipe (‘top’, ‘bottom’).

  property display_unit

    Control the unit shown in the display. (‘mbar’, ‘Torr’, ‘hPa’)

  property firmware_version

    Get the firmware version.

  get_sensor_transition()

    Get the current sensor transition between sensors.

    return interpretation:
      - direct

          switch at 1 mbar.

      - continuous

          switch between 5 and 15 mbar.

      - F[float]T[float]

          switch between low and high value.

      - D[float]

          switch at value.

  property operating_hours

    Measure the operating hours.

  property pressure

    Get the current pressure of the default sensor in mbar

  property product_name

    Get the product name (article number).

  property range

    Get the measurement range in mbar.

  read(command=None)

    Read from the device and do error checking.

    Parameters:

      command (str) – Original command sent to the device to compare it with the response. None deactivates the check.

  property sensor_serial

    Get the sensor head serial number.

  set_continuous_sensor_transition(low, high)

    Set the sensor transition mode to “continuous” mode between low and high (floats).

  set_default_sensor_transition()

    Set the senstor transition mode to the default value, depends on the device.

  set_direct_sensor_transition(transition_point)

    Set the sensor transition to “direct” mode.

    Parameters:

      transition_point (float) – Switch between the sensors at that value.

  set_high(high='')

    Set the high pressure to high pressure in mbar.

  set_low(low='')

    Set the low pressure to low pressure in mbar.

  write(command)

    Write a command to the device.

  write_composition(accessCode, command, data='')

    Write a command with an accessCode and optional data to the device.

    Parameters:

      - accessCode – How to access the device.

      - command – Two char command string to send to the device.

      - data – Data for the command.

class pymeasure.instruments.thyracont.smartline_v2.VSH(adapter, name='Thyracont SmartlineV2 Transmitter', baud_rate=115200, address=1, timeout=250, **kwargs)

  Bases: `SmartlineV2`

  Vacuum transmitter of VSH series with both a pirani and a hot cathode sensor.

  hotcathode
    Channel:

      `HotCathode`

  pirani
    Channel:

      `Pirani`

class pymeasure.instruments.thyracont.smartline_v2.VSR(adapter, name='Thyracont SmartlineV2 Transmitter', baud_rate=115200, address=1, timeout=250, **kwargs)

  Bases: `SmartlineV2`

  Vacuum transmitter of VSR/VCR series with both a piezo and a pirani sensor.

  piezo
    Channel:

      `Piezo`

  pirani
    Channel:

      `Pirani`