libm2k Module
-
libm2k.
ALWAYS
= 0 ALWAYS - Disable analog trigger;
-
libm2k.
ANALOG
= 1 ANALOG - Trigger condition specified only by analog trigger (CH1 and CH2)
-
class
libm2k.
CALIBRATION_PARAMETERS
Bases:
object
Calibration parameters of m2k
-
adc_gain_ch_1
ADC calibration gain - channel 1
-
adc_gain_ch_2
ADC calibration gain - channel 2
-
adc_offset_ch_1
ADC calibration offset - channel 1
-
adc_offset_ch_2
ADC calibration offset - channel 2
-
dac_a_gain
DAC calibration gain - channel 1
-
dac_a_offset
DAC calibration offset - channel 1
-
dac_b_gain
DAC calibration gain - channel 2
-
dac_b_offset
DAC calibration offset - channel 2
-
thisown
The membership flag
-
-
libm2k.
CHANNEL_1
= 0 CHANNEL_1 - trigger events on analog CHANNEL_1 trigger the AnalogIn interface
-
libm2k.
CHANNEL_2
= 1 CHANNEL_2 - trigger events on analog CHANNEL_2 trigger the AnalogIn interface
-
class
libm2k.
CONTEXT_INFO
Bases:
object
Additional information about the context
-
id_product
Product ID extracted from IIO context
-
id_vendor
Vendor ID extracted from IIO context
-
manufacturer
Manufacturer extracted from IIO context
-
product
Product name extracted from IIO context
-
serial
Serial number
-
thisown
The membership flag
-
uri
IIO context URI
-
-
class
libm2k.
Context
(*args, **kwargs) Bases:
object
-
deinitialize
()
-
getAllDevices
() Retrieve all the available devices :rtype: std::unordered_set< std::string > :return: a list of strings containing all the devices
-
getAllDmm
() Retrieve all the DMM objects :rtype: std::vector< libm2k::analog::DMM *,std::allocator< libm2k::analog::DMM * > > :return: A list of DMM objects
-
getAvailableContextAttributes
() Retrieve all the available context attributes :rtype: std::vector< std::string,std::allocator< std::string > > :return: A list of strings containg all the context attributes
-
getContextAttributeValue
(attr) Retrieve the value of one context attribute :type attr: string :param attr: The name of the required attribute :rtype: string :return: On success, return a string containing the value of the attribute :raises: On error, throw an exception if the attribute is not found
-
getContextDescription
() Retrieve a detailed context description :rtype: string :return: string containing the current context description
-
getDMM
(*args) Overload 1:
Retrieve the DMM object at a certain index :type index: int :param index: The index corresponding to the DMM :rtype:
DMM
:return: On success, a pointer to a DMM object :rtype:DMM
:return: On error, nullptr is returnedOverload 2:
Retrieve the DMM object which has the provided name :type name: string :param name: The name corresponding to the DMM :rtype:
DMM
:return: On success, a pointer to a DMM object :rtype:DMM
:return: On error, nullptr is returned
-
getDmmCount
() Retrieve the number of DMM objects :rtype: int :return: an unsigned int representing the number of DMM objects in the context
-
getFirmwareVersion
() Retrieve the firmware version of the current context :rtype: string :return: a string containing the firmware version
-
getIioContext
() Retrieve the iio context :rtype: iio_context :return: A pointer to the iio context
-
getIioContextVersion
() Get the version of the backend in use :rtype:
IIO_CONTEXT_VERSION
:return: IIO_CONTEXT_VERSION struct
-
getSerialNumber
() Retrieve the current context serial number :rtype: string :return: string containing the current context serial number
-
getUri
() Get the URI of the current context :rtype: string :return: string containt the context URI (ex: “usb:1.2.3”, “ip:192.168.2.1”)
-
logAllAttributes
() Log all the attributes Notes: The logging system should be enabled
-
reset
()
-
setTimeout
(timeout) Set a timeout for I/O operations :type timeout: int :param timeout: A positive integer representing the time in milliseconds after which a timeout occurs. A value of 0 is used to specify that no timeout should occur.
-
thisown
The membership flag
-
toGeneric
() Convert the current context to Generic context, if possible :rtype:
Generic
:return: On success, return the corresponding Generic object :rtype:Generic
:return: On error, return a nullptr
-
-
class
libm2k.
ContextBuilder
Bases:
object
-
static
contextClose
(arg1, deinit=True)
-
static
contextCloseAll
()
-
static
contextOpen
(*args) Overload 1:
Overload 2:
Overload 3:
-
static
enableLogging
(enable)
-
static
getAllContexts
()
-
static
getContextsInfo
()
-
static
getVersion
()
-
static
m2kOpen
(*args) Overload 1:
Overload 2:
Overload 3:
-
thisown
The membership flag
-
static
-
libm2k.
ContextBuilder_contextClose
(arg1, deinit=True)
-
libm2k.
ContextBuilder_contextCloseAll
()
-
libm2k.
ContextBuilder_contextOpen
(*args) Overload 1:
Overload 2:
Overload 3:
-
libm2k.
ContextBuilder_enableLogging
(enable)
-
libm2k.
ContextBuilder_getAllContexts
()
-
libm2k.
ContextBuilder_getContextsInfo
()
-
libm2k.
ContextBuilder_getVersion
()
-
libm2k.
ContextBuilder_m2kOpen
(*args) Overload 1:
Overload 2:
Overload 3:
-
class
libm2k.
DMM
(*args, **kwargs) Bases:
object
-
getAllChannels
() Retrieve all channels
Return type: std::vector< std::string,std::allocator< std::string > > Returns: A list containing the name of all channels
-
getName
() Retrieve the device’s name
Return type: string Returns: The name of the device
-
readAll
() Retrieve additional information about all channels
Return type: std::vector< libm2k::analog::DMM_READING,std::allocator< libm2k::analog::DMM_READING > > Returns: A list containing structures for each channel
-
readChannel
(*args) Overload 1:
Retrieve additional information about the given channel
Parameters: index (int) – The index corresponding to the channel Return type: DMM_READING
Returns: A structure containing additional information Overload 2:
Retrieve additional information about the given channel
Parameters: chn_name (string) – The name corresponding to the channel Return type: DMM_READING
Returns: A structure containing additional information
-
reset
()
-
thisown
The membership flag
-
-
class
libm2k.
DMMReading
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
DMM_READING
Bases:
object
The structure of a DMM
-
id
Channel’s id
-
name
The name of the channel
-
thisown
The membership flag
-
unit_name
Unit of measurement
-
unit_symbol
Unit symbol
-
value
The measured value
-
-
class
libm2k.
DMMs
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
libm2k.
EXTERNAL
= 2 EXTERNAL - Trigger condition specified only by external trigger (TI)
-
class
libm2k.
Generic
(*args, **kwargs) Bases:
libm2k.Context
-
getAnalogIn
(*args)
-
getAnalogInCount
()
-
getAnalogOut
(*args)
-
getAnalogOutCount
()
-
thisown
The membership flag
-
-
class
libm2k.
GenericAnalogIn
(*args, **kwargs) Bases:
object
-
enableChannel
(index, enable)
-
getAvailableSampleRates
(*args)
-
getDeviceName
()
-
getIioObjects
()
-
getMaximumSamplerate
(*args)
-
getNbChannels
()
-
getSampleRate
(*args)
-
getSamplesInterleaved
(nb_samples)
-
getSamplesRawInterleaved
(nb_samples)
-
setKernelBuffersCount
(count)
-
setSampleRate
(*args)
-
thisown
The membership flag
-
-
class
libm2k.
GenericAnalogOut
(*args, **kwargs) Bases:
object
-
enableChannel
(chnIdx, enable)
-
getAvailableSampleRates
()
-
getCyclic
(chn)
-
getName
()
-
getSampleRate
(*args)
-
isChannelEnabled
(chnIdx)
-
push
(*args)
-
pushRaw
(*args)
-
setCyclic
(*args)
-
setSampleRate
(*args)
-
stop
()
-
thisown
The membership flag
-
-
class
libm2k.
IIO_CONTEXT_VERSION
Bases:
object
The version of the backend
-
git_tag
git tag
-
major
major version
-
minor
minor version
-
thisown
The membership flag
-
-
class
libm2k.
IIO_OBJECTS
Bases:
object
-
buffers_rx
-
buffers_tx
-
channels_in
-
channels_out
-
context
-
devices
-
thisown
The membership flag
-
-
class
libm2k.
IioBuffers
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
IioChannels
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
IioDevices
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
Lidar
(*args, **kwargs) Bases:
libm2k.Context
-
channelEnableDisable
(channel, enable)
-
disableChannelSequencer
()
-
enableChannelSequencer
()
-
laserDisable
()
-
laserEnable
()
-
readChannels
(nb_samples)
-
setApdBias
(bias)
-
setChannelSequencerOpModeAuto
()
-
setChannelSequencerOpModeManual
()
-
setChannelSequencerOrderAutoMode
(order)
-
setChannelSequencerOrderManualMode
(order)
-
setLaserFrequency
(frequency)
-
setLaserPulseWidth
(pulse_width)
-
setSequencerPulseDelay
(ns)
-
setTiltVoltage
(voltage)
-
thisown
The membership flag
-
-
class
libm2k.
M2k
(*args, **kwargs) Bases:
libm2k.Context
-
calibrate
()
-
calibrateADC
() Calibrate the ADC
Return type: boolean Returns: On succces, true Return type: boolean Returns: Otherwise, false
-
calibrateDAC
() Calibrate the DAC
Return type: boolean Returns: On succces, true Return type: boolean Returns: Otherwise, false
-
calibrateFromContext
() Calibrate both ADC and DACs using predefined calibration values located in context :rtype: float :return: The closest temperature found in the lookup table
Notes: Only available from firmware v0.26.
-
deinitialize
()
-
getAdcCalibrationGain
(chn) Get the calibration gain of the ADC
Parameters: chn (int) – The index corresponding to a channel Return type: float Returns: The value of the calibration gain
-
getAdcCalibrationOffset
(chn) Get the calibration offset of the ADC
Parameters: chn (int) – The index corresponding to a channel Return type: int Returns: The value of the calibration offset
-
getAllAnalogIn
()
-
getAllAnalogOut
()
-
getAnalogIn
(*args) Overload 1:
Retrieve the AnalogIn object
Return type: M2kAnalogIn
Returns: On success, a pointer to an AnalogIn object Return type: M2kAnalogIn
Returns: On error, null is returned Overload 2:
Retrieve the AnalogIn object of a device
Parameters: dev_name (string) – The name corresponding to a device Return type: M2kAnalogIn
Returns: On success, a pointer to an AnalogIn object Return type: M2kAnalogIn
Returns: If the name does not correspond to any device, null is returned
-
getAnalogOut
() Retrieve the AnalogOut object
Return type: M2kAnalogOut
Returns: On success, a pointer to an AnalogOut object Return type: M2kAnalogOut
Returns: On error, null is returned
-
getDacCalibrationGain
(chn) Get the calibration gain of the DAC
Parameters: chn (int) – The index corresponding to a channel Return type: float Returns: The value of the calibration gain
-
getDacCalibrationOffset
(chn) Get the calibration offset of the DAC
Parameters: chn (int) – The index corresponding to a channel Return type: int Returns: The value of the calibration offset
-
getDigital
() Retrieve the Digital object
Return type: M2kDigital
Returns: On success, a pointer to a Digital object Raises: EXC_INVALID_PARAMETER No M2K digital device found
-
getLUT
() Retrieve the predefined calibration parameter :rtype: std::map< double,std::shared_ptr< libm2k::CALIBRATION_PARAMETERS >,std::less< double >,std::allocator< std::pair< double const,std::shared_ptr< libm2k::CALIBRATION_PARAMETERS > > > > :return: Map <temperature, parameters>
-
getLed
() Retrieve the state of the led
Return type: boolean Returns: If the led is turned on, true Return type: boolean Returns: Otherwise, false
-
getPowerSupply
() Retrieve the PowerSupply object
Return type: M2kPowerSupply
Returns: On success, a pointer to a PowerSupply object Raises: EXC_INVALID_PARAMETER No M2K power supply
-
hasContextCalibration
() Check if the calibration based on temperature can be performed :rtype: boolean :return: True if the calibration parameters are available, False otherwise
-
hasMixedSignal
() Check if the mixed signal acquisition is available on the current firmware version :rtype: boolean :return: True if the mixed signal acquisition is available, false otherwise
-
isCalibrated
() Check if the board was calibrated :rtype: boolean :return: True if the board was calibrated, False otherwise
-
reset
() - Reset the M2K device to default settings:
- Reset calibration coefficients
- Maximum samplerates
- Set oversampling ratio to 1
- Set AnalogIn range to low range
- Set kernel buffers count to 4 (analog/digital and in/out devices)
- Disable all TX digital channels and enable all RX digital channels
Notes: A calibration is needed afterwards
-
resetCalibration
()
-
setAdcCalibrationGain
(chn, gain) Set the calibration gain of the ADC :type chn: int :param chn: The index corresponding to a channel :type gain: float :param gain: The calibration gain value Notes: Overrides the calibration coefficients.
Can be reset by running a calibration.
The gain value is currently limited at the (-2,2) range by the hardware.
-
setAdcCalibrationOffset
(chn, offset) Set the calibration offset of the ADC :type chn: int :param chn: The index corresponding to a channel :type offset: int :param offset: The calibration offset value Notes: Overrides the calibration coefficients.
Can be reset by running a calibration.
-
setDacCalibrationGain
(chn, gain) Set the calibration gain of the DAC :type chn: int :param chn: The index corresponding to a channel :type gain: float :param gain: The calibration gain value Notes: Overrides the calibration coefficients.
Can be reset by running a calibration.
The gain value is currently limited at the (-2,2) range by the hardware.
-
setDacCalibrationOffset
(chn, offset) Set the calibration offset of the DAC :type chn: int :param chn: The index corresponding to a channel :type offset: int :param offset: The calibration offset value Notes: Overrides the calibration coefficients.
Can be reset by running a calibration.
-
setLed
(on) Turn on or off the board’s led
Parameters: on (boolean) – A boolean value corresponding to the state of the led Notes: For turning on the led, set the parameter true.
-
startMixedSignalAcquisition
(nb_samples) Initiate the mixed acquisition :type nb_samples: int :param nb_samples: The number of samples that will be retrieved
Notes: Only available from firmware v0.26.
-
stopMixedSignalAcquisition
() Stop the mixed acquisition
Notes: Only available from firmware v0.26.
-
thisown
The membership flag
-
-
class
libm2k.
M2kAnalogIn
(*args, **kwargs) Bases:
object
-
cancelAcquisition
() Cancel all buffer operations Notes: Should be used to cancel an ongoing acquisition
-
convertRawToVolts
(channel, raw) Convert the raw value of a sample into volts :type raw: int :param raw:: the raw value of a sample; :type channel: int :param channel:: The index corresponding to the channel; :rtype: float :return: The value of a sample converted into volts;
-
convertVoltsToRaw
(channel, voltage) Convert the voltage value of a sample into raw
Parameters: - voltage (float) – The voltage value of a sample;
- channel (int) – The index corresponding to the channel;
Return type: int
Returns: The value of a sample converted into raw;
-
enableChannel
(chnIdx, enable) Enable or disable the given channel
Parameters: - chnIdx (int) – The index corresponding to the channel
- enable (boolean) – A boolean value corresponding to the channel’s state
-
getAvailableRanges
() Retrieve all ranges that are available
Return type: std::vector< std::pair< std::string,std::pair< double,double > >,std::allocator< std::pair< std::string,std::pair< double,double > > > > Returns: A list of pairs containing all available ranges and their name
-
getAvailableSampleRates
() Return type: std::vector< double,std::allocator< double > > Returns: The list of available samplerates for this device
-
getChannelName
(channel) Get the channel name for each ADC channel :type channel: int :param channel: - unsigned int representing the index of the channel :rtype: string :return: std::string - name of the channel
-
getFilterCompensation
(samplerate) Retrieve the filter compensation for the given sample rate
Parameters: samplerate (float) – A double value representing the sample rate Return type: float Returns: The value of the filter compensation
-
getHysteresisRange
(chn) Retrieve the bounds of the analogical trigger’s hysteresis for the given channel
Parameters: chn (int) – An enumerator corresponding to the channel’s index Return type: std::pair< double,double > Returns: A pair containing the lower and upper bound
-
getIioObjects
() Get access to IIO channels, buffers, devices and context. Can be used when debugging directly with libiio. :rtype:
IIO_OBJECTS
:return: IIO_OBJECTS structure.
-
getKernelBuffersCount
() Get the number of kernel buffers :rtype: int :return: the number of previously set kernel buffers (saved in this session)
-
getMaximumSamplerate
() Get the maximum samplerate for the ADC :rtype: float :return: double - the value of the maximum samplerate
-
getName
() Retrieve the name of the device
Return type: string Returns: The name of the device
-
getNbChannels
() Retrieve the number of analogical channels
Return type: int Returns: The number of channels
-
getOversamplingRatio
(*args) Overload 1:
Retrieve the global oversampling ratio
Return type: int Returns: The value of the global ratio Overload 2:
Retrieve the oversampling ratio for the given channel
Parameters: chn_idx (int) – The index corresponding to the channel Return type: int Returns: The ratio value
-
getRange
(channel) Retrieve the range for the given channel
Parameters: channel (int) – An enumerator corresponding to the channel’s index Return type: int Returns: An enumerator corresponding to the range
-
getRangeLimits
(range) Retrieve the bounds for the given range
Parameters: range (int) – An enumerator corresponding to the range Return type: std::pair< double,double > Returns: A pair containing the lower and upper bound
-
getSampleRate
() Retrieve the global sample rate
Return type: float Returns: The value of the sample rate
-
getSamples
(*args) Overload 1:
Retrieve a specific number of samples from each channel
Parameters: nb_samples (int) – The number of samples that will be retrieved Return type: std::vector< std::vector< double,std::allocator< double > >,std::allocator< std::vector< double,std::allocator< double > > > > Returns: A list containing lists of samples for each channel Notes: The index of the list corresponds to the index of the channel Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
Overload 2:
Retrieve a specific number of samples from each channel
Parameters: - data (std::vector< std::vector< double,std::allocator< double > >,std::allocator< std::vector< double,std::allocator< double > > > >) –
- a reference to a vector owned/created by the client
- nb_samples (int) – The number of samples that will be retrieved
Notes: The vector will be cleaned and then filled with samples The index of the list corresponds to the index of the channel Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
- data (std::vector< std::vector< double,std::allocator< double > >,std::allocator< std::vector< double,std::allocator< double > > > >) –
-
getSamplesInterleaved
(nb_samples_per_channel) Retrieve a specific number of samples from each channel
Parameters: nb_samples_per_channel (int) – The number of samples that will be retrieved Return type: float Returns: A pointer to the interleaved samples Notes: Before the acquisition, both channels will be automatically enabled The data array will contain samples from both channels After the acquisition is finished, the channels will return to their initial state Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
-
getSamplesRaw
(nb_samples) Retrieve a specific number of raw samples from each channel
Parameters: nb_samples (int) – The number of samples that will be retrieved Return type: std::vector< std::vector< double,std::allocator< double > >,std::allocator< std::vector< double,std::allocator< double > > > > Returns: A list containing lists of raw samples for each channel Notes: The index of the list corresponds to the index of the channel Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
-
getSamplesRawInterleaved
(nb_samples_per_channel) Retrieve a specific number of raw samples from each channel
Parameters: nb_samples_per_channel (int) – The number of samples that will be retrieved Return type: int Returns: A pointer to the interleaved raw samples Notes: Before the acquisition, both channels will be automatically enabled The data array will contain samples from both channels After the acquisition is finished, the channels will return to their initial state Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
-
getScalingFactor
(ch) Retrieve the scaling factor
Parameters: ch (int) – An enumerator corresponding to the channel’s index Return type: float Returns: The value of the scaling factor
-
getTrigger
() Get the hardware trigger handler
Return type: M2kHardwareTrigger
Returns: A pointer to the hardware trigger trigger
-
getValueForRange
(range) Retrieve the numeric value corresponding to the given range
Parameters: range (int) – Return type: float Returns: double
-
getVerticalOffset
(channel) Parameters: channel (int) – the index of the channel Return type: float Returns: the value of the offset in Volts
-
getVoltage
(*args) Overload 1:
Retrieve the average voltage of the given channel
Parameters: ch (int) – The index corresponding to the channel Return type: float Returns: The average voltage Overload 2:
Retrieve the average voltage of the given channel
Parameters: ch (int) – An enumerator corresponding to the channel’s index Return type: float Returns: The average voltage Overload 3:
Retrieve the average voltage for each channel
Return type: std::vector< double,std::allocator< double > > Returns: A list containing the average voltage of each channel Notes: The index of the voltage corresponds to the channel’s index
-
getVoltageRaw
(*args) Overload 1:
Retrieve the average raw value of the given channel
Parameters: ch (int) – The index corresponding to the channel Return type: int Returns: The average raw value Overload 2:
Retrieve the average raw value of the given channel
Parameters: ch (int) – An enumerator corresponding to the channel’s index Return type: int Returns: The average raw value Overload 3:
Retrieve the average raw value for each channel
Return type: std::vector< short,std::allocator< short > > Returns: A list containing the average raw value of each channel Notes: The index of the value corresponds to the channel’s index
-
isChannelEnabled
(chnIdx) Retrieve the state of the given channel
Parameters: chnIdx (int) – The index corresponding to the channel Return type: boolean Returns: True if the channel is enabled Return type: boolean Returns: False if the channel is disabled
-
reset
()
-
setKernelBuffersCount
(count) Set the kernel buffers to a specific value :type count: int :param count: the number of kernel buffers
-
setOversamplingRatio
(*args) Overload 1:
Set the global oversampling ratio
Parameters: oversampling (int) – Integer value to set the oversampling ratio to Return type: int Returns: The current value of the global ratio Overload 2:
Set the oversampling ratio for the given channel
Parameters: - chn_idx (int) – The index corresponding to the channel
- oversampling (int) – Integer value to set the oversampling ratio to
Return type: int
Returns: The current ratio value
-
setRange
(*args) Overload 1:
Set the range for the given channel
Parameters: - channel (int) – An enumerator corresponding to the channel’s index
- range (int) – An enumerator corresponding to a range
Overload 2:
Set the range for the given channel
Parameters: - channel (int) – An enumerator corresponding to the channel’s index
- min (float) – Upper bound
- max (float) – Lower bound
-
setSampleRate
(samplerate) Set the global sample rate
Parameters: samplerate (float) – A double value to set the sample rate to Return type: float Returns: The value of the global sample rate
-
setVerticalOffset
(channel, vertOffset) Set the vertical offset, in Volts, of a specific channel :type channel: int :param channel: the index of the channel :type vertOffset: float :param vertOffset: the value of the offset in Volts
-
startAcquisition
(nb_samples) Create the buffer for both channels and start the acquisition :type nb_samples: int :param nb_samples: size of the buffer in samples for each channel
-
stopAcquisition
() Destroy the buffer and stop the acquisition
-
thisown
The membership flag
-
-
class
libm2k.
M2kAnalogIns
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
M2kAnalogOut
(*args, **kwargs) Bases:
object
-
cancelBuffer
(*args) Overload 1:
Cancel all buffer operations of enabled channels Notes: Should be used to cancel an ongoing data write.
Overload 2:
Cancel all buffer operations of the given channel :type chn: int :param chn: The index corresponding to the channel Notes: Should be used to cancel an ongoing data write.
-
convertRawToVolts
(channel, raw) Convert the raw value of a sample into volts :type channel: int :param channel: The index corresponding to the channel :type raw: int :param raw: The raw value of a sample :rtype: float :return: The value of a sample converted into volts
-
convertVoltsToRaw
(channel, voltage) Convert the volts value of a sample into raw :type channel: int :param channel: The index corresponding to the channel :type voltage: float :param voltage: The volts value of a sample :rtype: int :return: The value of a sample converted into raw
-
enableChannel
(chnIdx, enable) Enable or disable the given digital channel
Parameters: - chnIdx (int) – The index corresponding to the channel
- enable (boolean) – A boolean value corresponding to the channel’s state
Raises: EXC_OUT_OF_RANGE No such channel
-
getAvailableSampleRates
(chn) Parameters: chn (int) – The index corresponding to the required channel Return type: std::vector< double,std::allocator< double > > Returns: The list of available samplerates for this device
-
getChannelName
(channel) Get the channel name for each DAC channel :type channel: int :param channel: - unsigned int representing the index of the channel :rtype: string :return: std::string - name of the channel
-
getCyclic
(chn) Retrieve the value of the cyclic mode
Parameters: chn (int) – The index corresponding to the channel Return type: boolean Returns: A boolean value corresponding to the state of the cyclic mode
-
getFilterCompensation
(samplerate) Retrieve the filter compensation for the given sample rate
Parameters: samplerate (float) – A double value representing the sample rate Return type: float Returns: The value of the filter compensation
-
getIioObjects
() Get access to IIO channels, buffers, devices and context. Notes: Can be used when debugging directly with libiio. :rtype:
IIO_OBJECTS
:return: IIO_OBJECTS structure.
-
getKernelBuffersCount
(chnIdx) Get the number of kernel buffers :type chnIdx: int :param chnIdx: The index corresponding to the channel :rtype: int :return: the number of previously set kernel buffers (saved in this session)
-
getMaximumSamplerate
(chn_idx) Get the maximum samplerate for the DAC :type chn_idx: int :param chn_idx: - unsigned int representing the index of the channel :rtype: float :return: double - the value of the maximum samplerate
-
getNbChannels
() Retrieve the number of analogical channels :rtype: int :return: The number of channels
-
getOversamplingRatio
(*args) Overload 1:
Retrieve the global oversampling ratio :rtype: std::vector< int,std::allocator< int > > :return: The value of the global oversampling ratio
Overload 2:
Retrieve the oversampling ratio for the given channel
Parameters: chn (int) – The index corresponding to the channel Return type: int Returns: The oversampling ratio value
-
getSampleRate
(*args) Overload 1:
Retrieve the sample rate of both DACs :rtype: std::vector< double,std::allocator< double > > :return: A list containing the sample rates
Overload 2:
Retrieve the sample rate for the given channel
Parameters: chn (int) – The index corresponding to the channel Return type: float Returns: The value of the sample rate
-
getScalingFactor
(chn) Retrieve the scaling factor for the given channel
Parameters: chn (int) – The index corresponding to the channel Return type: float Returns: The value of the scaling factor Raises: EXC_OUT_OF_RANGE No such channel
-
getSyncedDma
(chn=-1)
-
getSyncedStartDma
(chn=-1)
-
isChannelEnabled
(chnIdx) Check if the given channel is enabled
Parameters: chnIdx (int) – The index corresponding to the channel Return type: boolean Returns: A boolean value corresponding to the state of the channel Raises: EXC_OUT_OF_RANGE No such channel
-
isPushDone
(chnIdx) Check if the generation of the signal (only for non-cyclic buffer) is done :type chnIdx: int :param chnIdx: The index corresponding to the channel :rtype: boolean :return: True if the push process is done, false otherwise
Notes: This function takes the number of kernel buffers into consideration. If a new session is started without unplugging the board and the number of kernel buffers was modified in the previous session (default value = 4) a DAC calibration must be performed before calling isPushDone in order to compute the current number of kernel buffers or call again the function setKernelBuffersCount.
Available only in firmware versions newer than 0.23.
-
push
(*args) Overload 1:
Send the samples to the given channel
Parameters: - chnIdx (int) – The index corresponding to the channel
- data (std::vector< double,std::allocator< double > >) – A list of doubles containing all samples
Notes: Streaming data is possible - required multiple kernel buffers The given channel won’t be synchronized with the other channel Due to a hardware limitation, the number of samples per channel must be a multiple of 4 and greater than 16 (non-cyclic buffers) or 1024 (cyclic buffers) The samples in the buffer can be repeated until the buffer reaches the size requirements :raises: EXC_OUT_OF_RANGE No such channel
Overload 2:
Send samples to channels.
Parameters: data (std::vector< std::vector< double,std::allocator< double > >,std::allocator< std::vector< double,std::allocator< double > > > >) – A list containing lists of samples Notes: The index of each list of samples represents the channel’s index Streaming data is possible - required multiple kernel buffers The given channel won’t be synchronized with the other channel Due to a hardware limitation, the number of samples per channel must be a multiple of 4 and greater than 16 (non-cyclic buffers) or 1024 (cyclic buffers) The samples in the buffer can be repeated until the buffer reaches the size requirements
-
pushRaw
(*args) Overload 1:
Send the samples to the given channel
Parameters: - chnIdx (int) – The index corresponding to the channel
- data (std::vector< short,std::allocator< short > >) – A list of shorts containing all samples
Notes: Streaming data is possible - required multiple kernel buffers The given channel won’t be synchronized with the other channel Due to a hardware limitation, the number of samples per channel must be a multiple of 4 and greater than 16 (non-cyclic buffers) or 1024 (cyclic buffers) The samples in the buffer can be repeated until the buffer reaches the size requirements :raises: EXC_OUT_OF_RANGE No such channel
Overload 2:
Send samples to channels
Parameters: data (std::vector< std::vector< short,std::allocator< short > >,std::allocator< std::vector< short,std::allocator< short > > > >) – A list containing lists of samples Notes: The index of each list of samples represents the channel’s index Streaming data is possible - required multiple kernel buffers The given channel won’t be synchronized with the other channel Due to a hardware limitation, the number of samples per channel must be a multiple of 4 and greater than 16 (non-cyclic buffers) or 1024 (cyclic buffers) The samples in the buffer can be repeated until the buffer reaches the size requirements
-
pushRawBytes
(chnIdx, data, nb_samples) Send the samples to the given channel
Parameters: - chnIdx (int) – The index corresponding to the channel
- data (int) – A pointer to the raw samples
- nb_samples (int) – the number of samples
Notes: Streaming data is possible - required multiple kernel buffers The given channel won’t be synchronized with the other channel Due to a hardware limitation, the number of samples per channel must be a multiple of 4 and greater than 16 (non-cyclic buffers) or 1024 (cyclic buffers) The samples in the buffer can be repeated until the buffer reaches the size requirements :raises: EXC_OUT_OF_RANGE No such channel
-
reset
()
-
setCyclic
(*args) Overload 1:
Enable or disable the cyclic mode for all digital channels
Parameters: en (boolean) – If true, enable cyclic mode Raises: EXC_OUT_OF_RANGE No such channel Overload 2:
Enable or disable the cyclic mode for all digital channels
Parameters: - chn (int) – The index corresponding to the channel
- en (boolean) – If true, enable cyclic mode
Raises: EXC_OUT_OF_RANGE No such channel
-
setKernelBuffersCount
(chnIdx, count) Set the kernel buffers to a specific value :type chnIdx: int :param chnIdx: The index corresponding to the channel :type count: int :param count: the number of kernel buffers
-
setOversamplingRatio
(*args) Overload 1:
Set the value of the oversampling ratio for each channel
Parameters: oversampling_ratio (std::vector< int,std::allocator< int > >) – A list containing the ratios for each channel (as integers) Return type: std::vector< int,std::allocator< int > > Returns: A list containing the oversampling ratio value for each channel Overload 2:
Set the oversampling ratio for the given channel :type chn: int :param chn: The index corresponding to the channel :type oversampling_ratio: int :param oversampling_ratio: Integer value to set the oversampling ratio to :rtype: int :return: The current oversampling ratio value
-
setSampleRate
(*args) Overload 1:
Set the sample rate for both channels
Parameters: samplerates (std::vector< double,std::allocator< double > >) – A list containing the sample rates of each channel Return type: std::vector< double,std::allocator< double > > Returns: A list containing the previously setted sample rates Overload 2:
Set the sample rate for the given channel
Parameters: - chn (int) – The index corresponding to the channel
- samplerate (float) – A double value to set the sample rate to
Return type: float
Returns: The value of the sample rate
-
setSyncedDma
(en, chn=-1)
-
setSyncedStartDma
(en, chn=-1)
-
stop
(*args) Overload 1:
Stop all channels from sending the signals.
Notes: Both DACs will be powered down
Overload 2:
Stop the given channels from sending the signals
Parameters: chn (int) – The index corresponding to the channel Notes: The corresponding DAC will be powered down :raises: EXC_OUT_OF_RANGE No such channel
-
thisown
The membership flag
-
-
class
libm2k.
M2kAnalogOuts
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
M2kCalibration
(*args, **kwargs) Bases:
object
-
calibrateADC
()
-
calibrateAll
()
-
calibrateDAC
()
-
cancelCalibration
()
-
getAdcCalibrated
()
-
getAdcGain
(channel)
-
getAdcOffset
(channel)
-
getDacCalibrated
()
-
getDacGain
(channel)
-
getDacOffset
(channel)
-
initialize
()
-
isInitialized
()
-
resetCalibration
()
-
setAdcGain
(chn, gain)
-
setAdcOffset
(chn, offset)
-
setDacGain
(chn, gain)
-
setDacOffset
(chn, offset)
-
thisown
The membership flag
-
-
class
libm2k.
M2kConditionAnalog
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
M2kConditionDigital
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
M2kDigital
(*args, **kwargs) Bases:
object
-
anyChannelEnabled
(dir) Check if there is at least one channel enabled
Parameters: dir (int) – An enumerator corresponding to the direction of a channel Return type: boolean Returns: On succces, true Return type: boolean Returns: Otherwise, false
-
cancelAcquisition
() Cancel all rx-buffer operations Notes: Should be used to cancel an ongoing acquisition
-
cancelBufferOut
() Cancel all tx-buffer operations Notes: Should be used to cancel an ongoing data write.
-
enableAllOut
(enable) Enable or disable all output channels
Parameters: enable (boolean) – A boolean value corresponding to the channel’s state Notes: This function affects only the TX channels
-
enableChannel
(*args) Overload 1:
Enable or disable the given digital channel
Parameters: - index (int) – The index corresponding to the channel
- enable (boolean) – A boolean value corresponding to the channel’s state
Notes: This function affects only the TX channels
Overload 2:
Enable or disable the given digital channel
Parameters: - index (int) – An enumerator corresponding to the channel’s index
- enable (boolean) – A boolean value corresponding to the channel’s state
Notes: This function affects only the TX channels
-
getCyclic
() Retrieve the value of the cyclic mode
Return type: boolean Returns: A boolean value corresponding to the state of the cyclic mode
-
getDirection
(index) Retrieve the direction of the given digital channel
Parameters: index (int) – An enumerator corresponding to the channel’s index Return type: int Returns: DIO_DIRECTION An enumerator that indicates the direction of a channel
-
getIioObjects
() Get access to IIO channels, buffers, devices and context. Can be used when debugging directly with libiio. :rtype:
IIO_OBJECTS
:return: IIO_OBJECTS structure.
-
getNbChannelsIn
() Retrieve the number of digital input channels
Return type: int Returns: an unsigned int representing the number of digital IN channels
-
getNbChannelsOut
() Retrieve the number of digital output channels
Return type: int Returns: an unsigned int representing the number of digital OUT channels
-
getOutputMode
(*args) Overload 1:
Retrieve the output mode for the given digital channel
Parameters: chn (int) – An enumerator corresponding to the channel’s index Return type: int Returns: An enumerator corresponding to the output mode Overload 2:
Retrieve the output mode for the given digital channel
Parameters: chn (int) – The index corresponding to the channel Return type: int Returns: An enumerator corresponding to the output mode
-
getSampleRateIn
() Retrieve the sample rate of all digital input channels :rtype: float :return: The value of the sample rate
-
getSampleRateOut
() Retrieve the sample rate of all digital output channels
Return type: float Returns: The value of the sample rate
-
getSamples
(*args) Overload 1:
Retrieve a specific number of samples
Parameters: nb_samples (int) – The number of samples that will be retrieved Return type: std::vector< unsigned short,std::allocator< unsigned short > > Returns: A list that contains the samples Notes: Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
Overload 2:
Retrieve a specific number of samples :type data: std::vector< unsigned short,std::allocator< unsigned short > > :param data: - a reference to a vector owned/created by the client :type nb_samples: int :param nb_samples: The number of samples that will be retrieved. The vector will be cleaned and then filled with samples. Notes: Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
-
getSamplesP
(nb_samples) Retrieve a specific number of samples :type nb_samples: int :param nb_samples: The number of samples that will be retrieved :rtype: int :return: A pointer to the data Notes: Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
-
getTrigger
() Get the hardware trigger handler :rtype:
M2kHardwareTrigger
:return: the trigger object
-
getValueRaw
(*args) Overload 1:
Retrieve the raw value of the given digital channel
Parameters: index (int) – An enumerator corresponding to the channel’s index Return type: int Returns: DIO_LEVEL An enumerator corresponding to the raw value Overload 2:
Retrieve the raw value of the given digital channel
Parameters: index (int) – The index corresponding to the channel Return type: int Returns: DIO_LEVEL An enumerator corresponding to the raw value
-
isClocksourceExternal
() Get the current clocksource :rtype: boolean :return: True if clocksource is set to external
Notes: Only available from firmware v0.26.
-
push
(data) Send the samples to all digital channels
Parameters: data (std::vector< unsigned short,std::allocator< unsigned short > >) – The std vector that contains the samples Notes: Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
-
pushBytes
(data, nb_samples) Send the samples to all digital channels
Parameters: - data (int) – a pointer to the samples
- nb_samples (int) – the number of samples
Notes: Due to a hardware limitation, the number of samples must be a multiple of 4 and greater than 16.
-
reset
()
-
resetRateMux
() Reset the digital rate to default
Notes: Only available from firmware v0.26.
-
setCyclic
(cyclic) Enable or disable the cyclic mode for all digital channels
Parameters: cyclic (boolean) – If true, enable cyclic mode
-
setDirection
(*args) Overload 1:
Set the direction for all digital channels :type mask: int :param mask: A bitmask Notes: Each bit of the mask corresponds to the channel with the same index. The value of the bit represents the channel’s direction. O - input, 1 - output
Overload 2:
Set the direction of the given digital channel :type index: int :param index: The index corresponding to the channel :type dir: int :param dir: An enumerator that indicates the direction of a channel
Overload 3:
Set the direction of the given digital channel :type index: int :param index: The index corresponding to the channel :type dir: boolean :param dir: A boolean value that corresponds to one direction Notes: The boolean value for input direction is false and for output direction is true
Overload 4:
Set the direction of the given digital channel :type index: int :param index: An enumerator corresponding to the channel’s index :type dir: boolean :param dir: A boolean value that corresponds to one direction Notes: The boolean value for input direction is false and for output direction is true
Overload 5:
Set the direction of the given digital channel :type index: int :param index: An enumerator corresponding to the channel’s index :type dir: int :param dir: An enumerator that indicates the direction of a channel
-
setExternalClocksource
(external) Set the clocksource :type external: boolean :param external: - True to set source to external
- False to set source to internal
Notes: Only available from firmware v0.26.
-
setKernelBuffersCountIn
(count) Set the kernel buffers for input to a specific value :type count: int :param count: the number of kernel buffers
-
setKernelBuffersCountOut
(count) Set the kernel buffers for output to a specific value :type count: int :param count: the number of kernel buffers
-
setOutputMode
(*args) Overload 1:
Set the output mode for the given digital channel
Parameters: - chn (int) – An enumerator corresponding to the channel’s index
- mode (int) – An enumerator corresponding to the output mode
Overload 2:
Set the output mode for the given digital channel
Parameters: - chn (int) – The index corresponding to the channel
- mode (int) – An enumerator corresponding to the output mode
-
setRateMux
() Force the digital interface to use the analogical rate
Notes: Only available from firmware v0.26.
-
setSampleRateIn
(samplerate) Set the sample rate for all digital input channels
Parameters: samplerate (float) – A double value to set the sample rate to Return type: float Returns: The current sample rate for all digital input channels
-
setSampleRateOut
(samplerate) Set the sample rate for all digital output channels
Parameters: samplerate (float) – A double value to set the sample rate to Return type: float Returns: The current sample rate for all digital output channels
-
setValueRaw
(*args) Overload 1:
Set the raw value of a given digital channel
Parameters: - index (int) – An enumerator corresponding to the channel’s index
- level (int) – An enumerator corresponding to the raw value
Overload 2:
Set the raw value of a given digital channel
Parameters: - index (int) – The index corresponding to the channel
- level (int) – An enumerator corresponding to the raw value
Overload 3:
Set the raw value of a given digital channel
Parameters: - index (int) – An enumerator corresponding to the channel’s index
- level (boolean) – A boolean value corresponding to the raw value
-
startAcquisition
(nb_samples) Create the buffer for all channels and start the acquisition :type nb_samples: int :param nb_samples: size of the buffer in samples
-
stopAcquisition
() Destroy the buffer and stop the acquisition
-
stopBufferOut
() Stop all digital channels from sending the signals
-
thisown
The membership flag
-
-
class
libm2k.
M2kHardwareTrigger
(*args, **kwargs) Bases:
object
-
getAnalogCondition
(chnIdx) Get the trigger condition for the analog trigger on a specific channel :type chnIdx: int :param chnIdx: the required channel :rtype: int :return: the trigger condition
-
getAnalogDelay
() Get the analog trigger delay :rtype: int :return: the value of the delay
Notes: the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD
-
getAnalogExternalCondition
(chnIdx) Parameters: chnIdx (int) – : integer - the index of the required channel Return type: int Returns: M2K_TRIGGER_CONDITION_DIGITAL
-
getAnalogExternalOutSelect
() Check which trigger events are forwarded on the TO (trigger out) pin. :rtype: int :return: M2K_TRIGGER_OUT_SELECT :
SELECT_NONE;
SELECT_TRIGGER_IN;
SELECT_DIGITAL_IN;
SELECT_ANALOG_IN;
Notes: Only available from firmware v0.24.
-
getAnalogHysteresis
(chnIdx) Get the analog hysteresis value for one channel :type chnIdx: int :param chnIdx: the required channel :rtype: float :return: the value of the hysteresis in Volts
-
getAnalogLevel
(chnIdx) Get the analog trigger level for one channel :type chnIdx: int :param chnIdx: the required channel :rtype: float :return: the analog trigger level in volts
-
getAnalogLevelRaw
(chnIdx) Get the raw analog trigger level for one channel :type chnIdx: int :param chnIdx: the required channel :rtype: int :return: the raw analog trigger level
-
getAnalogMode
(chnIdx) Get the mode for the analog trigger on a specific channel :type chnIdx: int :param chnIdx: the required channel :rtype: int :return: the analog trigger mode
-
getAnalogSource
() Get the source of the analog trigger :rtype: int :return: analog trigger source (channel1, channel2, etc)
-
getAnalogSourceChannel
() Get the channel source of the analog trigger :rtype: int :return: analog trigger channel source (channel1, channel2)
-
getAnalogStreamingFlag
() Get the streaming flag for the analog part :rtype: boolean :return: whether the streaming is enabled (true/false)
-
getCurrentHwSettings
()
-
getDigitalCondition
(chnIdx) Get the trigger condition for the digital trigger on a specific channel :type chnIdx: int :param chnIdx: the required channel :rtype: int :return: the trigger condition
-
getDigitalDelay
() Get the digital trigger delay :rtype: int :return: the value of the digital delay
Notes: the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD
-
getDigitalExternalCondition
() Return type: int Returns: M2K_TRIGGER_CONDITION_DIGITAL
-
getDigitalMode
() Get the mode for the digital trigger :rtype: int :return: the digital trigger mode (DIO_OR/DIO_AND)
-
getDigitalSource
() Check which is the source of the DigitalIn interface trigger event. :rtype: int :return: M2K_TRIGGER_SOURCE_DIGITAL :
SRC_TRIGGER_IN;
SRC_ANALOG_IN;
SRC_NONE;
Notes: Only available from firmware v0.24.
-
getDigitalStreamingFlag
() Get the streaming flag for the digital part :rtype: boolean :return: whether the streaming is enabled (true/false)
-
hasCrossInstrumentTrigger
()
-
hasExternalTriggerIn
()
-
hasExternalTriggerOut
()
-
reset
()
-
setAnalogCondition
(chnIdx, cond) Set the trigger condition for the analog trigger on a specific channel :type chnIdx: int :param chnIdx: the required channel :type cond: int :param cond: the specific trigger condition
-
setAnalogDelay
(delay) Set the analog trigger delay :type delay: int :param delay: the value of the analog delay
Notes: the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD
-
setAnalogExternalCondition
(chnIdx, cond) Parameters: - chnIdx (int) – : integer - the index of the required channel
- cond (int) – : M2K_TRIGGER_CONDITION_DIGITAL
-
setAnalogExternalOutSelect
(output_select) Select what should be redirected on the TO (trigger out) pin.
The options are (none, trigger in, digital in, analog in).Parameters: output_select (int) – : of type M2K_TRIGGER_OUT_SELECT:
SELECT_TRIGGER_IN - forwards trigger events from TI pin(trigger in);
SELECT_DIGITAL_IN - forwards trigger events from DigitalIn interface;
SELECT_ANALOG_IN - forwards trigger events from AnalogIn interface;
SELECT_NONE - no trigger event is forwarded;
Notes: Only available from firmware v0.24.
-
setAnalogHysteresis
(chnIdx, hysteresis) Set the analog hysteresis value for one channel :type chnIdx: int :param chnIdx: the required channel :type hysteresis: float :param hysteresis: in Volts
-
setAnalogLevel
(chnIdx, v_level) Set the analog trigger level for one channel :type chnIdx: int :param chnIdx: the required channel :type v_level: float :param v_level: the analog trigger level in volts
-
setAnalogLevelRaw
(chnIdx, level) Set the raw analog trigger level for one channel :type chnIdx: int :param chnIdx: the required channel :type level: int :param level: the raw analog trigger level
-
setAnalogMode
(chnIdx, mode) Set the mode for the analog trigger on a specific channel :type chnIdx: int :param chnIdx: the required channel :type mode: int :param mode: the analog trigger mode
-
setAnalogSource
(src) Set the source of the analog trigger :type src: int :param src: analog trigger source (channel1, channel2, etc)
-
setAnalogSourceChannel
(chnIdx) Set the channel source of the analog trigger :type chnIdx: int :param chnIdx: the index of the channel that should be used
-
setAnalogStreamingFlag
(enable) Set the streaming flag for the analog part :type enable: boolean :param enable: the streaming
-
setCalibParameters
(chnIdx, scaling, vert_offset)
-
setDigitalCondition
(chnIdx, cond) Set the trigger condition for the digital trigger on a specific channel :type chnIdx: int :param chnIdx: the required channel :type cond: int :param cond: the specific trigger condition
-
setDigitalDelay
(delay) Set the digital trigger delay :type delay: int :param delay: the value of the digital delay
Notes: the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD
-
setDigitalExternalCondition
(cond) Parameters: cond (int) – : M2K_TRIGGER_CONDITION_DIGITAL
-
setDigitalMode
(mode) Set the mode for the digital trigger :type mode: int :param mode: the digital trigger mode (DIO_OR/DIO_AND)
-
setDigitalSource
(external_src) Select which interface triggers the DigitalIn. :type external_src: int :param external_src:: of type M2K_TRIGGER_SOURCE_DIGITAL:
SRC_TRIGGER_IN - trigger events on the TI(trigger in) pin trigger the DigitalIn interface;
SRC_ANALOG_IN - trigger events on the AnalogIn interface trigger the DigitalIn interface;
SRC_NONE - trigger events on the DigitalIn are conditioned by the internal digital trigger structure;
Notes: Only available from firmware v0.24.
-
setDigitalStreamingFlag
(enable) Set the streaming flag for the digital part :type enable: boolean :param enable: the streaming
Notes: The digital condition needs to be set before setting the digital streaming flag to true, otherwise after setting the streaming flag to true, a trigger might occur on the old condition.
-
setHwTriggerSettings
(settings)
-
thisown
The membership flag
-
-
class
libm2k.
M2kModes
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
M2kPowerSupply
(*args, **kwargs) Bases:
object
-
anyChannelEnabled
() Check if there is at least one enabled channel
Return type: boolean Returns: On succes, true Return type: boolean Returns: Otherwise, false
-
enableAll
(en) Enable or disable all channels
Parameters: en (boolean) – A boolean value corresponding to the state of the channels
-
enableChannel
(chn, en) Enable or disable the given channel
Parameters: - chn (int) – The index corresponding to the channel
- en (boolean) – A boolean value corresponding to the state of the channel
-
powerDownDacs
(powerdown)
-
pushChannel
(chn, value, calibrated=True) Set the voltage for the given channel
Parameters: - chn (int) – The index corresponding to the channel
- value (float) – The voltage (up to 5V)
- calibrated (boolean) – Written values are converted using the calibration coefficients from the IIO context by default; This boolean flag specifies whether the coefficients should be used.
-
readChannel
(chn, calibrated=True) Retrieve the value of a given channel
Parameters: - chn (int) – The index corresponding to the channel
- calibrated (boolean) – Read values are converted using the calibration coefficients from the IIO context by default; This boolean flag specifies whether the coefficients should be used.
Return type: float
Returns: double The voltage transmitted by the given channel
-
reset
()
-
thisown
The membership flag
-
-
libm2k.
NO_SOURCE
= 9 NO_SOURCE - block the AnalogIn interface
-
libm2k.
SELECT_ANALOG_IN
= 3 SELECT_ANALOG_IN - forwards trigger events from AnalogIn interface
-
libm2k.
SELECT_DIGITAL_IN
= 4 SELECT_DIGITAL_IN - forwards trigger events from DigitalIn interface
-
libm2k.
SELECT_NONE
= 0 SELECT_NONE - no trigger event is forwarded
-
libm2k.
SELECT_TRIGGER_IN
= 2 SELECT_TRIGGER_IN - forwards trigger events from TI pin(trigger in)
-
class
libm2k.
SETTINGS
Bases:
object
Triggering system
-
analog_condition
Analogical trigger’s condition
-
delay
Trigger’s delay
-
digital_condition
Digital trigger’s condition
-
hysteresis
Trigger’s hysteresis
-
level
Trigger’s level
-
mode
Triggering mode
-
raw_level
Trigger’s raw level
-
thisown
The membership flag
-
trigger_source
Triggering source
-
-
libm2k.
SRC_ANALOG_IN
= 1 SRC_ANALOG_IN - trigger events on the AnalogIn interface trigger the DigitalIn interface
-
libm2k.
SRC_DIGITAL_IN
= 5 SRC_DIGITAL_IN - trigger events on the DigitalIn interface trigger the AnalogIn interface
-
libm2k.
SRC_DISABLED
= 3 SRC_DISABLED - block the DigitalIn interface
-
libm2k.
SRC_NONE
= 2 SRC_NONE - trigger events on the DigitalIn are conditioned by the internal digital trigger structure
-
libm2k.
SRC_TRIGGER_IN
= 0 SRC_TRIGGER_IN - trigger events on the TI(trigger in) pin trigger the DigitalIn interface
-
class
libm2k.
SwigPyIterator
(*args, **kwargs) Bases:
object
-
advance
(n)
-
copy
()
-
decr
(n=1)
-
distance
(x)
-
equal
(x)
-
incr
(n=1)
-
next
()
-
previous
()
-
thisown
The membership flag
-
value
()
-
-
class
libm2k.
VectorCtxInfo
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorD
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorI
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorPairDD
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorS
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorStr
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorUS
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorVectorD
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorVectorI
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorVectorS
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
VectorVectorUS
(*args) Bases:
object
-
append
(x)
-
assign
(n, x)
-
back
()
-
begin
()
-
capacity
()
-
clear
()
-
empty
()
-
end
()
-
erase
(*args)
-
front
()
-
get_allocator
()
-
insert
(*args)
-
iterator
()
-
pop
()
-
pop_back
()
-
push_back
(x)
-
rbegin
()
-
rend
()
-
reserve
(n)
-
resize
(*args)
-
size
()
-
swap
(v)
-
thisown
The membership flag
-
-
class
libm2k.
channel
Bases:
object
-
m_channel
A pointer to an iio_channel structure
-
m_direction
The direction of the channel
-
thisown
The membership flag
-
-
libm2k.
contextClose
(ctx, deinit=True) Destroy the given context :type ctx:
Context
:param ctx: The context to be destroyed :type deinit: boolean :param deinit: If deinit is set to false, running contexts won’t be affected
-
libm2k.
contextCloseAll
() Close all the devices
-
libm2k.
contextOpen
(*args) Overload 1:
Overload 2:
Overload 3:
-
libm2k.
enableLogging
(enable) Enable/disable the logging system :type enable: boolean :param enable: If true enable, otherwise disable
-
libm2k.
getAllContexts
() List all available contexts :rtype: std::vector< std::string,std::allocator< std::string > > :return: A list containing the available contexts
-
libm2k.
getContextsInfo
() List the information about all available contexts :rtype: std::vector< libm2k::CONTEXT_INFO *,std::allocator< libm2k::CONTEXT_INFO * > > :return: A list containing the info about available contexts
-
libm2k.
getVersion
() Get library version :rtype: string :return: a string containing the libm2k version
-
libm2k.
m2kOpen
(*args) Overload 1:
Open an ADALM2000 based on a given uri :type uri: string :param uri: Describe the location of the context :rtype:
M2k
:return: M2k object or nullptr if no ADALM2000 was found/availableNotes: the uri can be something similar to: “ip:192.168.2.1” or “usb:1.6.5”
Overload 2:
Open an ADALM2000 based on an existing iio_context and uri :type ctx: iio_context :param ctx: A pointer to an iio_context structure :type uri: string :param uri: Describe the location of the context :rtype:
M2k
:return: M2k object or nullptr if no ADALM2000 was found/availableNotes: the uri can be something similar to: “ip:192.168.2.1” or “usb:1.6.5”
Overload 3:
Open an ADALM2000 :rtype:
M2k
:return: M2k object or nullptr if no ADALM2000 was found/availableNotes: this will try to open USB connected devices
-
class
libm2k.
m2k_exception
(*args, **kwargs) Bases:
object
-
file
()
-
iioCode
()
-
line
()
-
static
make
(what)
-
thisown
The membership flag
-
type
()
-
what
()
-
-
class
libm2k.
m2k_exception_builder
(*args) Bases:
object
-
build
()
-
file
(fileName)
-
iioCode
(code)
-
line
(lineNumber)
-
thisown
The membership flag
-
type
(type)
-
-
libm2k.
m2k_exception_make
(what)
-
libm2k.
throw_exception
(exception)