mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-28 09:10:01 +02:00
merge fix
This commit is contained in:
commit
ce6dc589c8
235
RELEASE.txt
235
RELEASE.txt
@ -7,7 +7,7 @@ This document describes the differences between 6.0.0 and 5.2.0 releases.
|
|||||||
|
|
||||||
CONTENTS
|
CONTENTS
|
||||||
--------
|
--------
|
||||||
1. New Features
|
1. New or Changed Features
|
||||||
2. Resolved Issues
|
2. Resolved Issues
|
||||||
3. Known Issues
|
3. Known Issues
|
||||||
4. Firmware Requirements
|
4. Firmware Requirements
|
||||||
@ -16,69 +16,221 @@ This document describes the differences between 6.0.0 and 5.2.0 releases.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
1. New Features
|
1. New or Changed Features
|
||||||
===============
|
==========================
|
||||||
|
|
||||||
Client
|
Client
|
||||||
------
|
------
|
||||||
1. Setting Mythen3 gain from command line
|
|
||||||
|
|
||||||
|
1. [Jungfrau] Chip version
|
||||||
|
Features for chipv1.1 incorporated
|
||||||
|
Command line: chipversion, API: getchipVersion
|
||||||
|
gets chip version (1.0 or 1.1)
|
||||||
|
chipv1.1 requires config_jungfrau.txt on detector server.
|
||||||
|
|
||||||
|
2. [Jungfrau] Chip configuration (only chipv1.1)
|
||||||
|
powering on the chip and changing settings will configure the chip.
|
||||||
|
Hence, required before acquisition.
|
||||||
|
|
||||||
2. (Gotthard2) veto streaming
|
3. [Jungfrau] Settings and Gain mode
|
||||||
New command to enable/ disable veto streaming via 2.5GbE or/ and 10GbE (debugging).
|
Settings can be gain0 and highgain0. Gain mode can be dynamicgain,
|
||||||
Command: vetostream, Detector::setVetoStream
|
forceswitchg1, forceswitchg2, fixg1, fixg2, fixg0. fixg0 must be
|
||||||
|
used with EXTRA caution as you can damage the detector.
|
||||||
|
Changing settings also changes dac values of 3 dacs () and reconfigures
|
||||||
|
chip (only v1.1)
|
||||||
|
|
||||||
|
4. [Jungfrau] Storage cells (only chipv1.1)
|
||||||
|
Additional number of storage cells not applicable for chipv1.1.
|
||||||
|
Storage cell start is only allowed from 0 - 3 for chipv1.1
|
||||||
|
(0 - 15 for chipv1.0).
|
||||||
|
|
||||||
|
5. [Gotthard2][Jungfrau] Filter Resistor
|
||||||
|
Command line: filterresistor, API: getFilterResistor/ setFilterResistor
|
||||||
|
Previous Command: filter, setFilter/ getFilter
|
||||||
|
Set Filter resistor. Increasing values for increasing resistance.
|
||||||
|
[Jungfrau] only for chipv1.1. Options: [0|1]. Default is 1.
|
||||||
|
[Gotthard2] Options: [0|1|2|3]. Default is 0.
|
||||||
|
|
||||||
|
6. [Jungfrau] Filter cell (only chipv1.1)
|
||||||
|
Command line: filtercell, API: getFilterCell/ setFilterCell
|
||||||
|
Set filter cell. Options: [0-12]. Advanced user command.
|
||||||
|
|
||||||
|
7. [Jungfrau] Comparator disable time (only chipv1.1)
|
||||||
|
Command line: comp_disable_time, API: getComparatorDisableTime/
|
||||||
|
setComparatorDisableTime
|
||||||
|
One can customize the period to disable comparator.
|
||||||
|
|
||||||
|
8. [Eiger][Jungfrau] Flip rows
|
||||||
|
Command line: fliprows, API: getFlipRows/ setFlipRows
|
||||||
|
Previous command: flippeddatax, setBottom/ getBottom
|
||||||
|
[Jungfrau] Flips rows in detector only for HW v2.0.
|
||||||
|
slsReceiver and slsDetectorGui will not flip them again.
|
||||||
|
[Eiger] same as before.
|
||||||
|
|
||||||
|
9. [Eiger][Jungfrau] Read n rows
|
||||||
|
Command line: readnrows, API: getReadNRows/ setReadNRows
|
||||||
|
Previous Command: readnlines, getPartialReadout/ setPartialReadout
|
||||||
|
[Eiger] same as before
|
||||||
|
[Jungfrau] Options: 8 - 512, multiples of 8. Default is 512.
|
||||||
|
|
||||||
|
10. [Gotthard2][Jungfrau] Current source
|
||||||
|
Command line: currentsource, API: getCurrentSource, setCurrentSource
|
||||||
|
Enable or disable current source. Default is disabled.
|
||||||
|
[Gotthard2] Can only enable or disable.
|
||||||
|
[Jungfrau] Can choose to fix, select source and choose normal or low
|
||||||
|
current. Normal/ low only for chipv1.1.
|
||||||
|
Select source is 0-63 for chipv1.0 and a 64 bit mask for chipv1.1.
|
||||||
|
|
||||||
|
11. Default dac
|
||||||
|
Command line: defaultdac, API: getDefaultDac/ setDefaultDac
|
||||||
|
change default value of a dac
|
||||||
|
[Jungfrau][Mythen3] Also change default value of dac for particular
|
||||||
|
setting.
|
||||||
|
|
||||||
|
12. Reset dacs
|
||||||
|
Command line: resetdacs, API: resetToDefaultDacs
|
||||||
|
Previous command: defaultdacs
|
||||||
|
Resets dacs to their default values or hard coded values.
|
||||||
|
|
||||||
|
13. [Mythen3] Gain Capacitance
|
||||||
|
Command line: gaincaps, API: getGainCaps/ setGainCaps
|
||||||
|
Set various gain capacitances.
|
||||||
|
|
||||||
2. (Gotthard2) veto algorithm
|
14. [Gotthard2] Veto Streaming from chip
|
||||||
New command to set veto algorithm for 2.5GbE or 10GbE (debugging).
|
Command line: veto, API: getVeto/ setVeto
|
||||||
Command: vetoalg, Detector::setVetoAlgorithm
|
This command used to mean veto streaming from detector. Now, it means
|
||||||
|
veto streaming from chip (New feature). Default is disabled.
|
||||||
|
|
||||||
Gotthard2 server
|
15. [Gotthard2] Veto streaming from detector
|
||||||
|
Command line: vetostream, API: getVetoStream, setVetoStream
|
||||||
|
Options: None, local link interface, 10 10GbE, Both
|
||||||
|
Default: None
|
||||||
|
10GbE (as before) will enable 2 udp interfaces in receiver.
|
||||||
|
|
||||||
|
16. [Gotthard2] Veto algorithm
|
||||||
|
Command line: vetoalg, API: getVetoAlgorithm/ setVetoAlgorithm
|
||||||
|
Set veto algorithm for each interface.
|
||||||
|
Options: hits, raw
|
||||||
|
|
||||||
|
17. [Eiger][Gotthard2][Mythen3] Module ID
|
||||||
|
Command line: moduleid, API: getModuleId
|
||||||
|
Previous command (Eiger only): serialnumber, getSerialNumber
|
||||||
|
Unique id read from txt file on detector and streamed out in udp header.
|
||||||
|
|
||||||
|
18. [Gotthard2]
|
||||||
|
Command line: dbitpipeline, API: getDBITPipeline/ setDBITPipeline
|
||||||
|
Set pipeline to latch digital bits. Options: 0-7
|
||||||
|
|
||||||
|
19. [Eiger][Jungfrau] Round Robin commands
|
||||||
|
Command line, udp_dstlist, API: getDestinationUDPList/
|
||||||
|
setDestinationUDPList
|
||||||
|
Round robin commands at the moment does not configure the receiver.
|
||||||
|
Set multiple udp destinations in the detector to stream udp data packets
|
||||||
|
to. Upto 32 destinations. Refer documentation for details.
|
||||||
|
|
||||||
|
Command line, udp_numdst, API: getNumberofUDPDestinations
|
||||||
|
|
||||||
|
[Jungfrau] Command line, udp_firstdst, API: getFirstUDPDestination/
|
||||||
|
setFirstUDPDestination
|
||||||
|
|
||||||
|
20. Command Line Parsing
|
||||||
|
Parsing of detector index and module index has been modified to
|
||||||
|
integrate round robin index.
|
||||||
|
[detector index]-[module index]:[round robin index] [command]
|
||||||
|
|
||||||
|
It is backwards compatible.
|
||||||
|
For ease, one can also execute
|
||||||
|
sls_detector_put [module index] [command]
|
||||||
|
|
||||||
|
21. Clear Udp Destination
|
||||||
|
Command line, udp_cleardst, API: clearUDPDestinations
|
||||||
|
This is useful when changing receivers for a detector or for round robin
|
||||||
|
system.
|
||||||
|
|
||||||
|
22. Shared Memory Naming
|
||||||
|
Shared memory name has been changed to reflect a more appropriate naming
|
||||||
|
scheme.
|
||||||
|
|
||||||
|
23. [Eiger][Mythen3] Blocking trigger
|
||||||
|
Command line: blockingtrigger, API: sendSoftwareTrigger
|
||||||
|
Sends software trigger signal to detector and blocks till frames are
|
||||||
|
sent out for that trigger.
|
||||||
|
|
||||||
|
24. [Eiger] Data stream enable for ports
|
||||||
|
Command line: datastream, API: getDataStream/ setDataStream
|
||||||
|
Enable or disable each port. Default: enabled
|
||||||
|
|
||||||
|
Detector servers
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
1. Bad Channels moved to a new register
|
1. [Gotthard2] Bad Channels moved to a new register, default settings
|
||||||
|
including clock frequency changed
|
||||||
|
|
||||||
|
2. [Gotthard2] Updated config file in detector server
|
||||||
|
|
||||||
|
|
||||||
Jungfrau- many Features
|
Virtual servers
|
||||||
|
----------------
|
||||||
|
|
||||||
|
1. Artifical pixel values increasing by every packet, instead of every pixel.
|
||||||
|
|
||||||
|
2. All possible features updated.
|
||||||
|
|
||||||
|
|
||||||
|
Receiver
|
||||||
|
--------
|
||||||
|
|
||||||
|
1. Frames caught in metadata
|
||||||
|
Frames caught by the master receiver is added to master file metadata.
|
||||||
|
Hdf5 and Binary version numbers changed to 6.3
|
||||||
|
|
||||||
|
|
||||||
|
Gui
|
||||||
|
----
|
||||||
|
|
||||||
|
1. [Mythen3] counters added in settings tab
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
2. Resolved Issues
|
2. Resolved Issues
|
||||||
==================
|
==================
|
||||||
|
|
||||||
Gotthard2 Server
|
Detector Servers
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
1. Tolerance in time parameters.
|
1. [Gotthard2] Tolerance in time parameters.
|
||||||
Eg. 220 ns was being set to 215 ns, instead of 222ns.
|
Eg. 220 ns was being set to 215 ns, instead of 222ns.
|
||||||
|
|
||||||
|
2. [Jungfrau] Stopping in trigger mode and then switching to auto timing mode
|
||||||
|
|
||||||
Jungfrau Server
|
|
||||||
----------------
|
|
||||||
|
|
||||||
1. Stopping in trigger mode and then switching to auto timing mode
|
|
||||||
blocks data streaming from detector. Workaround fix made in
|
blocks data streaming from detector. Workaround fix made in
|
||||||
detector server to reset core until firmware release.
|
detector server to reset core until next firmware release.
|
||||||
|
|
||||||
|
3. [Jungfrau][CTB][Moench][Gotthard][Gotthard2][Mythen3] Firmware Programming
|
||||||
|
Firmware programming incorporates more validations such as checksum of
|
||||||
|
program. Always ensure client and server are of same release before
|
||||||
|
programming firmware.
|
||||||
|
|
||||||
|
4. [Eiger] Stop sends last frame
|
||||||
|
Stop acquisition will now also send out all complete frames in fifo.
|
||||||
|
|
||||||
|
5. [Eiger] Bottom not rotated in quad mode. Fixed.
|
||||||
|
|
||||||
|
6. [Mythen3] counter mask effect on vthreshold
|
||||||
|
Setting counter mask changes vth daac values (ie. disabling sets to 2800),
|
||||||
|
vthreshold only changes for enabled counters, setting vth overwrites
|
||||||
|
dac even if counter disabled and when counters enabled, remembers set
|
||||||
|
values.
|
||||||
|
|
||||||
|
7. [Eiger] fast quad fix for loading trimbits
|
||||||
|
|
||||||
|
Receiver
|
||||||
|
--------
|
||||||
|
|
||||||
|
1. Disabled port or deactivated (half) modules will not create files.
|
||||||
|
|
||||||
|
|
||||||
getAutoCompDisable->getAutoComparatorDisable
|
- better control of what is built (PR)?
|
||||||
filter->filterResistor
|
- cmake package has hardcoded path to zeromq library
|
||||||
setBottom->setFlipRows
|
|
||||||
currentsource expects currentsrcparameters structure instread of bool
|
|
||||||
|
|
||||||
g2:
|
|
||||||
updated config file indetector server
|
|
||||||
vetoalg
|
|
||||||
vetostream
|
|
||||||
serialnumber (put)
|
|
||||||
dbitpipeline
|
|
||||||
readnlines->readnrows
|
|
||||||
serialnumber->moduleid
|
|
||||||
|
|
||||||
setting number of udp interfaces from 1 to 2, didnt get image in gui
|
|
||||||
|
|
||||||
virtual server plots increasing values for every packet.. not every pixel
|
|
||||||
|
|
||||||
3. Firmware Requirements
|
3. Firmware Requirements
|
||||||
========================
|
========================
|
||||||
@ -103,7 +255,7 @@ virtual server plots increasing values for every packet.. not every pixel
|
|||||||
|
|
||||||
Gotthard2
|
Gotthard2
|
||||||
=========
|
=========
|
||||||
Compatible version : 27.05.2021 (v1.0)
|
Compatible version : 27.05.2021 (development)
|
||||||
|
|
||||||
Moench
|
Moench
|
||||||
======
|
======
|
||||||
@ -135,6 +287,7 @@ virtual server plots increasing values for every packet.. not every pixel
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
5. Known Issues
|
5. Known Issues
|
||||||
===============
|
===============
|
||||||
|
|
||||||
|
@ -2263,7 +2263,7 @@ class Detector(CppDetectorApi):
|
|||||||
[Jungfrau] Set filter capacitor.
|
[Jungfrau] Set filter capacitor.
|
||||||
Note
|
Note
|
||||||
----
|
----
|
||||||
[Jungfrau] Options: 0-12. Default: 0. Advanced user command.
|
[Jungfrau] Options: 0-12. Default: 0. Advanced user command. Only for chipv1.1.
|
||||||
"""
|
"""
|
||||||
return self.getFilterCell()
|
return self.getFilterCell()
|
||||||
|
|
||||||
@ -2454,7 +2454,7 @@ class Detector(CppDetectorApi):
|
|||||||
Note
|
Note
|
||||||
----
|
----
|
||||||
Options:
|
Options:
|
||||||
(vetoAlgorithm): ALG_HITS, ALG_RAW
|
(vetoAlgorithm): ALG_HITS (default), ALG_RAW
|
||||||
(streamingInterface): ETHERNET_10GB, LOW_LATENCY_LINK
|
(streamingInterface): ETHERNET_10GB, LOW_LATENCY_LINK
|
||||||
Example
|
Example
|
||||||
----------
|
----------
|
||||||
|
@ -1253,7 +1253,7 @@ class Detector {
|
|||||||
/** [Jungfrau] Advanced */
|
/** [Jungfrau] Advanced */
|
||||||
Result<int> getFilterCell(Positions pos = {}) const;
|
Result<int> getFilterCell(Positions pos = {}) const;
|
||||||
|
|
||||||
/** [Jungfrau] Advanced Options[0-12]
|
/** [Jungfrau] Advanced Options[0-12], only for chip v1.1
|
||||||
*/
|
*/
|
||||||
void setFilterCell(int cell, Positions pos = {});
|
void setFilterCell(int cell, Positions pos = {});
|
||||||
|
|
||||||
@ -1380,7 +1380,7 @@ class Detector {
|
|||||||
getVetoAlgorithm(const defs::streamingInterface value,
|
getVetoAlgorithm(const defs::streamingInterface value,
|
||||||
Positions pos = {}) const;
|
Positions pos = {}) const;
|
||||||
|
|
||||||
/** [Gotthard2] Options(vetoAlgorithm): ALG_HITS, ALG_RAW.
|
/** [Gotthard2] Options(vetoAlgorithm): ALG_HITS (default), ALG_RAW.
|
||||||
* Options(streamingInterface): LOW_LATENCY_LINK, ETHERNET_10GB */
|
* Options(streamingInterface): LOW_LATENCY_LINK, ETHERNET_10GB */
|
||||||
void setVetoAlgorithm(const defs::vetoAlgorithm alg,
|
void setVetoAlgorithm(const defs::vetoAlgorithm alg,
|
||||||
const defs::streamingInterface value,
|
const defs::streamingInterface value,
|
||||||
|
@ -2136,7 +2136,7 @@ std::string CmdProxy::VetoAlgorithm(int action) {
|
|||||||
os << cmd << ' ';
|
os << cmd << ' ';
|
||||||
if (action == defs::HELP_ACTION) {
|
if (action == defs::HELP_ACTION) {
|
||||||
os << "[hits|raw] [lll|10gbe]\n\t[Gotthard2] Set the veto "
|
os << "[hits|raw] [lll|10gbe]\n\t[Gotthard2] Set the veto "
|
||||||
"algorithm."
|
"algorithm. Default is hits."
|
||||||
<< '\n';
|
<< '\n';
|
||||||
} else if (action == defs::GET_ACTION) {
|
} else if (action == defs::GET_ACTION) {
|
||||||
if (args.size() != 1) {
|
if (args.size() != 1) {
|
||||||
|
@ -1933,7 +1933,7 @@ class CmdProxy {
|
|||||||
|
|
||||||
INTEGER_COMMAND_VEC_ID(
|
INTEGER_COMMAND_VEC_ID(
|
||||||
filtercell, getFilterCell, setFilterCell, sls::StringTo<int>,
|
filtercell, getFilterCell, setFilterCell, sls::StringTo<int>,
|
||||||
"[0-12]\n\t[Jungfrau] Set Filter Cell. Advanced user Command");
|
"[0-12]\n\t[Jungfrau] Set Filter Cell. Only for chipv1.1. Advanced user Command");
|
||||||
|
|
||||||
/* Gotthard Specific */
|
/* Gotthard Specific */
|
||||||
TIME_GET_COMMAND(exptimel, getExptimeLeft,
|
TIME_GET_COMMAND(exptimel, getExptimeLeft,
|
||||||
|
@ -15,8 +15,8 @@
|
|||||||
// files
|
// files
|
||||||
|
|
||||||
// versions
|
// versions
|
||||||
#define HDF5_WRITER_VERSION (6.2) // 1 decimal places
|
#define HDF5_WRITER_VERSION (6.3) // 1 decimal places
|
||||||
#define BINARY_WRITER_VERSION (6.2) // 1 decimal places
|
#define BINARY_WRITER_VERSION (6.3) // 1 decimal places
|
||||||
|
|
||||||
#define MAX_FRAMES_PER_FILE 20000
|
#define MAX_FRAMES_PER_FILE 20000
|
||||||
#define SHORT_MAX_FRAMES_PER_FILE 100000
|
#define SHORT_MAX_FRAMES_PER_FILE 100000
|
||||||
|
Loading…
x
Reference in New Issue
Block a user