QCM#

Parameters#

QCM.out0_offset()#

Sets/gets output 0 offset

Properties:
  • unit: V

  • value: <Numbers -2.5<=v<=2.5>

QCM.out1_offset()#

Sets/gets output 1 offset

Properties:
  • unit: V

  • value: <Numbers -2.5<=v<=2.5>

QCM.out2_offset()#

Sets/gets output 2 offset

Properties:
  • unit: V

  • value: <Numbers -2.5<=v<=2.5>

QCM.out3_offset()#

Sets/gets output 3 offset

Properties:
  • unit: V

  • value: <Numbers -2.5<=v<=2.5>

QCM.marker0_inv_en()#

Sets/gets output 0 marker invert enable

Properties:
  • value: <Boolean>

QCM.marker1_inv_en()#

Sets/gets output 1 marker invert enable

Properties:
  • value: <Boolean>

QCM.marker2_inv_en()#

Sets/gets output 2 marker invert enable

Properties:
  • value: <Boolean>

QCM.marker3_inv_en()#

Sets/gets output 3 marker invert enable

Properties:
  • value: <Boolean>

QCM.out0_latency()#

Gets the latency in output path 0. The output path can change depending on the filter configuration of the output.

Properties:
  • unit: s

  • value: None

QCM.out0_fir_config()#

Sets/gets the configuration of FIR filter for output 0. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out0_exp0_config()#

Sets/gets configuration of exponential overshoot filter 0 for output 0. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out0_exp1_config()#

Sets/gets configuration of exponential overshoot filter 1 for output 0. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out0_exp2_config()#

Sets/gets configuration of exponential overshoot filter 2 for output 0. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out0_exp3_config()#

Sets/gets configuration of exponential overshoot filter 3 for output 0. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out0_ihp_config()#

Sets/gets the configuration of the inverse high-pass filter for output 0. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out0_fir_coeffs()#

Sets/gets the coefficients for the FIR filter for output 0

Properties:
  • value: <Sequence : len: 32 sorted: False <Numbers -2<=v<=1.99>>

QCM.out0_exp0_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 0

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out0_exp0_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 0

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out0_exp0_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 0 for output 0

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out0_exp1_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 0

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out0_exp1_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 0

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out0_exp1_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 1 for output 0

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out0_exp2_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 0

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out0_exp2_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 0

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out0_exp2_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 2 for output 0

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out0_exp3_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 0

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out0_exp3_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 0

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out0_exp3_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 3 for output 0

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out0_ihp_tau_constant()#

Sets/gets the time constant (nanoseconds) of the inverse high-pass filter for output 0

Added in firmware version 2.1.0.

Properties:
  • unit: s

  • value: <Numbers 1e-08<=v<=0.134>

QCM.out0_ihp_reset()#

Reset the inverse high-pass filter for output 0.

Added in firmware version 2.1.0.

Properties:
  • value: None

QCM.out1_latency()#

Gets the latency in output path 1. The output path can change depending on the filter configuration of the output.

Properties:
  • unit: s

  • value: None

QCM.out1_fir_config()#

Sets/gets the configuration of FIR filter for output 1. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out1_exp0_config()#

Sets/gets configuration of exponential overshoot filter 0 for output 1. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out1_exp1_config()#

Sets/gets configuration of exponential overshoot filter 1 for output 1. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out1_exp2_config()#

Sets/gets configuration of exponential overshoot filter 2 for output 1. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out1_exp3_config()#

Sets/gets configuration of exponential overshoot filter 3 for output 1. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out1_ihp_config()#

Sets/gets the configuration of the inverse high-pass filter for output 1. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out1_fir_coeffs()#

Sets/gets the coefficients for the FIR filter for output 1

Properties:
  • value: <Sequence : len: 32 sorted: False <Numbers -2<=v<=1.99>>

QCM.out1_exp0_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 1

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out1_exp0_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 1

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out1_exp0_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 0 for output 1

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out1_exp1_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 1

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out1_exp1_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 1

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out1_exp1_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 1 for output 1

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out1_exp2_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 1

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out1_exp2_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 1

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out1_exp2_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 2 for output 1

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out1_exp3_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 1

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out1_exp3_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 1

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out1_exp3_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 3 for output 1

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out1_ihp_tau_constant()#

