mahos.inst.pg.SpinCore_PulseBlasterESR_PRO#

class mahos.inst.pg.SpinCore_PulseBlasterESR_PRO(name, conf, prefix=None)#

SpinCore PulseBlasterESR-PRO Pulse Generator.

Parameters:
  • channels (dict[str | bytes, int]) – mapping from channel names to indices.

  • dll_dir (str) – (default: “C:SpinCoreSpinAPIlib” for windows, “~/.local/lib” for Linux) The directory containing dynamic link library (SpinAPI).

  • dll_name (str) – (default: “spinapi64.dll” for windows, “libspinapi.so” for Linux) The name of dynamic link library (SpinAPI).

  • board_index (int) – The index of PulseBlaster board. Required when multiple boards are connected.

  • freq (float) – (default: 500.0e6) Base frequency. Depends on the board type.

  • max_instructions (int) – (default: 4096) Max number of instructions. Depends on the board type.

  • verbose (bool) – (default: False) Set True to log every instuctions.

  • sanity_check (bool) – (default: False) Set True do sanity check on BlockSeq fix. Note that this can be very time-consuming for long pulse pattern.

__init__(name, conf, prefix=None)#

Methods

__init__(name, conf[, prefix])

channels_to_ints(channels)

channels_to_output(channels)

check_error(ret)

Check ret value of int function and log message if error.

check_inst(ret)

Check ret value of instruction function.

close_resources()

Close instrument resources.

configure(params[, label])

Configure the instrument settings.

configure_blocks(blocks, freq[, trigger_type])

Make sequence from blocks.

configure_blockseq(blockseq, freq[, ...])

Make sequence from blockseq.

fix_blockseq(blockseq)

Perform fix post-process of blockseq.

get(key[, args, label])

Get an instrument setting or measurement data.

get_status()

set(key[, value, label])

Set an instrument setting or commanding value.

start([label])

Start the instrument operation.

stop([label])

Stop the instrument operation.

trigger()

issue a software trigger.

validate_blocks(blocks, freq)

No pre-configure validation performed for now.

validate_blockseq(blockseq, freq)

No pre-configure validation performed for now.