Skip to content

Releases: ni/nimi-python

Add Python 3.11 Support and API Parity with 2023 Q2 Driver Runtimes

14 Apr 16:55
272fe25

Choose a tag to compare

  • ALL

    • Added

      • Support for Python 3.11
    • Changed

      • Fix #1888: Deadlock on multithreaded usage due to UnlockSession always being called with callerHasLock=False.
  • nidcpower (NI-DCPower)

    • Added

      • Pass Python interpreter information if the driver runtime version supports it. This is used by NI in order to better understand client usage.
      • API parity with NI-DCPower 2023 Q2.
        • Properties added:
          • lcr_ac_dither_enabled
          • lcr_ac_electrical_cable_length_delay
          • lcr_dc_bias_transient_response
          • lcr_source_aperture_time
          • measure_complete_event_output_behavior
          • measure_complete_event_toggle_initial_state
          • sequence_engine_done_event_output_behavior
          • sequence_engine_done_event_toggle_initial_state
          • sequence_iteration_complete_event_output_behavior
          • sequence_iteration_complete_event_toggle_initial_state
          • source_complete_event_output_behavior
          • source_complete_event_toggle_initial_state
        • Enums added:
          • CurrentLimitBehavior
          • EventOutputBehavior
          • EventToggleInitialState
          • LCRDCBiasTransientResponse
        • Enum values added:
          • AS_CONFIGURED added to enum LCROpenShortLoadCompensationDataSource
          • NI_STANDARD_0_5M added to enum CableLength
        • Methods added:
          • configure_lcr_compensation
          • get_lcr_compensation_data
    • Changed

      • Enums reordered:
        • AutoZero
        • CableLength
  • nidigital (NI-Digital Pattern Driver)

    • Changed

      • Update GRPC_SERVICE_INTERFACE_NAME to use the correct gRPC package name (nidigitalpattern_grpc).
  • niscope (NI-SCOPE)

    • Changed

      • Fix #1941: When calling niscope.Session.fetch_array_measurement in a MeasurementLink measurement plugin, meas_wfm_size cannot be set.
        • Requires NI gRPC Device Server 2023 Q2 or later. Older versions do not support this parameter and return all available samples.

Added support for Python 3.10, drop Python 3.6, and support 2022 Q4 drivers

16 Dec 21:11
c978703

Choose a tag to compare

  • ALL

    • Added

      • Support for Python 3.10
    • Removed

      • Support for Python 3.6
  • nidcpower (NI-DCPower)

    • Added

      • MeasurementLink support
    • Changed

      • Binary compatibility change for type LCRLoadCompensationSpot on Linux. Client code using method nidcpower.Session.perform_lcr_load_compensation on Linux now requires NI-DCPower 2023 Q1 driver runtime or newer.
  • nidigital (NI-Digital Pattern Driver)

    • Added

      • MeasurementLink support
  • nidmm (NI-DMM)

    • Added

      • MeasurementLink support
  • nifgen (NI-FGEN)

    • Added

      • MeasurementLink support
  • niscope (NI-SCOPE)

    • Added

      • MeasurementLink support
  • niswitch (NI-SWITCH)

    • Added

      • MeasurementLink support
    • Changed

      • Fix #1652: Topology constants haven't been updated on help page

LCR support and API parity with 2022 Q3 driver in nidcpower

03 Aug 15:48
cb48a3e