Sets/gets the time constant (nanoseconds) of the inverse high-pass filter for output 1

Added in firmware version 2.1.0.

Properties:
  • unit: s

  • value: <Numbers 1e-08<=v<=0.134>

QCM.out1_ihp_reset()#

Reset the inverse high-pass filter for output 1.

Added in firmware version 2.1.0.

Properties:
  • value: None

QCM.out2_latency()#

Gets the latency in output path 2. The output path can change depending on the filter configuration of the output.

Properties:
  • unit: s

  • value: None

QCM.out2_fir_config()#

Sets/gets the configuration of FIR filter for output 2. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out2_exp0_config()#

Sets/gets configuration of exponential overshoot filter 0 for output 2. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out2_exp1_config()#

Sets/gets configuration of exponential overshoot filter 1 for output 2. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out2_exp2_config()#

Sets/gets configuration of exponential overshoot filter 2 for output 2. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out2_exp3_config()#

Sets/gets configuration of exponential overshoot filter 3 for output 2. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out2_ihp_config()#

Sets/gets the configuration of the inverse high-pass filter for output 2. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out2_fir_coeffs()#

Sets/gets the coefficients for the FIR filter for output 2

Properties:
  • value: <Sequence : len: 32 sorted: False <Numbers -2<=v<=1.99>>

QCM.out2_exp0_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 2

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out2_exp0_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 2

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out2_exp0_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 0 for output 2

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out2_exp1_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 2

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out2_exp1_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 2

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out2_exp1_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 1 for output 2

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out2_exp2_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 2

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out2_exp2_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 2

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out2_exp2_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 2 for output 2

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out2_exp3_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 2

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out2_exp3_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 2

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out2_exp3_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 3 for output 2

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out2_ihp_tau_constant()#

Sets/gets the time constant (nanoseconds) of the inverse high-pass filter for output 2

Added in firmware version 2.1.0.

Properties:
  • unit: s

  • value: <Numbers 1e-08<=v<=0.134>

QCM.out2_ihp_reset()#

Reset the inverse high-pass filter for output 2.

Added in firmware version 2.1.0.

Properties:
  • value: None

QCM.out3_latency()#

Gets the latency in output path 3. The output path can change depending on the filter configuration of the output.

Properties:
  • unit: s

  • value: None

QCM.out3_fir_config()#

Sets/gets the configuration of FIR filter for output 3. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out3_exp0_config()#

Sets/gets configuration of exponential overshoot filter 0 for output 3. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out3_exp1_config()#

Sets/gets configuration of exponential overshoot filter 1 for output 3. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out3_exp2_config()#

Sets/gets configuration of exponential overshoot filter 2 for output 3. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out3_exp3_config()#

Sets/gets configuration of exponential overshoot filter 3 for output 3. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out3_ihp_config()#

Sets/gets the configuration of the inverse high-pass filter for output 3. If ‘bypassed’, the filter is disabled. If ‘delay_comp’, the filter is bypassed, but the output is delayed as if it were applied. If ‘enabled’, the filter is enabled.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘enabled’, ‘bypassed’, ‘delay_comp’}>

QCM.out3_fir_coeffs()#

Sets/gets the coefficients for the FIR filter for output 3

Properties:
  • value: <Sequence : len: 32 sorted: False <Numbers -2<=v<=1.99>>

QCM.out3_exp0_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 3

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out3_exp0_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 0 for output 3

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out3_exp0_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 0 for output 3

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out3_exp1_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 3

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out3_exp1_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 1 for output 3

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out3_exp1_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 1 for output 3

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out3_exp2_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 3

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out3_exp2_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 2 for output 3

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out3_exp2_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 2 for output 3

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out3_exp3_time_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 3

Properties:
  • unit: ns

  • value: <Numbers v>=6>

QCM.out3_exp3_tau_constant()#

Sets/gets the time constant of the exponential overshoot filter 3 for output 3

Properties:
  • unit: s

  • value: <Numbers v>=6e-09>

