diff --git a/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer b/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer index 8c4e4b9f8..9df4f947a 100755 Binary files a/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer and b/slsDetectorServers/ctbDetectorServer/bin/ctbDetectorServer_developer differ diff --git a/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c index 38995bb54..50c79186b 100644 --- a/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/ctbDetectorServer/slsDetectorFunctionList.c @@ -55,10 +55,10 @@ char *digitalData = 0; char volatile *analogDataPtr = 0; char volatile *digitalDataPtr = 0; char udpPacketData[UDP_PACKET_DATA_BYTES + sizeof(sls_detector_header)]; -uint32_t adcEnableMask_1g = 0; +uint32_t adcEnableMask_1g = BIT32_MSK; // 10g readout -uint8_t adcEnableMask_10g = 0; +uint8_t adcEnableMask_10g = BIT32_MSK; int32_t clkPhase[NUM_CLOCKS] = {}; uint32_t clkFrequency[NUM_CLOCKS] = {40, 20, 20, 200}; @@ -470,8 +470,8 @@ void setupDetector() { } vLimit = DEFAULT_VLIMIT; highvoltage = 0; - adcEnableMask_1g = 0; - adcEnableMask_10g = 0; + adcEnableMask_1g = BIT32_MSK; + adcEnableMask_10g = BIT32_MSK; analogEnable = 1; digitalEnable = 0; naSamples = 1; diff --git a/slsDetectorServers/moenchDetectorServer/bin/moenchDetectorServer_developer b/slsDetectorServers/moenchDetectorServer/bin/moenchDetectorServer_developer index 368c4606b..964b307a1 100755 Binary files a/slsDetectorServers/moenchDetectorServer/bin/moenchDetectorServer_developer and b/slsDetectorServers/moenchDetectorServer/bin/moenchDetectorServer_developer differ diff --git a/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c index 4029c5469..4e423c08d 100644 --- a/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/moenchDetectorServer/slsDetectorFunctionList.c @@ -53,10 +53,10 @@ char *digitalData = 0; char volatile *analogDataPtr = 0; char volatile *digitalDataPtr = 0; char udpPacketData[UDP_PACKET_DATA_BYTES + sizeof(sls_detector_header)]; -uint32_t adcEnableMask_1g = 0; +uint32_t adcEnableMask_1g = BIT32_MSK; // 10g readout -uint8_t adcEnableMask_10g = 0; +uint8_t adcEnableMask_10g = BIT32_MSK; int32_t clkPhase[NUM_CLOCKS] = {}; uint32_t clkFrequency[NUM_CLOCKS] = {40, 20, 20, 200}; @@ -480,8 +480,8 @@ void setupDetector() { dacValues[i] = -1; vLimit = DEFAULT_VLIMIT; highvoltage = 0; - adcEnableMask_1g = 0; - adcEnableMask_10g = 0; + adcEnableMask_1g = BIT32_MSK; + adcEnableMask_10g = BIT32_MSK; nSamples = 1; #ifdef VIRTUAL sharedMemory_setStatus(IDLE); diff --git a/slsDetectorSoftware/src/DetectorImpl.cpp b/slsDetectorSoftware/src/DetectorImpl.cpp index 20b159875..edc4440a4 100644 --- a/slsDetectorSoftware/src/DetectorImpl.cpp +++ b/slsDetectorSoftware/src/DetectorImpl.cpp @@ -290,6 +290,11 @@ void DetectorImpl::updateDetectorSize() { LOG(logDEBUG) << "Updating Multi-Detector Size: " << size(); const slsDetectorDefs::xy det_size = detectors[0]->getNumberOfChannels(); + + if (det_size.x == 0 || det_size.y == 0) { + throw sls::RuntimeError("Module size for x or y dimensions is 0. Unable to proceed in updating detector size. "); + } + int maxx = multi_shm()->numberOfChannels.x; int maxy = multi_shm()->numberOfChannels.y; int ndetx = 0, ndety = 0; diff --git a/slsSupportLib/include/sls/versionAPI.h b/slsSupportLib/include/sls/versionAPI.h index 65c6a09c4..0a3a968ca 100644 --- a/slsSupportLib/include/sls/versionAPI.h +++ b/slsSupportLib/include/sls/versionAPI.h @@ -4,10 +4,10 @@ #define APILIB 0x210816 #define APIRECEIVER 0x210816 #define APIGUI 0x210816 -#define APICTB 0x210820 #define APIGOTTHARD 0x210820 #define APIGOTTHARD2 0x210820 #define APIJUNGFRAU 0x210820 #define APIMYTHEN3 0x210820 -#define APIMOENCH 0x210819 #define APIEIGER 0x210820 +#define APICTB 0x210820 +#define APIMOENCH 0x210820