Choose a tag to compare

  • nidcpower (NI-DCPower)

    • Added

      • API parity with NI-DCPower 2022 Q3.
        • Properties added:
          • aperture_time_auto_mode
          • autorange_maximum_delay_after_range_change
          • cable_length
          • instrument_mode
          • isolation_state
          • lcr_actual_load_reactance
          • lcr_actual_load_resistance
          • lcr_automatic_level_control
          • lcr_current_amplitude
          • lcr_current_range
          • lcr_custom_measurement_time
          • lcr_dc_bias_automatic_level_control
          • lcr_dc_bias_current_level
          • lcr_dc_bias_current_range
          • lcr_dc_bias_source
          • lcr_dc_bias_voltage_level
          • lcr_dc_bias_voltage_range
          • lcr_frequency
          • lcr_impedance_auto_range
          • lcr_impedance_range
          • lcr_impedance_range_source
          • lcr_load_capacitance
          • lcr_load_compensation_enabled
          • lcr_load_inductance
          • lcr_load_resistance
          • lcr_measured_load_reactance
          • lcr_measured_load_resistance
          • lcr_measurement_time
          • lcr_open_compensation_enabled
          • lcr_open_conductance
          • lcr_open_short_load_compensation_data_source
          • lcr_open_susceptance
          • lcr_short_compensation_enabled
          • lcr_short_custom_cable_compensation_enabled
          • lcr_short_reactance
          • lcr_short_resistance
          • lcr_source_delay_mode
          • lcr_stimulus_function
          • lcr_voltage_amplitude
          • lcr_voltage_range
        • Enums added:
          • ApertureTimeAutoMode
          • CableLength
          • InstrumentMode
          • LCRCompensationType
          • LCRDCBiasSource
          • LCRImpedanceRangeSource
          • LCRMeasurementTime
          • LCROpenShortLoadCompensationDataSource
          • LCRReferenceValueType
          • LCRSourceDelayMode
          • LCRStimulusFunction
        • Methods added:
          • configure_lcr_custom_cable_compensation
          • fetch_multiple_lcr
          • get_lcr_compensation_last_date_and_time
          • get_lcr_custom_cable_compensation_data
          • measure_multiple_lcr
          • perform_lcr_load_compensation
          • perform_lcr_open_compensation
          • perform_lcr_open_custom_cable_compensation
          • perform_lcr_short_compensation
          • perform_lcr_short_custom_cable_compensation
        • Custom types added:
          • LCRLoadCompensationSpot
          • LCRMeasurement
      • nidcpower_lcr_source_ac_voltage.py example
    • Changed

      • Updated supported devices information in documentation for methods and properties
      • Added channel field to the Measurement namedtuple instances returned by fetch_multiple and measure_multiple
  • nifgen (NI-FGEN)

    • Added

      • data_markers repeated capability support - #1668
    • Changed

      • Addressed #1627 for attributes supporting the following repeated capabilities
        • channels
        • markers
        • data_markers
        • script_triggers
      • Corrected multiple mistakes in repeated capability info of attribute metadata
        • alters API behavior (repeated capability access of attributes) and documentation

Add Python 3.9, drop Python 3.5, and support 21.0 drivers

20 Aug 16:35
38afc05

Choose a tag to compare

  • ALL

    • Added

      • Support for Python 3.9
    • Removed

      • Support for Python 3.5
  • nidcpower (NI-DCPower)

    • Added

      • API parity with NI-DCPower 21.0.0.
        • Properties added:
          • output_cutoff_delay
  • nidigital (NI-Digital Pattern Driver)

    • Added

      • API parity with NI-Digital Pattern Driver 21.0.0.
        • Properties added:
          • digital_edge_rio_trigger_edge
          • digital_edge_rio_trigger_source
          • exported_rio_event_output_terminal
          • rio_event_terminal_name
          • rio_trigger_terminal_name
          • rio_trigger_type
        • Repeated Capabilities added:
          • rio_events
          • rio_triggers

Independent Channels support in nidcpower

09 Jul 21:08
8a09c56

Choose a tag to compare

  • nidcpower (NI-DCPower)

    • Added

      • Support for independent operation of instrument channels. Creating an nidcpower.Session
        with independent channels allows you to use multiple instruments in the same session. With
        independent channels, you can configure multiple channels of the same instrument, or of
        multiple instruments, independently of one another within the same session.
      • get_channel_names - #1588
      • create_advanced_sequence_commit_step - #1636
      • API parity with NI-DCPower 20.7.0 by adding Output Cutoff functionality.
        • Properties added:
          • output_cutoff_current_change_limit_high
          • output_cutoff_current_change_limit_low
          • output_cutoff_current_measure_limit_high
          • output_cutoff_current_measure_limit_low
          • output_cutoff_current_overrange_enabled
          • output_cutoff_enabled
          • output_cutoff_voltage_change_limit_high
          • output_cutoff_voltage_change_limit_low
          • output_cutoff_voltage_output_limit_high
          • output_cutoff_voltage_output_limit_low
        • Methods added:
          • clear_latched_output_cutoff_state
          • query_latched_output_cutoff_state