QCM.out3_exp3_amplitude()#

Sets/gets the amplitude of the exponential overshoot filter 3 for output 3

Properties:
  • value: <Numbers -1<=v<=1>

QCM.out3_ihp_tau_constant()#

Sets/gets the time constant (nanoseconds) of the inverse high-pass filter for output 3

Added in firmware version 2.1.0.

Properties:
  • unit: s

  • value: <Numbers 1e-08<=v<=0.134>

QCM.out3_ihp_reset()#

Reset the inverse high-pass filter for output 3.

Added in firmware version 2.1.0.

Properties:
  • value: None

QCM.marker0_fir_config()#

Delay compensation config for the FIR filter on marker 0. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker0_exp0_config()#

Delay compensation config for the exponential overshoot filter 0 on marker 0. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker0_exp1_config()#

Delay compensation config for the exponential overshoot filter 1 on marker 0. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker0_exp2_config()#

Delay compensation config for the exponential overshoot filter 2 on marker 0. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker0_exp3_config()#

Delay compensation config for the exponential overshoot filter 3 on marker 0. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker0_ihp_config()#

Delay compensation config for the IHP filter on marker 0. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker1_fir_config()#

Delay compensation config for the FIR filter on marker 1. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker1_exp0_config()#

Delay compensation config for the exponential overshoot filter 0 on marker 1. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker1_exp1_config()#

Delay compensation config for the exponential overshoot filter 1 on marker 1. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker1_exp2_config()#

Delay compensation config for the exponential overshoot filter 2 on marker 1. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker1_exp3_config()#

Delay compensation config for the exponential overshoot filter 3 on marker 1. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker1_ihp_config()#

Delay compensation config for the IHP filter on marker 1. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker2_fir_config()#

Delay compensation config for the FIR filter on marker 2. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker2_exp0_config()#

Delay compensation config for the exponential overshoot filter 0 on marker 2. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker2_exp1_config()#

Delay compensation config for the exponential overshoot filter 1 on marker 2. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker2_exp2_config()#

Delay compensation config for the exponential overshoot filter 2 on marker 2. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker2_exp3_config()#

Delay compensation config for the exponential overshoot filter 3 on marker 2. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker2_ihp_config()#

Delay compensation config for the IHP filter on marker 2. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker3_fir_config()#

Delay compensation config for the FIR filter on marker 3. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker3_exp0_config()#

Delay compensation config for the exponential overshoot filter 0 on marker 3. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker3_exp1_config()#

Delay compensation config for the exponential overshoot filter 1 on marker 3. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker3_exp2_config()#

Delay compensation config for the exponential overshoot filter 2 on marker 3. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker3_exp3_config()#

Delay compensation config for the exponential overshoot filter 3 on marker 3. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.marker3_ihp_config()#

Delay compensation config for the IHP filter on marker 3. If ‘bypassed’, the marker is not delayed. If ‘enabled’, the marker is delayed.

Added in firmware version 2.1.0.

Properties:
  • value: <Enum: {‘bypassed’, ‘delay_comp’}>

QCM.out0_net_zero_pulse_amplitude()#

Sets/gets output 0 net-zero pulse amplitude.

Properties:
  • unit: V/V_max

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroAmplitudeValidator object at 0x7ce2b295e7b0>

QCM.out0_net_zero_pulse_slew_rate()#

Sets/gets output 0 net-zero pulse slew rate.

Properties:
  • unit: V/V_max/s

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroSlewRateValidator object at 0x7ce2b295e510>

QCM.out0_net_zero_pulse_en()#

Sets/gets whether the net-zero pulse is enabled on output 0.

Properties:
  • value: <MultiTypeAnd: NetZeroEnableValidator(bool), Boolean>

QCM.out1_net_zero_pulse_amplitude()#

Sets/gets output 1 net-zero pulse amplitude.

Properties:
  • unit: V/V_max

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroAmplitudeValidator object at 0x7ce2b25b0690>

QCM.out1_net_zero_pulse_slew_rate()#

Sets/gets output 1 net-zero pulse slew rate.

