Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Fixed
Keysight 3600 power supply UI: remove on/off buttons for E3631A mode (only global on/off available)
Added
Keysight 3600 power supply: add readout of persona
CHANGED
changed to src/ layout
move setup.{cfg,py} into pyproject.toml
require python >= 3.9 (minimum version for numpy)
updated pre-commit versions and run on all files
updated pipelines and readthedocs python versions
[3.0.1] 2023-02-18
CHANGED
updated docs
Removed auto_update from HCPushButton since it connects to a command not a parameter
FIXED
HCLabel: force convertion to string, so that call to .rjust works all the time
TPI: several fixes
Fix quering for a serial device
[3.0.0] 2023-02-18
The main new feature is updating to pyqt6.
Changed
Update from PyQt5 to PyQt6
Update to pymodbus > 3.0.0
Update to nidaqmx >= 0.6.4
Update qtconsole >= 5.3.2
any parameter used in a HC-widget or dataset will now by default be updated in app
Fixed
fixed button click in MultiPowerSupply
fixed removing continuous command from Oscilloscope
fixed setting value in HCSpinBox
fixed try_reconnect for DG5353
fixed autoscale in plot widget
Added
TPI: new microwave controller
Lakeshore 372: new instrument driver
Keithley 2400: add voltage measurements
Keithley 2001: new driver
SRS CIS200: add clear offset command
SRS DG645: new driver
CAEN: new function to read out v_max
Removed
GPy dependencies
[2.2.0] 2022-07-26
Added
New very basic driver for HP 3478A and HP 33401A
Changed
Ability to pick pyvisa backend when creating an instrument
[2.1.1] 2022-04-14
Fixed
Author list in setup.cfg cannot be multiline
[2.1.0] 2022-04-13
Added
We already have an option to automatically update a list of parameteres, add the same for commands that should be called periodically
Created the TracePlotter widget for plotting traces or any data not saved as a dataset. TracePlotter ‘intercepts’ data as it is coming from the instrument (via a hook) rather than reading it from the App data dictionary
Hook for splitting a string
Siglent Function Generator enable button
Better support of Ctrl-C to stop the app
Changed
Hooks can now return non-string values
Ability to skip certain datasets in PlotTool
Examples now take a connection address on the command line, to make it easier to run them with real hardware
Keysight 36300: convert current and voltage to floats
VQM835: add option to read and set calibration constant
Picoscope: update driver, add support fro 2000-series
Fixed
Fix Siglent Function Generator impedance and waveform inputs
Fix return value for hook used with oscilloscopes
[2.0.0] 2021-11-24
Changed
Complete rewrite on how the instruments threads communicate with the main app. This used to rely on internal Qt slots and signals and is now being replaced by ZMQ-based communication.
Complete rewrite on where and how instrument data is stored. Instead of storing it at the instrument level, we now store it in app._data. This enables us to completely separate the UI from the instruments.
Complete rewrite on how instrument parameters are handled. Instead of a large if statement where different parameters/commands are checked for, we now use an add_command/add_parameter function that defines either a python function to be called or ascii strings that are sent to the instrument.
Updated the documentation
scan widget: use python function directly instead of macros
MacroRunnerTool now uses python function directly, renamed to FunctionRunnerTool
Added
Added Gaussian Process functionality during scanning to figure out where to scan next (instead of using linear scans)
Removed
Removed old functionality that is not used anymore, e.g., MeasurementDirector, MeasurementRequests, macros
[1.0.0] 2020-09-09
Started to use the program at our test stands. Lots of cleanup and improvements
Changed
Changed directory structure to separate backend and gui classes and make import easier
Renamed LoggerTool to DataWidget
pylint/pyflake cleanup
Changed all settings and values keys to upper case
Added
Gui/base/logging: some function to easily setup different logging styles
Documentation on RTD
General hooks when setting variables and getting values from backends
Simplify import by importing items in init.py of the subpackages and moving some variables into classes
This changelog file
Removed
Removed app.variables
Removed old, unused code
Clean up examples
[0.0.2] 2020-07-08
Added
first release on pypi