nidigital 1.0.0 and 1.3.3 of other modules

02 Mar 16:44
c796a6d

Choose a tag to compare

  • nidcpower (NI-DCPower)

    • Added

      • API parity with NI-DCPower 20.6.0 by adding Merged Channels and Shutdown Triggers support. The following properties are added:
        • merged_channels
        • digital_edge_shutdown_trigger_input_terminal
        • shutdown_trigger_type
  • nidigital (NI-Digital Pattern Driver)

    • Added

      • 1.0.0 release:
        • API reference documentation and API usage examples
      • API parity with NI-Digital Pattern Driver 20.6.0 by adding support for configuration of frequency counter measurement mode. The following properties are added:
        • frequency_counter_measurement_mode
        • frequency_counter_hysteresis_enabled
  • nifgen (NI-FGEN)

    • Added

      • nifgen_trigger.py example to demonstrate pulling a trigger from another device.
  • nitclk (NI-TClk)

    • Added

      • nitclk_niscope_synchronize_with_trigger.py to demonstrate homogenous triggering.
    • Removed

      • nitclk_configure.py as it did not do anything.

nidigital 0.9.2 and 1.3.2 of other modules

18 Sep 18:41
758e7a0

Choose a tag to compare

  • ALL

    • Changed

      • Fix #1491: import_attribute_configuration_buffer() fails intermittently when list or array.array is passed in.
      • Update "Driver Version Tested Against", in documentation, with latest versions installed on nimi-bot. The version is 20.5.0 for NI-DCPower, NI-SWITCH, and NI-DMM. no changes on other drivers.
  • nidcpower (NI-DCPower)

    • Added

      • API parity with NI-DCPower 20.5.0 by adding measurement autoranging threshold range support, for which the following properties are added:
        • autorange
        • autorange_aperture_time_mode
        • autorange_behavior
        • autorange_minimum_aperture_time
        • autorange_minimum_aperture_time_units
        • autorange_minimum_current_range
        • autorange_minimum_voltage_range
        • autorange_threshold_mode
  • niscope (NI-SCOPE)

    • Added

      • New methods for getting calibration information. - #1463
        • get_ext_cal_last_date_and_time
        • get_ext_cal_last_temp
        • get_self_cal_last_date_and_time
        • get_self_cal_last_temp
      • Measurement library methods. - #806
        • add_waveform_processing
        • clear_waveform_measurement_stats
        • clear_waveform_processing
        • fetch_array_measurement
        • fetch_measurement_stats
      • Measurement library properties.
        • meas_array_gain
        • meas_array_offset
        • meas_chan_high_ref_level
        • meas_chan_low_ref_level
        • meas_chan_mid_ref_level
        • meas_filter_center_freq
        • meas_filter_cutoff_freq
        • meas_filter_order
        • meas_filter_ripple
        • meas_filter_taps
        • meas_filter_transient_waveform_percent
        • meas_filter_type
        • meas_filter_width
        • meas_fir_filter_window
        • meas_high_ref
        • meas_low_ref
        • meas_mid_ref
        • meas_hysteresis_percent
        • meas_interpolation_sampling_factor
        • meas_last_acq_histogram_size
        • meas_other_channel
        • meas_percentage_method
        • meas_polynomial_interpolation_order
        • meas_ref_level_units
        • meas_time_histogram_high_time
        • meas_time_histogram_high_volts
        • meas_time_histogram_low_time
        • meas_time_hisogram_low_volts
        • meas_time_histogram_size
        • meas_voltage_histogram_high_volts
        • meas_voltage_histogram_low_volts
        • meas_voltage_histogram_size
    • Changed

      • Fix #1509: channel and record fields are swapped in waveform_info struct returned from niscope fetch methods
      • Fix #1510: record value in waveform_info struct returned from niscope fetch methods is wrong if record_number is non-zero

nidigital 0.9.1 and 1.3.1 of other modules

09 Jun 17:17
56f146c