Properties:
  • unit: V/V_max/s

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroSlewRateValidator object at 0x7ce2b25b0a50>

QCM.out1_net_zero_pulse_en()#

Sets/gets whether the net-zero pulse is enabled on output 1.

Properties:
  • value: <MultiTypeAnd: NetZeroEnableValidator(bool), Boolean>

QCM.out2_net_zero_pulse_amplitude()#

Sets/gets output 2 net-zero pulse amplitude.

Properties:
  • unit: V/V_max

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroAmplitudeValidator object at 0x7ce2b25b1090>

QCM.out2_net_zero_pulse_slew_rate()#

Sets/gets output 2 net-zero pulse slew rate.

Properties:
  • unit: V/V_max/s

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroSlewRateValidator object at 0x7ce2b25b1450>

QCM.out2_net_zero_pulse_en()#

Sets/gets whether the net-zero pulse is enabled on output 2.

Properties:
  • value: <MultiTypeAnd: NetZeroEnableValidator(bool), Boolean>

QCM.out3_net_zero_pulse_amplitude()#

Sets/gets output 3 net-zero pulse amplitude.

Properties:
  • unit: V/V_max

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroAmplitudeValidator object at 0x7ce2b26ecc30>

QCM.out3_net_zero_pulse_slew_rate()#

Sets/gets output 3 net-zero pulse slew rate.

Properties:
  • unit: V/V_max/s

  • value: <qblox_instruments.qcodes_drivers.real_mode_validators.NetZeroSlewRateValidator object at 0x7ce2b26ecd60>

QCM.out3_net_zero_pulse_en()#

Sets/gets whether the net-zero pulse is enabled on output 3.

Properties:
  • value: <MultiTypeAnd: NetZeroEnableValidator(bool), Boolean>

QCM.present()#

Sets/gets module present status for slot {} in the Cluster.

Properties:
  • value: <Boolean>

QCM.connected()#

Gets module connected status for slot {} in the Cluster.

Properties:
  • value: <Boolean>

Methods#

QCM.arm_sequencer(sequencer: int | None = None) None#

Prepare the indexed sequencer to start by putting it in the armed state. If no sequencer index is given, all sequencers are armed. Any sequencer that was already running is stopped and rearmed. If an invalid sequencer index is given, an error is set in system error.

Parameters:

sequencer (Optional[int]) – Sequencer index.

Raises:

RuntimeError – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster.arm_sequencer using functools.partial

QCM.clear_router() None#

Reset SMF router configuration.

Raises:

Exception – Invalid input parameter type.

QCM.clear_sequencer_flags(sequencer: int | None = None) None#

Clear flags.

Parameters:

sequencer (int) – Sequencer index.

Note

This method calls Cluster.clear_sequencer_flags using functools.partial

QCM.connect_sequencer(sequencer: int, *connections: str) None#

Makes new connections between the indexed sequencer and some inputs and/or outputs. This will fail if a requested connection already existed, or if the connection could not be made due to a conflict with an existing connection (hardware constraints). In such a case, the channel map will not be affected.

Parameters:
  • sequencer (int) – Sequencer index

  • *connections (str) – Zero or more connections to make, each specified using a string. The string should have the format <direction><channel> or <direction><I-channel>_<Q-channel>. <direction> must be in to make a connection between an input and the acquisition path, out to make a connection from the waveform generator to an output, or io to do both. The channels must be integer channel indices. If only one channel is specified, the sequencer operates in real mode; if two channels are specified, it operates in complex mode.

Raises:
  • RuntimeError – If the connection command could not be completed due to a conflict.

  • ValueError – If parsing of a connection fails.

Note

This method calls Cluster.connect_sequencer using functools.partial

QCM.disconnect_inputs() None#

Disconnects all inputs from the acquisition paths of the sequencers.

Note

This method calls Cluster.disconnect_inputs using functools.partial

QCM.disconnect_outputs() None#

Disconnects all outputs from the waveform generator paths of the sequencers.

Note

This method calls Cluster.disconnect_outputs using functools.partial

QCM.get_assembler_log() str#

Get assembler log.

Returns:

Assembler log.

Return type:

str

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster.get_assembler_log using functools.partial

