mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-05-25 20:20:42 +02:00

* badchannels for m3 and modify for g2 (file from single and multi) * m3: invert polarity of bit 7 and 11 signals from setmodule, allow commas in bad channel file * badchannel file can take commas, colons and comments (also taking care of spaces at the end of channel numbers) * tests 'badchannels' and 'Channel file reading' added, removing duplicates in badchannel list, defining macro for num counters in client side * fix segfault when list from file is empty, * fix tests assertion for ctbconfig (adding message) for c++11 * fixed badchannels in m3server (clocking in trimming) * badchannel tests can be run from any folder (finds the file)
254 lines
9.8 KiB
Plaintext
Executable File
254 lines
9.8 KiB
Plaintext
Executable File
SLS Detector Package Minor Release 7.0.0 released on 25.11.2021
|
|
===============================================================
|
|
|
|
This document describes the differences between v7.0.0 and v6.x.x
|
|
|
|
|
|
|
|
CONTENTS
|
|
--------
|
|
1. New or Changed Features
|
|
2. Resolved Issues
|
|
3. Firmware Requirements
|
|
4. Kernel Requirements
|
|
5. Download, Documentation & Support
|
|
|
|
|
|
|
|
|
|
1. New or Changed Features
|
|
==========================
|
|
|
|
- Fixed minor warnings (will fix commandline print of excess packets for missing packets)
|
|
- ctb slow adcs and any other adcs (other than temp) goes to the control Server
|
|
- number of udp interfaces is 2 for Eiger (CHANGE IN API??)
|
|
- added module id for virtual servers into the udp header
|
|
- refactoring (rxr)
|
|
- fixed patsetbit and patsetmask for moench
|
|
- changed default vref of adc9257 to 2V for moench (from 1.33V)
|
|
- moench and ctb - can set the starting frame number of next acquisition
|
|
- mythen server kernel check incompatible (cet timezone)
|
|
- rx_arping
|
|
- rx_threadsids max is now 9 (breaking api)
|
|
- fixed datastream disabling for eiger. Its only available in 10g mode.
|
|
- m3 server crash (vthrehsold dac names were not provided)
|
|
- allow vtrim to be interpolated for Eiger settings
|
|
- m3 setThresholdEnergy and setAllThresholdEnergy was overwriting gaincaps with settings enum
|
|
- can set localhost with virtual server with minimum configuration: (hostname localhost, rx_hostname localhost, udp_dstip auto)
|
|
- increases the progress according to listened index. (not processed index)
|
|
- current frame index points to listened frame index (not processed index)
|
|
- when in discard partial frames or empty mode, the frame number doesnt increase by 1, it increases to that number (so its faster)
|
|
- file write disabled by default
|
|
- eiger 12 bit mode
|
|
- start non blocking acquisition at modular level
|
|
- connect master commands to api (allow set master for eiger)
|
|
--ignore-config command line
|
|
- command line argument 'master' mainly for virtual servers (also master/top for real eiger), only one virtual server for eiger, use command lines for master/top
|
|
- stop servers also check for errors at startup( in case it was running with an older version)
|
|
- hostname cmd failed when connecting to servers in update mode (ctb, moench, jungfrau, eiger)
|
|
- missingpackets signed (negative => extra packets)
|
|
- framescaught and frameindex now returns a vector for each port
|
|
- progress looks at activated or enabled ports, so progress does not stagnate
|
|
- (eiger) disable datastreaming also for virtual servers only for 10g
|
|
- missing packets also takes care of disabled ports
|
|
- added geometry to metadata
|
|
- 10g eiger nextframenumber get fixed.
|
|
- stop, able to set nextframenumber to a consistent (max + 1) for all modules if different (eiger/ctb/jungfrau/moench)
|
|
- ctb: can set names for all the dacs
|
|
- fpga/kernel programming, checks if drive is a special file and not a normal file
|
|
- gotthard 25 um image reconstructed in gui and virtual hdf5 (firmware updated for slave to reverse channels)
|
|
- master binary file in json format now
|
|
- fixed bug introduced in 6.0.0: hdf5 files created 1 file per frame after the initial file which had maxframesperfile
|
|
- rx_roi
|
|
- m3 polarity, interpolation (enables all counters when enabled), pump probe, analog pulsing, digital pulsing
|
|
- updatedetectorserver - removes old server current binary pointing to for blackfin
|
|
- removing copydetectorserver using tftp
|
|
- registerCallBackRawDataReady and registerCallBackRawDataModifyReady now gives a sls_receiver_header* instead of a char*, and uint32_t to size_t
|
|
- registerCallBackStartAcquisition gave incorrect imagesize (+120 bytes). corrected.
|
|
- registerCallBackStartAcquisition parameter is a const string reference
|
|
- m3 (runnig config second time with tengiga 0, dr !=32, counters !=0x7) calculated incorrect image size expected
|
|
- fixed row column indexing (mainly for multi module Jungfrau 2 interfaces )
|
|
- eiger gui row indices not flipped anymore (fix in config)
|
|
- m3 (settings dac check disabled temporarily?)
|
|
- m3 virtual server sends the right pacets now
|
|
- gap pixels in gui enabled by default
|
|
- rxr src files and classes (detectordata, ZmqSocket, helpDacs) added to sls namespace, and macros (namely from logger (logINFO etc)), slsDetectorGui (make_unique in implemtnation requires sls nemspace (points to std otherwise) but not deectorImpl.cpp)
|
|
- blackfin programing made seamless (nCE fixed which helps)
|
|
-save settings file for m3 and eiger
|
|
- m3 threshold changes
|
|
- g2 and m3 clkdiv 2 (system clock) change should affect time settings (g2: exptime, period, delayaftertrigger, burstperiod, m3: exptime, gatedelay, gateperiod, period, delayaftertrigger)
|
|
- g2 system frequency is the same irrespective of timing source
|
|
- (apparently) rxr doesnt get stuck anymore from 6.1.1
|
|
- rxr mem size changed (fifo header size from 8 to 16) due to sls rxr header = 112.. 112+ 16=128 (reduces packet losss especially for g2)
|
|
-udp_srcip and udp_Srcip2: can set to auto (for virtual or 1g data networks)
|
|
- set dataset name for all hdf5 files to "data" only
|
|
- number of storage cells is not updated in teh receiver. done. and also allowing it to be modified in running status
|
|
- refactored memory structure in receiver and listener code (maybe resolves stuck issue, need to check)
|
|
- callback modified to have rx header and not rx header pointer
|
|
- adapted for g2 hdi v2.0. able to set master from server command line, server config file, and client.
|
|
- rx udp socket refactored (maybe resolves getting stuck?)remove check for eiger header and isntead checks for malformed packets for every detector
|
|
- jungfrau sw trigger , blocking trigger
|
|
-help should not create a new object
|
|
- jungfrau master
|
|
- g2 parallel command
|
|
- jungfrau sync
|
|
- m3 bad channels (badchannel file also for g2 extended to include commas and colons, remove duplicates)
|
|
- m3 fix for gain caps to invert where needed when loading from trimbit file (fix for feature might have been added only in developer branch)
|
|
- pat loop and wait address default
|
|
- ctb and moench Fw fixed (to work with pattern commdand) )addreess length
|
|
- jungfrau reset core and usleep removed (fix for 6.1.1 is now fixed in firmware)
|
|
|
|
|
|
2. Resolved Issues
|
|
==================
|
|
- Reading back sub-microsecond exposure times from the Python API.
|
|
|
|
3. Firmware Requirements
|
|
========================
|
|
|
|
Eiger
|
|
=====
|
|
Compatible version : 08.10.2021 (v29)
|
|
|
|
Jungfrau
|
|
========
|
|
Compatible version : 31.08.2021 (v1.2, PCB v1.0)
|
|
: 08.10.2021 (v2.2, PCB v2.0)
|
|
|
|
Gotthard
|
|
========
|
|
Compatible version : 08.02.2018 (50um and 25um Master)
|
|
: 09.02.2018 (25 um Slave)
|
|
|
|
Mythen3
|
|
=======
|
|
Compatible version : 10.09.2021 (v1.1)
|
|
|
|
Gotthard2
|
|
=========
|
|
Compatible version : 27.05.2021 (v0.1)
|
|
|
|
Moench
|
|
======
|
|
Compatible version : 05.10.2020 (v1.0)
|
|
|
|
Ctb
|
|
===
|
|
Compatible version : 05.10.2020 (v1.0)
|
|
|
|
Detector Upgrade
|
|
================
|
|
The following can be upgraded remotely:
|
|
Eiger via bit files
|
|
Jungfrau via command <.pof>
|
|
Mythen3 via command <.rbf>
|
|
Gotthard2 via command <.rbf>
|
|
Moench via command <.pof>
|
|
Ctb via command <.pof>
|
|
|
|
The following cannot be upgraded remotely:
|
|
Gotthard
|
|
|
|
Instructions available at
|
|
https://slsdetectorgroup.github.io/devdoc/firmware.html
|
|
and
|
|
https://slsdetectorgroup.github.io/devdoc/serverupgrade.html
|
|
|
|
|
|
|
|
4. Kernel Requirements
|
|
======================
|
|
|
|
Blackfin
|
|
========
|
|
Latest version: Fri Oct 29 00:00:00 2021
|
|
|
|
Older ones will work, but might have issues with programming firmware via
|
|
the package.
|
|
|
|
Nios
|
|
====
|
|
Compatible version: Mon May 10 18:00:21 CEST 2021
|
|
|
|
Kernel Upgrade
|
|
==============
|
|
Eiger via bit files
|
|
Others via command
|
|
|
|
Commands: udpatekernel, kernelversion
|
|
Instructions available at
|
|
https://slsdetectorgroup.github.io/devdoc/commandline.html
|
|
https://slsdetectorgroup.github.io/devdoc/detector.html
|
|
https://slsdetectorgroup.github.io/devdoc/pydetector.html
|
|
|
|
|
|
|
|
5. Download, Documentation & Support
|
|
====================================
|
|
|
|
Download
|
|
--------
|
|
|
|
The Source Code:
|
|
https://github.com/slsdetectorgroup/slsDetectorPackage
|
|
|
|
Documentation
|
|
-------------
|
|
|
|
Installation:
|
|
https://slsdetectorgroup.github.io/devdoc/installation.html#
|
|
|
|
Firmware Upgrade:
|
|
https://slsdetectorgroup.github.io/devdoc/firmware.html
|
|
|
|
Detector Server upgrade:
|
|
https://slsdetectorgroup.github.io/devdoc/serverupgrade.html
|
|
|
|
Detector Simulators:
|
|
https://slsdetectorgroup.github.io/devdoc/virtualserver.html
|
|
|
|
Consuming slsDetectorPackage:
|
|
https://slsdetectorgroup.github.io/devdoc/consuming.html
|
|
|
|
API Examples:
|
|
https://github.com/slsdetectorgroup/api-examples
|
|
|
|
Command Line Documentation:
|
|
https://slsdetectorgroup.github.io/devdoc/commandline.html
|
|
|
|
Quick Start Guide:
|
|
https://slsdetectorgroup.github.io/devdoc/quick_start_guide.html
|
|
|
|
C++ API Documentation:
|
|
https://slsdetectorgroup.github.io/devdoc/detector.html
|
|
|
|
C++ API Example:
|
|
https://slsdetectorgroup.github.io/devdoc/examples.html#
|
|
|
|
Python API Documentation:
|
|
https://slsdetectorgroup.github.io/devdoc/pygettingstarted.html
|
|
|
|
Python API Example:
|
|
https://slsdetectorgroup.github.io/devdoc/pyexamples.html
|
|
|
|
Receivers (including custom receiver):
|
|
https://slsdetectorgroup.github.io/devdoc/receivers.html
|
|
https://slsdetectorgroup.github.io/devdoc/slsreceiver.html
|
|
|
|
TroubleShooting:
|
|
https://slsdetectorgroup.github.io/devdoc/troubleshooting.html
|
|
|
|
Further Documentation:
|
|
https://www.psi.ch/en/detectors/documentation
|
|
|
|
Info on Releases:
|
|
https://www.psi.ch/en/detectors/software
|
|
|
|
|
|
Support
|
|
-------
|
|
|
|
dhanya.thattil@psi.ch
|
|
erik.frojdh@psi.ch
|
|
|