Choose a tag to compare

  • ALL

    • Changed

      • Fix #1473: Unintentional dependency on pytest
      • Fix #1474: Requires hightime>=0.2.0

nidigital 0.9.0 and 1.3.0 of other modules

21 May 23:34
78ffa87

Choose a tag to compare

  • ALL

    • Changed

      • Change the type of applicable properties and method parameters from datetime.timedelta to hightime.timedelta and from datetime.datetime to hightime.datetime. - #744, #1368, #1382, #1397
      • Update "Driver Version Tested Against", in documentation, with latest versions installed on nimi-bot. The version is 20.0.0 for all modules except nidigital, for which it is 19.0.1.
  • NI-DCPower

    • Added

      • API parity with NI-DCPower 20.0 by adding the following properties:
        • Session.serial_number
        • Session.actual_power_allocation
        • Session.requested_power_allocation
        • Session.power_allocation_mode
  • NI-Digital Pattern Driver

    • Added

      • 0.9.0 release:
        • Public API is considered complete, stable, and tested
        • Parity with public API for other ADEs supported in NI-Digital Pattern Driver 19.0.1
        • API reference documentation and example code are not complete
    • Changed

      • Changed initial_state parameters in apply_levels_and_timing to basic sequence types - #1391
      • Changed HistoryRAMCycleInformation.repr to include __module__ - #1426
      • Changed return type of get_time_set_period and get_time_set_edge to datetime.timedelta - #1397
  • NI-SCOPE

    • Added

      • API parity with NI-SCOPE 20.0 by adding the following properties:
        • Session.end_of_acquisition_event_terminal_name
        • Session.end_of_record_event_terminal_name
        • Session.advance_trigger_terminal_name
        • Session.ref_trigger_terminal_name
        • Session.start_trigger_terminal_name
        • Session.ready_for_advance_event_terminal_name
        • Session.ready_for_ref_event_terminal_name
        • Session.ready_for_start_event_terminal_name

nidigital 0.5.0 and 1.2.1 of other modules

22 Apr 17:50
239756d

Choose a tag to compare

  • ALL

    • Added

      • Support for chained repeated capabilities. This allows things like

        session.sites[0, 1].pins['PinA', 'PinB'].ppmu_voltage_level = 4

        The repeated capabilities will be expanded to 'site0/PinA,site0/PinB,site1/PinA,site1/PinB'

  • NI-Digital Pattern Driver

    • Added

      • get_pattern_pin_names - #1292
      • Support for instruments repeated capability in the following properties - instrument_firmware_revision, serial_number, and timing_absolute_delay - #1228
      • load_specifications_levels_and_timing that allows loading of multiple specs, levels, and/or timing files in a single call - #1392
      • get_channel_names - #1386
    • Changed

      • Change the type of applicable method parameters and properties to enums - #1066
      • get_site_pass_fail returns dictionary where each key is a site number and value is a bool indicating pass/fail - #1297
      • burst_pattern returns dictionary where each key is a site number and value is a bool indicating pass/fail, if wait_until_done is specified as True - #1296
      • Update enum types to match the API in other ADEs - #1330:
        • Update the names of many enum types. See #1330 for the full list.
        • Added WriteStaticPinState enum type and changed the parameter type of write_static method to the newly added enum.
        • Added SoftwareTrigger enum type and changed the parameter type of send_software_edge_trigger method to the newly added enum.
      • Update fetch_history_ram_cycle_information, get_history_ram_sample_count, and is_site_enabled to use sites repeated capability - #1337
      • Rename parameter time_set to time_set_name in applicable time set methods - #1396
      • Modified unload_specifications to allow unloading of one or more specs files in a single call - #1392
      • In load_pin_map, changed parameter name pin_map_file_path to file_path - #1393
    • Removed

      • get_pattern_pin_list, get_pattern_pin_indexes and get_pin_name - #1292
      • get_site_results_site_numbers method and SiteResultType enum - #1298
      • reset_attribute - #1364
      • clear_error - #1366
      • clock_generator_initiate - #1370
      • load_specifications, load_levels, and load_timing - #1392
      • get_channel_name and get_channel_name_from_string - #1386
  • NI-TClk

    • Changed

      • Version updated to 1.2.1 to match other released nimi-python modules