mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-13 13:27:14 +02:00
jungfrau server bug fix: setting detector position gave error when switching between different sized detector configurations
This commit is contained in:
@ -18,6 +18,7 @@ This document describes the differences between 4.0.2 and 4.0.1 releases.
|
|||||||
====================
|
====================
|
||||||
|
|
||||||
- Jungfrau receiver as root user
|
- Jungfrau receiver as root user
|
||||||
|
- Jungfrau server detector position error when switching between different detector sizes
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -33,6 +34,12 @@ This document describes the differences between 4.0.2 and 4.0.1 releases.
|
|||||||
sls_detector_put rx_udpsocksize 1048576000
|
sls_detector_put rx_udpsocksize 1048576000
|
||||||
This has been fixed now to allow a greater size (including the default size).
|
This has been fixed now to allow a greater size (including the default size).
|
||||||
|
|
||||||
|
|
||||||
|
Detector Server (Jungfrau)
|
||||||
|
--------------------------
|
||||||
|
1. Switching between different detector size configurations, the detector gave an
|
||||||
|
error "Could not set detector position". This is fixed now.
|
||||||
|
|
||||||
|
|
||||||
3. Known Issues
|
3. Known Issues
|
||||||
===============
|
===============
|
||||||
|
@ -1313,14 +1313,17 @@ int configureMAC(uint32_t destip, uint64_t destmac, uint64_t sourcemac, uint32_t
|
|||||||
int setDetectorPosition(int pos[]) {
|
int setDetectorPosition(int pos[]) {
|
||||||
int ret = OK;
|
int ret = OK;
|
||||||
|
|
||||||
|
bus_w(COORD_0_REG, bus_r(COORD_0_REG) & (~COORD_0_X_MSK));
|
||||||
bus_w(COORD_0_REG, bus_r(COORD_0_REG) | ((pos[0] << COORD_0_X_OFST) & COORD_0_X_MSK));
|
bus_w(COORD_0_REG, bus_r(COORD_0_REG) | ((pos[0] << COORD_0_X_OFST) & COORD_0_X_MSK));
|
||||||
if ((bus_r(COORD_0_REG) & COORD_0_X_MSK) != ((pos[0] << COORD_0_X_OFST) & COORD_0_X_MSK))
|
if ((bus_r(COORD_0_REG) & COORD_0_X_MSK) != ((pos[0] << COORD_0_X_OFST) & COORD_0_X_MSK))
|
||||||
ret = FAIL;
|
ret = FAIL;
|
||||||
|
|
||||||
|
bus_w(COORD_0_REG, bus_r(COORD_0_REG) & (~COORD_0_Y_MSK));
|
||||||
bus_w(COORD_0_REG, bus_r(COORD_0_REG) | ((pos[1] << COORD_0_Y_OFST) & COORD_0_Y_MSK));
|
bus_w(COORD_0_REG, bus_r(COORD_0_REG) | ((pos[1] << COORD_0_Y_OFST) & COORD_0_Y_MSK));
|
||||||
if ((bus_r(COORD_0_REG) & COORD_0_Y_MSK) != ((pos[1] << COORD_0_Y_OFST) & COORD_0_Y_MSK))
|
if ((bus_r(COORD_0_REG) & COORD_0_Y_MSK) != ((pos[1] << COORD_0_Y_OFST) & COORD_0_Y_MSK))
|
||||||
ret = FAIL;
|
ret = FAIL;
|
||||||
|
|
||||||
|
bus_w(COORD_1_REG, bus_r(COORD_1_REG) & (~COORD_0_Z_MSK));
|
||||||
bus_w(COORD_1_REG, bus_r(COORD_1_REG) | ((pos[2] << COORD_0_Z_OFST) & COORD_0_Z_MSK));
|
bus_w(COORD_1_REG, bus_r(COORD_1_REG) | ((pos[2] << COORD_0_Z_OFST) & COORD_0_Z_MSK));
|
||||||
if ((bus_r(COORD_1_REG) & COORD_0_Z_MSK) != ((pos[2] << COORD_0_Z_OFST) & COORD_0_Z_MSK))
|
if ((bus_r(COORD_1_REG) & COORD_0_Z_MSK) != ((pos[2] << COORD_0_Z_OFST) & COORD_0_Z_MSK))
|
||||||
ret = FAIL;
|
ret = FAIL;
|
||||||
|
Reference in New Issue
Block a user