QCM.get_assembler_status() bool#

Get assembler status. Refer to the assembler log to get more information regarding the assembler result.

Returns:

Assembler status (False = failed, True = success).

Return type:

bool

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster.get_assembler_status using functools.partial

QCM.get_out0_net_zero_pulse_status(*, output: int = 0) Any#

Get the live status of the net zero pulse block

Parameters:

output (int) – Associated output

Returns:

Status: operation_status, error_overflow, warning_re_triggered

Return type:

Any

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster._get_net_zero_pulse_status using functools.partial

QCM.get_out1_net_zero_pulse_status(*, output: int = 1) Any#

Get the live status of the net zero pulse block

Parameters:

output (int) – Associated output

Returns:

Status: operation_status, error_overflow, warning_re_triggered

Return type:

Any

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster._get_net_zero_pulse_status using functools.partial

QCM.get_out2_net_zero_pulse_status(*, output: int = 2) Any#

Get the live status of the net zero pulse block

Parameters:

output (int) – Associated output

Returns:

Status: operation_status, error_overflow, warning_re_triggered

Return type:

Any

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster._get_net_zero_pulse_status using functools.partial

QCM.get_out3_net_zero_pulse_status(*, output: int = 3) Any#

Get the live status of the net zero pulse block

Parameters:

output (int) – Associated output

Returns:

Status: operation_status, error_overflow, warning_re_triggered

Return type:

Any

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster._get_net_zero_pulse_status using functools.partial

QCM.get_router_config() dict | None#

Get the SMF router configuration for the module.

Returns:

The router configuration.

Return type:

Optional[dict]

Raises:

TypeError – Non SMF modules do not support local routing.

QCM.get_sequencer_isa_version(sequencer: int) tuple[int, int]#

Return the sequencer ISA version.

Parameters:

sequencer (int) – Sequencer index.

Returns:

Sequencer version, in (major, minor) format.

Return type:

tuple[int, int]

Note

This method calls Cluster.get_sequencer_isa_version using functools.partial

QCM.get_sequencer_registers(sequencer: int, registers: list[str] | None = None) dict[str, int]#

Get registers of the indexed sequencer. The register structure is a mapping of register name to register value. If an invalid sequencer index is given, an error is set in system error.

Parameters:
  • sequencer (int) – Sequencer index.

  • registers (Optional[list[str]]) – Optionally, a list of registers to fetch. If absent, all registers will be fetched.

Returns:

Current register values.

Return type:

dict[str, int]

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster.get_sequencer_registers using functools.partial

QCM.get_sequencer_status(sequencer: int, timeout: int = 0, timeout_poll_res: float = 0.02) qblox_instruments.native.definitions.SequencerStatus#

Get the sequencer status. If an invalid sequencer index is given, an error is set in system error. If the timeout is set to zero, the function returns the state immediately. If a positive non-zero timeout is set, the function blocks until the sequencer completes. If the sequencer hasn’t stopped before the timeout expires, a TimeoutError is thrown.

Parameters:
  • sequencer (int) – Sequencer index.

  • timeout (int) – Timeout in minutes.

  • timeout_poll_res (float) – Timeout polling resolution in seconds.

Returns:

Tuple containing sequencer status and corresponding flags.

Return type:

SequencerStatus

Raises:

TimeoutError – Timeout

Note

This method calls Cluster.get_sequencer_status using functools.partial

QCM.get_waveforms(sequencer: int, *, as_numpy: bool = False) dict#

Get all waveforms in the AWG waveform list of indexed sequencer.

The returned dictionary is structured as follows:

  • name: waveform name.

    • data: waveform samples in a range of 1.0 to -1.0.

    • index: waveform index used by the sequencer Q1ASM program to refer

      to the waveform.

Parameters:
  • sequencer (int) – Sequencer index.

  • as_numpy (bool) – Whether to return data as NumPy arrays instead of Python lists.

Returns:

Dictionary with waveforms.

Return type:

dict

Note

This method calls Cluster.get_waveforms using functools.partial

QCM.reconnect() None#

Close and re-open connection to slot.

