6. Changelog

6.1. Version 0.7.1 2025-02-08

6.1.1. Added

  • Added new icons for UCM, Line, and DeviceManager.

  • Added change log to readthedocs.

  • Added Linux installation instructions.

  • Generalized opening files and storing settings to work on Linux.

  • Limiting valid characters for channel names.

  • Adding messages emitted during initialization to Console.

  • Added itemFile and itemFileDark to simplify specification of icons and show icons in PluginManager

  • Added program info to plugins.ini

6.1.2. Changed

  • Removed checkbox for non optional plugins in plugin dialog.

  • Prevent device manager from moving or floating.

  • Disable navigation icons in explorer while loading directory to avoid inconsistent behavior.

  • Plugin dialog can be accessed while devices are communicating. Communication will only be stopped when reloading plugins.

  • Improved formatting of values in .ini files and change logs.

  • Prevent loading of channels while recording.

  • PICO only loads SDK if user has explicitly enabled this plugin.

  • Using dark mode background instead of black for scans.

  • Devices only store data regularly if they are actively recording new data.

  • Waiting for scans to finish when closing.

  • UCM, PID, and Scan channels show background corrected values if applicable.

  • Depo scan is using color of selected current channel.

6.1.3. Fixed

  • Reconnecting source channels after loading device configuration.

  • Fixed error caused by missing console history file.

  • Fixed copyClipboard in light theme

  • Fixed repeated plotting when loading scans

  • Fixed scan channel initialization for Depo Scan.

  • Using display parameter for Omni scan.

  • Removed display parameter for other scans.

  • Implemented proper file handling for UCM and PID.

  • Fixed incomplete status messages

  • RSPD3303C only sets values for enabled channels.

6.2. Version 0.7.0 2025-01-19

This version brings multiple improvements to the user interface and messages. The main new features include the Universal Channel Manager (UCM), PID Plugin, and a channel interface for scans. The data and config file formats remain unchanged. The plugin file format is significantly simplified but requires adjustments to use old plugins with the current version!

6.2.1. Added

  • Universal Channel Manager (UCM) plugin: This plugin allows to reference arbitrary channels from other devices to create a central list of the most important information. All referenced channels can be controlled from here. The corresponding display allows to see recorded data from multiple devices in one central location. For most users this should result in improved performance and less complexity as the individual device tabs and corresponding displays will rarely be needed once the channels in the UCM are configured.

  • PID Plugin: Allows to establish a PID control loop between two arbitrary channels.

  • Added option to collapse channels of same color to focus on the most relevant channels.

  • Channels now allow to change Line Style and Group for plotting.

  • Channels now allow to change Scaling to highlight important channels (and to see them from the other side of the lab!).

  • Added channel interface for scans.

  • Added option to inspect the object currently in the Console input.

  • Option to use icons instead of labels in tab bars (active by default).

  • Live Displays allow to sort plot curves by device, unit, or group (new channel parameter), and arrange them horizontally, vertically, or stacked.

  • Added plugins for KEITHLEY 6487, GAA MIPS, NI9263, Pfeiffer Omnicontrol, RSPD3303C, and pico PT-104.

  • Added option to generate plot files for displays including MS, Line, PDB, Holo.

  • Plugin Manager now shows the supported version of plugins and highlights if they are compatible with the current program or not.

6.2.2. Changed

  • Plugin format: Much of the functionally has been moved to the base class allowing developers to use standard functionality by using a flag (useMonitors, useDisplays, useBackgrounds, useOnOffLogic) instead of implementing it in the specific plugin file. Some functions have been renamed to be more descriptive and consistent. Most important examples are: stop -> closeCommunication, init -> initializeCommunication, apply -> applyValues. Make sure to compare to build in examples and test your plugins when updating your custom plugins for the current version. Documentation in CustomDevice has been improved to demonstrate and explain the current plugin format.

  • Depo scan can now record data from arbitrary additional channels.

  • Logging is now enabled by default. More informative status, warning, and error messages. A lot more messages in debug mode.

  • Using icons for messages, warnings, and errors in status bar, log file, and Console

  • Old logs are regularly removed from the log file

  • Reorganized internal device plugins in dedicated folders

  • Temporary parameters like monitors or other device states are now saved but not restored.

  • Parameters that are undefined before communication to the corresponding device is established are set to NaN to emphasize that there is no up to date value available.

6.2.3. Deprecated

  • Splitting Pressure plugin into dedicated TIC and MAXIGAUGE plugins. If necessary channels can be combined using UCM. Pressure plugin is now deprecated and will be removed in the future.

6.2.4. Fixed

  • Replaced deprecated numpy.bool8 with numpy.bool_

  • Various minor bug fixes

6.2.5. Performance

  • Various performance improvements

  • Improved speed and stability of tests. Time is logged during testing if in debug mode.

6.3. Version 0.6.18 2024-06-10

6.3.1. Added

  • Tree.inspect now shows values if applicable

  • Console restores history of used commands after restart

  • Introduced setDisplayDecimals to customize display of floats including scientific notation

  • Added variable aspect ratio option for beam scan (varAxesAspect in autogenerated plot file)

  • Added new scan mode “Spectra” for a series of 1D spectra based on Beam scan

  • Added new UI tool MultiStateAction

  • Added dedicated channelPlot to display channel data instead of using Line plugin

  • Added msSpectra mode for simple mass spectra

  • Added PluginManager.testing flag to avoid interaction of parallel testing thread with UI diolog boxes leading to rare crash during testing

6.3.2. Changed

  • Communication has to be stopped before channels can be moved (increase stability)

  • Default ini files are scanned for changes when closing and only overwritten if necessary

  • Using last 10 s instead of last 10 data points to define background signal

  • Scans now respect the subtractBackgound states defined by the devices of the relevant channels

  • Virtual channels do not need to be active to be included in scans

6.3.3. Fixed

  • Update to pyqtgraph==0.13.7 after replacing depricated api

6.3.4. Performance

  • Plotting performance improved by reusing figures (figure recreation still needed if theme is changing)

6.4. Version 0.6.17 2024-03-18

6.4.1. Added

  • Added pupup to show errors while importing plugins (before the Console plugin is ready to display those errors.)

  • Added Smooth parameter to all channels to reduce noise using running average.

6.4.2. Changed

  • Live displays are visible by default

  • Test mode active by default

  • Stop all communication and recording from DeviceManager, now requires explicit confirmation

  • Added warnings for output channels that are not enabled, or their device is not initialized or not recording

  • Pressure plugin: init TIC and TPG decoupled so you can use it with only one of them or both.

6.4.3. Removed

  • Removed explicit save of settings on program termination (settings are saved in real time)

6.5. Version 0.6.16 2023-12-17

First stable release on pipy

6.5.1. Added

  • the deposition plugin now shows a checklist for validation before it starts recording

  • added option to use dark or light theme when copying graphs to clipboard

  • added getting started section in docs

  • added PluginManager.showThreads() function for debugging

  • added minimal support to restore plugin dimensions after restart

  • added exponential temperature change for Temperature plugin in test mode

  • added option to reset local settings using python -m esibd.reset

6.5.2. Changed

  • channels can now only be enabled and disabled in advanced mode

  • live displays are now visible by default after initial installation

6.5.3. Fixed

  • acquisition is no longer stopped when loading scan or device settings

  • added input validation of session path

  • fixed issue with autoscaling in static displays

6.5.4. Performance

  • increased speed of TIC pressure communication by using correct EOL character

6.6. Version 0.6.14 2023-11-07

First release public on PyPi