Compare commits

..

17 Commits

Author SHA1 Message Date
217973cdb4 fixes to cluster finder 2024-08-28 15:01:53 +02:00
8ada7b6e37 802: jungfrau HW 1.0: adc output clock phase to 120 (#951)
* jungfrau: change adc output clock phase from 180 to 120 for v1.0 boards for reliable readout of adc #2

* formatting
2024-08-22 14:27:16 +02:00
7a28ba03c9 formatting 2024-08-20 16:21:51 +02:00
6d5180667a updated documentation from martin (#947) 2024-08-19 16:50:01 +02:00
856b5e8aab bug fixes related to file saving (#931)
* fix the file path resetting issue of GUI in the case where different modules have different fpath setting.

* fix stack-buffer-overflow issue when using HDF5 HDF5DataFile::parameterDataTypes have 64bit type (i.e. STD_U64LE), the size of fill_value should be at least 8 bytes.

* change the type of fill_value to uint64_t
2024-08-19 12:58:31 +02:00
043a5f3cc1 8.0.2.rc: client: status for blocking acquire stop with slave temporarily in waiting (#943)
* acq finish call back gets status squashed with default error but before that need to wait for gotthard slaves to catch up from waiting to stopped
2024-08-15 17:13:07 +02:00
550ad4486a 8.0.2.rc: moench empty data callback (#935)
* moench: empty data call back so that zmq sockets are still made and listened to in acquire that it waits for the dummy packet to be done

* moench zmq postprocessor: remove NEWZMQ ifdefs and remove connect for publisher socket

* changed enum from READOUT_ACTION_ZMQ to READOUT_ZMQ_ACTION for consistency
2024-08-13 11:26:33 +02:00
8d185988c1 8.0.2.rc: m3 clkdiv0 20 (#923)
* m3: clk 0 changed from 10 to 20 (100MHz to 50MHz)

* g2: startup clk div back to 10 as in firmware but setting in software startup to 20
2024-07-25 17:17:20 +02:00
61e9437842 fix to rapidjson for build with gcc 14 (#928) 2024-07-25 17:15:03 +02:00
2d177924eb 8.0.2.rc: client: blocking acquire stop with slave temporarily in waiting (#925)
* client: stopping a blocking acquire of multi modules checks status to catch slaves that might still be in waiting. Problem is (gotthard2 25um at least) slave is in waiting only temporarily before going go idle/stopped. So a 50ms sleep is necessary ot not throw an unnecessary error

* client: when stopping blocking acquire, wait up to 1s in 50ms increments for slave to stop waiting temporarily
2024-07-16 15:43:14 +02:00
4eb8e52360 client bug fix: m3 multi module bad channel file throws bad allocation when modules skipped, needed to add vectors in 2d vector of bad channel list (#919) 2024-07-16 11:58:39 +02:00
2c278b1933 moench server: changed default values of adcphase for full speed from 300 to 150 and dac vipre_cds from 800 to 1280 (#921) 2024-07-15 12:31:27 +02:00
e4c52bde1d moench: min exptime and also a firmware update required (#911) 2024-02-07 10:22:46 +01:00
6251dc1b71 Protect from getenv("HOME") returning nullptr (#907)
* Protect from getenv("HOME") returning nullptr (e.g., in case running in systemd)

* Write proper warning in Module.cpp
2024-02-07 09:35:50 +01:00
aa173d3a87 802/moench default speed (#910)
* moench:change default speed to half speed
2024-02-06 12:10:42 +01:00
62c428320f moench server name and version renaming 2024-02-06 11:45:55 +01:00
70f467a3cd moench: changed max shifts of adc clk from 240 to 200 (#909) 2024-02-06 11:34:17 +01:00
9 changed files with 28 additions and 108 deletions

View File

@ -2,7 +2,7 @@
# Copyright (C) 2021 Contributors to the SLS Detector Package # Copyright (C) 2021 Contributors to the SLS Detector Package
cmake_minimum_required(VERSION 3.14) cmake_minimum_required(VERSION 3.14)
project(slsDetectorPackage) project(slsDetectorPackage)
set(PROJECT_VERSION 8.0.2) set(PROJECT_VERSION 8.0.1)
set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG") set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG")

View File

@ -1,7 +1,7 @@
SLS Detector Package Bug Fix Release 8.0.2 released on 18.09.2024 SLS Detector Package Major Release 8.0.1 released on 16.01.2024
================================================================= ===============================================================
This document describes the differences between v8.0.2 and v8.0.1 This document describes the differences between v8.0.1 and v8.0.0
@ -24,101 +24,20 @@ This document describes the differences between v8.0.2 and v8.0.1
----------- -----------
* Rapidjson compilation with gcc 14 * Fixed compilation error when building without zmq-devel installed
Fixed a compile issue with gcc 14. Same fix in later commits to rapidjson. and removed dependency on zeromq in conda build.
Client * Fixed libzmq compilation error to build the package as a submodule.
------
* getenv("HOME") returning nullptr Calibration
When this happens, especially for systemd, it segfaults. Protection -----------
provided by using empty string in this case.
* [Mythen3] Bad channel list for multi module * [Moench] Fixed Moench calibration
Exception thrown when loading multi module bad channel file skipping
modules in between. Fixed.
* [Gotthard2] Stopping a blocking acquisition
A check added in v8.0.0 to catch slaves that might be in waiting forever
also catches Gotthard2 25um slaves that might only be in waiting
temporarily. This is fixed with a 50ms sleep before checking again
(upto 1s).
* [Moench] Acquire finished processing call back
New executable 'sls_detector_acquire_zmq' added to listen to all zmq
packets from post processor or external process to signal end of post
processing. Post processor refactoring of zmq socket creation added.
Gui / Callback
--------------
* [Gotthard2] Stopping a blocking acquisition
From the previous issue, call back for acquisition finished status gives
error for inconsistent states. Again, a check every 50ms upto 1s is
added to let go the temporarily waiting slave.
* Different file paths
Fixes file path resetting when different modules have different fpath set.
Receiver
--------
* HDF5 fill value
Fix the fill value to accomodate all datatypes.
Firmware
--------
* [Moench] Overflow with exptime of 0
Fixed overflow when subtracting 1 clock cycle from exptime.
On-board Detector Server
------------------------
* [Moench] Few changes in Server:
- Max shifts of adc clock changed from 240 to 200.
- Fixed overflow when subtracting 2 clock cycles from exptime of 0ms.
- Default readout speed to half speed from quarter.
- Change default ADC phase to 150 for full readout speed.
- Change default vipre_cds dac from 800 to 1280.
* [Mythen3] Change Clk divider from 10 (100MHz) to 20 (50MHz) at startup.
* [Jungfrau] Fix for HW v1.0 boards for unreliable ADC 2
Issues sometimes seen on some HW v 1.0 boards are fixed with phase
relationship of 120 degrees. HW v2.0 boards are not affected.
Documentation
-------------
* Updated troubleshooting documentaion to check links and disable firewall
* Excluded non UTF-8 encoded libzmq documents due to machine dependent
compilation issues.
2 On-board Detector Server Compatibility 2 On-board Detector Server Compatibility
@ -126,11 +45,11 @@ This document describes the differences between v8.0.2 and v8.0.1
Eiger 8.0.0 Eiger 8.0.0
Jungfrau 8.0.2 Jungfrau 8.0.0
Mythen3 8.0.2 Mythen3 8.0.0
Gotthard2 8.0.0 Gotthard2 8.0.0
Gotthard 8.0.0 Gotthard 8.0.0
Moench 8.0.2 Moench 8.0.0
Ctb 8.0.0 Ctb 8.0.0
@ -139,6 +58,8 @@ This document describes the differences between v8.0.2 and v8.0.1
From v6.1.0 (without tftp): From v6.1.0 (without tftp):
Using command 'updatedetectorserver' Using command 'updatedetectorserver'
From 5.0.0 (with tftp):
Using command 'copydetectorserver'
Instructions available at Instructions available at
https://slsdetectorgroup.github.io/devdoc/serverupgrade.html https://slsdetectorgroup.github.io/devdoc/serverupgrade.html
@ -162,8 +83,7 @@ This document describes the differences between v8.0.2 and v8.0.1
Gotthard 08.02.2018 (50um and 25um Master) Gotthard 08.02.2018 (50um and 25um Master)
09.02.2018 (25 um Slave) 09.02.2018 (25 um Slave)
Moench 26.10.2023 (v0.3.2) (updated in 8.0.2, Moench 10.07.2023 (v0.3.2) (updated in 8.0.0, under development)
under development)
Ctb 28.08.2023 (v1.2) (updated in 8.0.0) Ctb 28.08.2023 (v1.2) (updated in 8.0.0)
@ -184,10 +104,10 @@ This document describes the differences between v8.0.2 and v8.0.1
Except Eiger, Except Eiger,
upgrade upgrade
using command 'programfpga' or Using command 'programfpga' or
udpate both server and firmware simultaneously udpate both server and firmware simultaneously
using command 'update' Using command 'update'
Instructions available at Instructions available at

View File

@ -890,7 +890,7 @@ EXCLUDE_SYMLINKS = NO
# Note that the wildcards are matched against the file with absolute path, so to # Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/* # exclude all test directories for example use the pattern */test/*
EXCLUDE_PATTERNS = */docs/* */tests/* */python/* */manual */slsDetectorServers/* */libs/* */integrationTests *README* */slsDetectorGui/* */ctbGui/* */slsDetectorCalibration/* *TobiSchluter* EXCLUDE_PATTERNS = */docs/* */tests/* */python/* */manual */slsDetectorServers/* */libs/* */integrationTests *README* */slsDetectorGui/* */ctbGui/* */slsDetectorCalibration/*
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the # (namespaces, classes, functions, etc.) that should be excluded from the

View File

@ -181,7 +181,7 @@ int main(int argc, char *argv[]) {
#endif #endif
#ifndef MOENCH04 #ifndef MOENCH04
moench03v2Data *decoder = new moench03v2Data(100); moench03v2Data *decoder = new moench03v2Data(nrows/2);
cout << "MOENCH03!" << endl; cout << "MOENCH03!" << endl;
#endif #endif
@ -383,7 +383,7 @@ int main(int argc, char *argv[]) {
runmax--; runmax--;
flist.close(); flist.close();
cout << "Found " << runmax << " files " << endl; cout << "Found " << runmax << " files " << endl;
flist.open (fformat, std::ifstream::in); flist.open (args["flist"].c_str(), std::ifstream::in);
} }
for (int irun = runmin; irun <= runmax; irun++) { for (int irun = runmin; irun <= runmax; irun++) {

View File

@ -839,7 +839,7 @@ void qTabMeasurement::UpdateProgress() {
int qTabMeasurement::VerifyOutputDirectoryError() { int qTabMeasurement::VerifyOutputDirectoryError() {
try { try {
auto retval = det->getFilePath(); auto retval = det->getFilePath();
for (int i = 0; i < static_cast<int>(retval.size()); ++i) { for (size_t i = 0; i < retval.size(); i++) {
det->setFilePath(retval[i], {i}); det->setFilePath(retval[i], {i});
} }
return slsDetectorDefs::OK; return slsDetectorDefs::OK;

View File

@ -1,13 +1,13 @@
// SPDX-License-Identifier: LGPL-3.0-or-other // SPDX-License-Identifier: LGPL-3.0-or-other
// Copyright (C) 2021 Contributors to the SLS Detector Package // Copyright (C) 2021 Contributors to the SLS Detector Package
/** API versions */ /** API versions */
#define RELEASE "8.0.2" #define RELEASE "8.0.1"
#define APIRECEIVER "8.0.0 0x231108"
#define APICTB "8.0.0 0x231109" #define APICTB "8.0.0 0x231109"
#define APIGOTTHARD "8.0.0 0x231109" #define APIGOTTHARD "8.0.0 0x231109"
#define APIGOTTHARD2 "8.0.0 0x231109" #define APIGOTTHARD2 "8.0.0 0x231109"
#define APIEIGER "8.0.0 0x231109" #define APIEIGER "8.0.0 0x231109"
#define APIJUNGFRAU "8.0.2 0x240827" #define APILIB "8.0.1 0x240112"
#define APIMOENCH "8.0.2 0x240827" #define APIMOENCH "8.0.2 0x240703"
#define APIMYTHEN3 "8.0.2 0x240827" #define APIMYTHEN3 "8.0.2 0x240715"
#define APILIB "8.0.2 0x240916" #define APIJUNGFRAU "8.0.2 0x240822"
#define APIRECEIVER "8.0.2 0x240916"