diff --git a/slsDetectorSoftware/gotthardDetectorServer/firmware_funcs.c b/slsDetectorSoftware/gotthardDetectorServer/firmware_funcs.c index 3238da0a4..22a0d492c 100755 --- a/slsDetectorSoftware/gotthardDetectorServer/firmware_funcs.c +++ b/slsDetectorSoftware/gotthardDetectorServer/firmware_funcs.c @@ -1438,6 +1438,31 @@ int configureMAC(int ipad,long long int macad,long long int detectormacad, int d usleep(1000 * 1000); + /** send out first image as first packet does not give 0xcacacaca (needed to know if first image + * when switching back and forth between roi and no roi + */ + // remember old parameters + uint64_t oldtiming = setTiming(-1); + uint64_t oldframes = setFrames(-1); + uint64_t oldPeriod = setPeriod(-1); + uint64_t oldExptime = setExposureTime(-1); + + // set to basic parameters + setTiming(AUTO_TIMING); + setFrames(1); + setPeriod(1e6); + setExposureTime(1e5); + + // take an image + startStateMachine(); + waitForAcquisitionFinish(); + + // set to previous parameters + setTiming(oldtiming); + setFrames(oldframes); + setPeriod(oldPeriod); + setExposureTime(oldExptime); + return adcConfigured; } diff --git a/slsDetectorSoftware/gotthardDetectorServer/gitInfo.txt b/slsDetectorSoftware/gotthardDetectorServer/gitInfo.txt index 0ce8a7c10..68470fe67 100644 --- a/slsDetectorSoftware/gotthardDetectorServer/gitInfo.txt +++ b/slsDetectorSoftware/gotthardDetectorServer/gitInfo.txt @@ -1,9 +1,9 @@ Path: slsDetectorsPackage/slsDetectorSoftware/gotthardDetectorServer URL: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git Repository Root: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git -Repsitory UUID: 05d8ef6277b9d367aea69cc5b57e322d40079e27 -Revision: 242 +Repsitory UUID: 6b4a9be870588436dea0576060b2b8f3675ef062 +Revision: 244 Branch: 4.0.1-rc Last Changed Author: Dhanya_Thattil -Last Changed Rev: 4029 -Last Changed Date: 2018-12-03 10:46:49.000000002 +0100 ./server_defs.h +Last Changed Rev: 4039 +Last Changed Date: 2018-12-04 11:37:14.000000002 +0100 ./firmware_funcs.c diff --git a/slsDetectorSoftware/gotthardDetectorServer/gitInfoGotthard.h b/slsDetectorSoftware/gotthardDetectorServer/gitInfoGotthard.h index 53580a380..94ce762c3 100644 --- a/slsDetectorSoftware/gotthardDetectorServer/gitInfoGotthard.h +++ b/slsDetectorSoftware/gotthardDetectorServer/gitInfoGotthard.h @@ -1,6 +1,6 @@ #define GITURL "git@github.com:slsdetectorgroup/slsDetectorPackage.git" -#define GITREPUUID "05d8ef6277b9d367aea69cc5b57e322d40079e27" +#define GITREPUUID "6b4a9be870588436dea0576060b2b8f3675ef062" #define GITAUTH "Dhanya_Thattil" -#define GITREV 0x4029 -#define GITDATE 0x20181203 +#define GITREV 0x4039 +#define GITDATE 0x20181204 #define GITBRANCH "4.0.1-rc" diff --git a/slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv4.0.1.0 b/slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv4.0.1.0 deleted file mode 100755 index f71c7777d..000000000 Binary files a/slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv4.0.1.0 and /dev/null differ diff --git a/slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv4.0.1.1 b/slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv4.0.1.1 new file mode 100755 index 000000000..98e05b500 Binary files /dev/null and b/slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv4.0.1.1 differ diff --git a/slsDetectorSoftware/slsDetector/slsDetector.cpp b/slsDetectorSoftware/slsDetector/slsDetector.cpp index 18800cfb5..d01827955 100644 --- a/slsDetectorSoftware/slsDetector/slsDetector.cpp +++ b/slsDetectorSoftware/slsDetector/slsDetector.cpp @@ -6128,7 +6128,7 @@ int slsDetector::sendROI(int n,ROI roiLimits[]) { #endif // old firmware requires configuremac after setting roi - if (thisDetector->myDetectorType == GOTTHARD) { + if (thisDetector->myDetectorType == GOTTHARD && n != -1) { configureMAC(); } diff --git a/slsReceiverSoftware/include/GeneralData.h b/slsReceiverSoftware/include/GeneralData.h index 507adde70..e0c66682b 100644 --- a/slsReceiverSoftware/include/GeneralData.h +++ b/slsReceiverSoftware/include/GeneralData.h @@ -284,7 +284,6 @@ private: subFrameNumber = -1; bunchId = -1; frameNumber = ((uint32_t)(*((uint32_t*)(packetData)))); - cprintf(BLUE,"Listening %d: first fnum:%lu\n", index, frameNumber); if (oddStartingPacket) frameNumber++; packetNumber = frameNumber&packetIndexMask; @@ -383,9 +382,8 @@ private: if (nPixelsX == 1280) { uint32_t fnum = ((uint32_t)(*((uint32_t*)(packetData)))); uint32_t firstData = ((uint32_t)(*((uint32_t*)(packetData + 4)))); - cprintf(BLUE,"Listening %d: (setoff)fnum:0x%x, firstdata:0x%x\n", index, fnum, firstData); // first packet - if (firstData != 0xCACACACA) { cprintf(BLUE,"Listening %d: (setoff) first packet\n", index); + if (firstData == 0xCACACACA) { // packet number should be 0, but is 1 => so odd starting packet if (fnum & packetIndexMask) { oddStartingPacket = true; @@ -394,7 +392,7 @@ private: } } // second packet - else {cprintf(BLUE,"Listening %d: (setoff) second packet\n", index); + else { // packet number should be 1, but is 0 => so odd starting packet if (!(fnum & packetIndexMask)) { oddStartingPacket = true; diff --git a/slsReceiverSoftware/src/Listener.cpp b/slsReceiverSoftware/src/Listener.cpp index 60fff39ce..c72c17e15 100644 --- a/slsReceiverSoftware/src/Listener.cpp +++ b/slsReceiverSoftware/src/Listener.cpp @@ -548,7 +548,6 @@ uint32_t Listener::ListenToAnImage(char* buf) { // set first packet to be odd or even (check required when switching from roi to no roi) if (myDetectorType == GOTTHARD && !measurementStartedFlag) { oddStartingPacket = generalData->SetOddStartingPacket(index, listeningPacket + esize); - cprintf(GREEN,"oddstartingpacket: %d\n", (int)oddStartingPacket); } generalData->GetHeaderInfo(index, listeningPacket + esize, @@ -566,11 +565,11 @@ uint32_t Listener::ListenToAnImage(char* buf) { lastCaughtFrameIndex = fnum; -//#ifdef VERBOSE +#ifdef VERBOSE //if (!index) cprintf(GREEN,"Listening %d: currentfindex:%lu, fnum:%lu, pnum:%u numpackets:%u\n", index,currentFrameIndex, fnum, pnum, numpackets); -//#endif +#endif if (!measurementStartedFlag) RecordFirstIndices(fnum);