QCM.set_local_route(id_: int | list[int], sequencers: collections.abc.Iterable[qblox_instruments.qcodes_drivers.sequencer.Sequencer] | None = None) None#

Sets up local routing for a specific module.

The message with the given id is routed locally within the module. If no sequencers are specified, all sequencers in the module receive the message, otherwise, only the listed sequencers receive it.

Parameters:
  • id (Union[int, list[int]]) – The ID (internally referred to as event_id for the event processor).

  • sequencers (Optional[Iterable[int]]) – The sequencers to route the message to.

Raises:
  • Exception – Invalid input parameter type.

  • TypeError – Non SMF modules do not support local routing.

QCM.set_sequencer_registers(sequencer: int, registers: dict[str, int]) None#

Set registers of the indexed sequencer. The register structure is a mapping of register name to register value. If an invalid sequencer index is given, an error is set in system error.

Parameters:
  • sequencer (int) – Sequencer index.

  • registers (dict[str, int]) – Optionally, a list of registers to fetch. If absent, all registers will be fetched.

Raises:
  • Exception – Invalid input parameter type.

  • Exception – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster.set_sequencer_registers using functools.partial

QCM.start_sequencer(sequencer: int | None = None) None#

Start the indexed sequencer, thereby putting it in the running state. If an invalid sequencer index is given or the indexed sequencer was not yet armed, an error is set in system error. If no sequencer index is given, all armed sequencers are started and any sequencer not in the armed state is ignored. However, if no sequencer index is given and no sequencers are armed, and error is set in system error.

Parameters:

sequencer (Optional[int]) – Sequencer index.

Raises:

RuntimeError – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster.start_sequencer using functools.partial

QCM.stop_sequencer(sequencer: int | None = None) None#

Stop the indexed sequencer, thereby putting it in the stopped state. If an invalid sequencer index is given, an error is set in system error. If no sequencer index is given, all sequencers are stopped.

Parameters:

sequencer (Optional[int]) – Sequencer index.

Raises:

RuntimeError – An error is reported in system error and debug <= 1. All errors are read from system error and listed in the exception.

Note

This method calls Cluster.stop_sequencer using functools.partial

QCM.update_sequence(sequencer: int, erase_existing: bool = False, immediate_asm_install: bool = True, **sequence_args: Unpack[qblox_instruments.types.Sequence]) None#

Update sequencer program, AWG waveforms, acquisition weights and/or acquisitions from a series of keyword arguments. By default, the update is cumulative i.e. existing waveforms/weights/acquisitions are kept on the sequencer and new ones are added (as long as indexes or names aren’t reused).

For example:

sequencer.update_sequence(
    waveforms={"wave0": {"index": 0, "data": [0.0, 0.1, 0.2, 0.3]}},
    weights={"weight0": {"index": 0, "data": [0.0, 0.1, 0.2, 0.3]}},
    erase_existing=False
)

will add one waveform and one weight to the sequencer, without either removing currently uploaded waveforms and weights, or clearing program or acquisitions.

If the erase_existing parameter is passed, then the update is destructive i.e. existing program/waveforms/weights/acquisitions will be completely overwritten with the new ones.

For example:

 sequencer.update_sequence(
     program="play 0,0,100\nstop",
     acquisitions={"acq0": {"index": 0, "num_bins": 1}},
     erase_existing=True
)

will completely replace the program and the acquisitions on the sequencer, but will not touch currently uploaded waveforms and weights.

Parameters:
  • sequencer (int) – Sequencer index.

  • erase_existing (bool) – Whether existing waveforms/weights/acquisitions should be erased before adding new ones.

  • immediate_asm_install (bool) – Whether the sequencer program should be installed immediately. If True, the sequencer is stopped to install the program. If False, program will be just compiled, installation will happen on the next sequence arm.

  • **sequence_args (dict) – Sequence dictionary in keyword arguments format.

Raises:

fastjsonschema.JsonSchemaValueException – Invalid JSON object.

Note

This method calls Cluster.update_sequence using functools.partial

QCM.validate_connections(sequencer: int, *connections: str) list[qblox_instruments.native.helpers.ValidatedChannelConnection]#