SLS Detector Package Minor Release 9.1.0 released on 28.03.2025 =============================================================== This document describes the differences between v9.1.0 and v9.0.0 CONTENTS -------- 1 Changes 1.1 New or Changed Features 1.2 Resolved Features 2 On-board Detector Server Compatibility 3 Firmware Requirements 4 Kernel Requirements 5 Download, Documentation & Support 1 Changes ========== 1.1 New or Changed Features ============================ Receiver -------- * Frame Synchronizer (experimental) Added a new binary, similar to slsMultiReceiver, to collect images from several receivers and stream them out as a ZMQ multipart message (one part for each UDP port). No reconstuction of the image. Includeds start and end ZMQ messages as well for the start and end callback parameters. Documentation ------------- * Command line - multi module and multi detector indices Help on this topic has been added to the 'Command line' topic. * Row and column index (UDP header or callback) Help on how this is determined from the hostname is added to the 'UDP Header' and the 'Quick Start Guide' topics. Also added to the help in ' hostname' command line help. Please note that this can be overwritten by corresponding row and column commands. 1.2 Resolved Features ====================== Firmware --------- * [Jungfrau] Column select and filter resistor Configuration fix for chip v1.1 for these parameters Firmware &/ On-board Detector Server ------------------------------------ * [Jungfrau] Timing Info Decoder Only allowed for hardware v2.0 now. * [Jungfrau] Auto Comparator Disable - chip v1.0 Previously, this mode for chip v1.0 automatically disabled the on-chip gain switching compatator after a fixed portion of the exposure time. Now, one must set also the comparator disable time using 'compdisabletime' just as in chip v1.1. * [Mythen3] Default period on server start up is 0 now. Client ------- * Command line - Multi detector index inside file Multi detector index '[index]-' was ignored silently in the config/parameter file since 5.0.0. Now, it will throw an exception. Please use the multi detector index on the 'config' or 'parameter' command instead. * [Mythen3] patternX command autocompletes the argument to a path now. Receiver -------- * Multiple Receiver objects in multiple threads slsMultiReceiver uses child processes, but if user rewrote to use multiple receiver objects in multiple threads instead, a callback mutex is now implemented to handle the locking mechanism between threads for the callbacks. * Removed potentially unsafe str().c_str() calls. * slsMultiReceiver Ctrl + C Now cleans up properly upon Ctrl + C, including exiting the Arping thread. * slsMultiReceiver version --version or -v now gives the version of slsMultiReceiver. ZMQ --- * [Moench] Reduced significant print out in zmq processing using energy threshold. * [Moench] Zmq dummy packet restreaming command did nothing Temporary solution was to move from 'stop' to 'rx_stop' as 'stop' did not go further if module is idle. * [Moench] Too many Zmq dummy packets- unclear end in acquire Give time to process dummy packet before restreaming it and wait more before restreaming to reduce amoutn of zmq dummy packets to process. Simulators ----------- * [Jungfrau][Moench] Slightly faster transmistting time by removing sleeping only if there is a transmission delay 2 On-board Detector Server Compatibility ========================================== Eiger 9.0.0 Jungfrau 9.1.0 Mythen3 9.1.0 Gotthard2 9.0.0 Gotthard 9.0.0 Moench 9.0.0 On-board Detector Server Upgrade -------------------------------- From v6.1.0 (without tftp): update only on-board detector server Using command 'updatedetectorserver' udpate both on-board detector server and firmware simultaneously Using command 'update' Instructions available at https://slsdetectorgroup.github.io/devdoc/serverupgrade.html 3 Firmware Requirements ======================== Eiger 02.10.2023 (v32) (updated in 7.0.3) Jungfrau 09.02.2025 (v1.6, HW v1.0) (updated in 9.1.0) 08.02.2025 (v2.6, HW v2.0) (updated in 9.1.0) Mythen3 13.11.2024 (v2.0) (updated in 9.0.0) Gotthard2 03.10.2024 (v1.0) (updated in 9.0.0) Moench 26.10.2023 (v2.0) (updated in 8.0.2) Gotthard 08.02.2018 (50um and 25um Master) 09.02.2018 (25 um Slave) 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> Gotthard cannot be upgraded remotely Except Eiger, upgrade Using command 'programfpga' or udpate both on-board detector server and firmware simultaneously Using command 'update' Instructions available at https://slsdetectorgroup.github.io/devdoc/firmware.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 Quick Start Guide: https://slsdetectorgroup.github.io/devdoc/quick_start_guide.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 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 Detector UDP Header: https://slsdetectorgroup.github.io/devdoc/udpheader.html https://slsdetectorgroup.github.io/devdoc/udpdetspec.html slsReceiver Zmq Format: https://slsdetectorgroup.github.io/devdoc/slsreceiver.html#zmq-json-header-format TroubleShooting: https://slsdetectorgroup.github.io/devdoc/troubleshooting.html https://slsdetectorgroup.github.io/devdoc/troubleshooting.html#receiver-pc-tuning-options 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