Changelog

Version 1.0.0-rc (wip)

  • Add ability to run the data acquisition for a limited amount of time before automatically stopping the run.

  • Add VME templates for the MDPP-32 (SCP and QDC variants).

  • [vme_script] Drop support for the ‘counted block read` commands. They are complex, rarely used and the MVLC does not currently support them. As long as a VME module supports either reading until BERR or can be read out using a fixed amount of (M)BLT cycles there is no need for these special commands.

  • [vme_script] VME scripts now support floating point values, variables and embedded mathematical expressions.

  • [vme_config] Updates to the mesytec module templates and the internal config logic to make use of the new VME script variables.

    These changes make IRQ and MCST handling with multiple modules and events much simpler. When using only mesytec modules no manual editing of scripts is required anymore.

    When loading a config file from a previous mvme version all module and event scripts will be updated to make use of the standard set of variables added to each VME event.

  • Improve UI responsiveness with the MVLC at low data rates.

  • Multiple MVLC fixes and improvements.

  • Various bugfixes and UI improvements

    • VME Script error messages are now highlighted in red in the log view.
    • Speed up creating and updating the analysis tree views. This is especially noticeable when using many modules or many VME events.
  • Upgrade Qt to version 5.14.1 on the build servers.

  • Do not ship libstdc++ with the linux binary package anymore. It caused issues in combination with setting LD_LIBRARY_PATH as is done in the initMVME shell script.

Version 0.9.6

  • Improved support for the MVLC. Among others VME Scripts can now be directly executed during a DAQ run without having to pause and resume the DAQ.
  • New UI for setting up the MVLC Trigger and I/O logic system.
  • Updates to the auto-matching of vme and analysis objects on config load.
  • Improved the mvlc_root_client
  • Documentation updates
  • Improved VME module templates
  • Various stability and bugfixes

Version 0.9.5.5

  • This is the first version with support for the upcoming mesytec MVLC VME controller.
  • Added the EventServer component which allows to transmit extracted readout data over a TCP connection.
  • Added a client for the EventServer protocol which generates and loads ROOT classes, fills instances of the generated classes with incoming readout data and writes these objects out to a ROOT file. Additionally user defined callbacks are invoked to perform further analysis on the data.

Version 0.9.5.4

  • Log values written to the VMUSB ActionRegister when starting / stopping the DAQ

Version 0.9.5.3

  • Allow access to all VMUSB registers via vme_script commands vmusb_write_reg and vmusb_read_reg
  • Fix a crash in Histo1DWidget when resolution reduction factor was set to 0

Version 0.9.5.2

  • Fix a race condition at DAQ/replay startup time
  • Remove old config autosave files after successfully loading a different config. This fixes an issue where apparently wrong autosave contents where restored.
  • Rewrite the analysis session system to not depend on HDF5 anymore. This was done to avoid potential issues related to HDF5 and multithreading.

Note

Session files created by previous versions cannot be loaded anymore. They have to be recreated by replaying from the original readout data.

Version 0.9.5.1

This release fixes issues with the code generated by the analysis export operator.

Specifically the generated CMakeLists.txt file was not able to find the ROOT package under Ubuntu-14.04 using the recommended way (probably other versions and other debian-based distributions where affected aswell). A workaround has been implemented.

Also c++11 support is now properly enabled when using CMake versions older than 3.0.0.

Version 0.9.5

Note

Analysis files created by this version can not be opened by prior versions because the file format has changed.

This version contains major enhancements to the analysis user interface and handling of analysis objects.

  • It is now possible to export an object selection to a library file and import objects from library files.

  • Directory objects have been added which, in addition to the previously existing userlevels, allow to further structure an analysis.

    Directories can contain operators, data sinks (histograms, rate monitors, etc.) and other directories.

  • Objects can now be moved between userlevels and directories using drag and drop.

  • A copy/paste mechanism has been implemented which allows creating a copy of a selection of objects.

    If internally connected objects are copied and then pasted the connections will be restored on the copies.

Other fixes and changes:

  • New feature: dynamic resolution reduction for 1D and 2D histograms.

    Axis display resolutions can now be adjusted via sliders in the user interface without having to change the physical resolution of the underlying histogram.

  • Improved hostname lookups for the SIS3153 VME controller under Windows. The result is now up-to-date without requiring a restart of mvme.

  • Add libpng to the linux binary package. This fixes a shared library version conflict under Ubuntu 18.04.

  • SIS3153: OUT2 is now active during execution of the main readout stack. Unchanged: OUT1 is active while in autonomous DAQ mode.

  • The Rate Monitor can now take multiple inputs, each of which can be an array or a single parameter.

    Also implemented a combined view showing all rates of a Rate Monitor in a single plot.

  • Add new VM-USB specific vme script commands: vmusb_write_reg and vmusb_read_reg which allow setting up the VM-USB NIM outputs, the internal scalers and delay and gate generators.

    Refer to the VM-USB manual for details about these registers.

Version 0.9.4.1

  • Fix expression operator GUI not properly loading indexed parameter connections
  • Split Histo1D info box into global and gauss specific statistics. Fixes to gauss related calculations.

Version 0.9.4

  • New: Analysis Expression Operator

    This is an operator that allows user-defined scripts to be executed for each readout event. Internally exprtk is used to compile and evaluate expressions.

  • New: Analysis Export Sink

    Allows exporting of analysis parameter arrays to binary files. Full and sparse data export formats and optional zlib compression are available.

    Source code showing how to read and process the exported data and generate ROOT histograms can be generated.

  • New: Analysis Rate Monitor

    Allows to monitor and plot analysis data flow rates and rates calculated from successive counter values (e.g. timestamp differences).

  • Moved the MultiEvent Processing option and the MultiEvent Module Header Filters from the VME side to the analysis side. This is more logical and allows changing the option when doing a replay.

  • General fixes and improvements to the SIS3153 readout code.

  • New: JSON-RPC interface using TCP as the transport mechanism.

    Allows to start/stop DAQ runs and to request status information.

Version 0.9.3

  • Support for the Struck SIS3153 VME Controller using an ethernet connection
  • Analysis:
    • Performance improvments
    • Better statistics
    • Can now single step through events to ease debugging
    • Add additional analysis aggregate operations: min, max, mean, sigma in x and y
    • Save/load of complete analysis sessions: Histogram contents are saved to disk and can be loaded at a later time. No new replay of the data is neccessary.
    • New: rate monitoring using rates generated from readout data or flow rates through the analysis.
  • Improved mesytec vme module templates. Also added templates for the new VMMR module.
  • More options on how the output listfile names are generated.
  • Various bugfixes and improvements

Version 0.9.2

  • New experimental feature: multi event readout support to achieve higher data rates.
  • DataFilter (Extractor) behaviour change: Extraction masks do not need to be consecutive anymore. Instead a “bit gather” step is performed to group the extracted bits together and the end of the filter step.
  • UI: Keep/Clear histo data on new run is now settable via radio buttons.
  • VMUSB: Activate output NIM O2 while DAQ mode is active. Use the top yellow LED to signal “USB InFIFO Full”.
  • Analysis performance improvements.
  • Major updates to the VME templates for mesytec modules.

Version 0.9.1

  • Record a timetick every second. Timeticks are stored as sections in the listfile and are passed to the analyis during DAQ and replay.
  • Add option to keep histo data across runs/replays
  • Fixes to histograms with axis unit values >= 2^31
  • Always use ZIP format for listfiles