Skip to content

Bug Fix Release: 7.0.3

Compare
Choose a tag to compare
@thattil thattil released this 15 Nov 13:54
· 149 commits to main since this release

SLS Detector Package Major Release 7.0.3 released on 14.11.2023

This document describes the differences between v7.0.3 and v7.0.2

CONTENTS
--------
1   Resolved Issues
2   On-board Detector Server Compatibility
3   Firmware Requirements
4   Kernel Requirements
5   Download, Documentation & Support

1 Resolved Issues

Firmware
--------


*   [Eiger] Blocking trigger on quad
    Previously, blocking software trigger on a quad was not blocking. Fixed
    with firmware v32.


Client
------


*   Limit port number max to 65535
    Previously, one could set the port numbers (TCP, UDP, ZMQ) to values 
    higher than 65535 and also to 0. However, it was truncated to 16 bit
    in the background, but not relayed to the user. 
    Now, it will throw if it is 0 or greater than 65535 (16 bit).


*   Stopping acqusition for a single or subset of modules
    The Detector API previously stopped all modules.
    Now, it takes into account which modules the user wanted to stop.


*   [Jungfrau] Stop in sync mode
    When stopping acquisition in sync mode, only the master module sometimes 
    returns 'Idle' state instead of 'Stopped'. The software threw an 
    exception for the different states then.
    Now, it does not throw and a fix will be added to the next firmware 
    release for the different states (with SW release: v8.0.0).


*   [Eiger] Incorrect error message in Stop
    When stopping acquisition, if a half module were to give an error in a 
    rare case while the others succeeded, this would result in an re-attempt 
    to stop 9 more times before throwing an incorrect exception messsage that 
    it could not stop.
    Now, it is handled and will throw an exception of the error status
    immediately.


Receiver
--------


*   Limit TCP port number (command line) to max of 65535
    Refer issue under 'Client'.


Detector Simulator
------------------


*   Limit TCP port number (command line) to max of 65535
    Refer issue under 'Client'.


*   Some commands such as 'readnrows' would complain that it cannot be set 
    because the detector is not idle, but was setting it anyway. Fixed.


Gui/ Client Callback
--------------------


*   [Jungfrau] Gui: corrected color map of gain plot
    Previously, color on the gain plot did not update after the first image, 
    unless there were x/y min/max changes or window resizing. Fixed.


*   [Jungfrau] Acquisition finished callback error status in sync mode
    When stopping acquisition in multi module Jungfrau sync mode, 
    different status (master 'idle' and slaves 'stopped' in 
    firmware 2.4.1 or 1.4.1) show as 'error' in acquisition finished call 
    back (mainly used for gui). This is fixed.


*   [Jungfrau] Gui: Next frame number shown as 0 for inconsistency
    When stopping an acquisition in a multi module Jungfrau, the next 
    frame numbers might be different, for which the Gui shows an error message
    but keeps the number as 0. Now, it is fixed to show -1 for inconsistency 
    and error message shown. So, setting 0 will also prompt an error message
    that 0 is an invalid input.


Data Processing
---------------


*   [Moench] Segmentation fault with moench03RawDataPrcess
    Previously, it crashed when nframes > 0. Fixed.


*   [Moench] Interpolation issues fixed.


*   [Moench] When receiver in discard_partial mode and gets an empty frame,
    it sends a zmq packet with header and no data. This is handled in post
    processing as a temporary solution.

2 On-board Detector Server Compatibility

Eiger       7.0.3
Jungfrau    7.0.3
Mythen3     7.0.3
Gotthard2   7.0.3
Gotthard    7.0.3
Moench      7.0.3
Ctb         7.0.3


On-board Detector Server Upgrade
--------------------------------

From v6.1.0 (without tftp):
    Using command 'updatedetectorserver'
From 5.0.0 (with tftp):
    Using command 'copydetectorserver'

Instructions available at
    https://slsdetectorgroup.github.io/devdoc/serverupgrade.html

3 Firmware Requirements

Eiger       02.10.2023 (v32)                    (updated in 7.0.3)

Jungfrau    16.05.2023 (v1.4.1, HW v1.0)        (updated in 7.0.2)
            15.05.2023 (v2.4.1, HW v2.0)        (updated in 7.0.2)

Mythen3     24.01.2023 (v1.4)                   (updated in 7.0.0)

Gotthard2   23.11.2022 (v0.3)                   (updated in 7.0.0)

Gotthard    08.02.2018 (50um and 25um Master)
            09.02.2018 (25 um Slave) 

Moench      05.12.2022 (v0.3)                   (updated in 7.0.0)

Ctb         05.12.2022 (v1.1)                   (updated in 7.0.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>

Gotthard cannot be upgraded remotely  

Except Eiger, 
    upgrade 
        Using command 'programfpga' or

    udpate both 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
-------

    [email protected]
    [email protected]