diff --git a/slsDetectorSoftware/eigerDetectorServer/Beb.c b/slsDetectorSoftware/eigerDetectorServer/Beb.c index 5299f1d37..692f87755 100644 --- a/slsDetectorSoftware/eigerDetectorServer/Beb.c +++ b/slsDetectorSoftware/eigerDetectorServer/Beb.c @@ -180,24 +180,31 @@ void Beb_GetModuleConfiguration(int* master, int* top, int* normal){ void Beb_EndofDataSend(int tengiga){ //mapping new memory u_int32_t* csp0base=0; - int l_framepktcounter2, l_txndelaycounter, l_framedelaycounter, r_framepktcounter2, r_txndelaycounter, r_framedelaycounter; - int l_framepktcounter2_new, l_txndelaycounter_new, l_framedelaycounter_new, r_framepktcounter2_new, r_txndelaycounter_new, r_framedelaycounter_new; - int addr_l_framepktcounter2, addr_l_txndelaycounter, addr_l_framedelaycounter, addr_r_framepktcounter2, addr_r_txndelaycounter, addr_r_framedelaycounter; + int l_framepktLsbcounter, l_framepktMsbcounter, l_txndelaycounter, l_framedelaycounter; + int r_framepktLsbcounter, r_framepktMsbcounter, r_txndelaycounter, r_framedelaycounter; + int l_framepktLsbcounter_new, l_framepktMsbcounter_new, l_txndelaycounter_new, l_framedelaycounter_new; + int r_framepktLsbcounter_new, r_framepktMsbcounter_new, r_txndelaycounter_new, r_framedelaycounter_new; + int addr_l_framepktLsbcounter, addr_l_framepktMsbcounter, addr_l_txndelaycounter, addr_l_framedelaycounter; + int addr_r_framepktLsbcounter, addr_r_framepktMsbcounter, addr_r_txndelaycounter, addr_r_framedelaycounter; switch(tengiga){ case 0: - addr_l_framepktcounter2 = ONE_GIGA_LEFT_PKT_SEND_COUNTER; + addr_l_framepktLsbcounter = ONE_GIGA_LEFT_INDEX_LSB_COUNTER; + addr_l_framepktMsbcounter = ONE_GIGA_LEFT_INDEX_MSB_COUNTER; addr_l_txndelaycounter = ONE_GIGA_LEFT_TXN_DELAY_COUNTER; addr_l_framedelaycounter = ONE_GIGA_LEFT_FRAME_DELAY_COUNTER; - addr_r_framepktcounter2 = ONE_GIGA_RIGHT_PKT_SEND_COUNTER; + addr_r_framepktLsbcounter = ONE_GIGA_RIGHT_INDEX_LSB_COUNTER; + addr_r_framepktMsbcounter = ONE_GIGA_RIGHT_INDEX_MSB_COUNTER; addr_r_txndelaycounter = ONE_GIGA_RIGHT_TXN_DELAY_COUNTER; addr_r_framedelaycounter = ONE_GIGA_RIGHT_FRAME_DELAY_COUNTER; break; case 1: - addr_l_framepktcounter2 = TEN_GIGA_LEFT_PKT_SEND_COUNTER; + addr_l_framepktLsbcounter = TEN_GIGA_LEFT_INDEX_LSB_COUNTER; + addr_l_framepktMsbcounter = TEN_GIGA_LEFT_INDEX_MSB_COUNTER; addr_l_txndelaycounter = TEN_GIGA_LEFT_TXN_DELAY_COUNTER; addr_l_framedelaycounter = TEN_GIGA_LEFT_FRAME_DELAY_COUNTER; - addr_r_framepktcounter2 = TEN_GIGA_RIGHT_PKT_SEND_COUNTER; + addr_r_framepktLsbcounter = TEN_GIGA_RIGHT_INDEX_LSB_COUNTER; + addr_r_framepktMsbcounter = TEN_GIGA_RIGHT_INDEX_MSB_COUNTER; addr_r_txndelaycounter = TEN_GIGA_RIGHT_TXN_DELAY_COUNTER; addr_r_framedelaycounter = TEN_GIGA_RIGHT_FRAME_DELAY_COUNTER; break; @@ -211,23 +218,27 @@ void Beb_EndofDataSend(int tengiga){ return; }else{ //read data first time - l_framepktcounter2 = Beb_Read32(csp0base, addr_l_framepktcounter2); + l_framepktLsbcounter = Beb_Read32(csp0base, addr_l_framepktLsbcounter); + l_framepktMsbcounter = Beb_Read32(csp0base, addr_l_framepktMsbcounter); l_txndelaycounter = Beb_Read32(csp0base, addr_l_txndelaycounter); l_framedelaycounter = Beb_Read32(csp0base, addr_l_framedelaycounter); - r_framepktcounter2 = Beb_Read32(csp0base, addr_r_framepktcounter2); + r_framepktLsbcounter = Beb_Read32(csp0base, addr_r_framepktLsbcounter); + r_framepktMsbcounter = Beb_Read32(csp0base, addr_r_framepktMsbcounter); r_txndelaycounter = Beb_Read32(csp0base, addr_r_txndelaycounter); r_framedelaycounter = Beb_Read32(csp0base, addr_r_framedelaycounter); //#ifdef VERBOSE printf("\nLeft\n" - "Framepacketcounter: %d\n" + "FramepacketLsbcounter: %d\n" + "FramepacketMsbcounter: %d\n" "Txndelaycounter:%d\n" "Framedelaycounter:%d\n" "\nRight\n" - "Framepacketcounter: %d\n" + "FramepacketLsbcounter: %d\n" + "FramepacketMsbcounter: %d\n" "Txndelaycounter:%d\n" "Framedelaycounter:%d\n\n", - l_framepktcounter2,l_txndelaycounter,l_framedelaycounter, - r_framepktcounter2,r_txndelaycounter,r_framedelaycounter); + l_framepktLsbcounter,l_framepktMsbcounter,l_txndelaycounter,l_framedelaycounter, + r_framepktLsbcounter,r_framepktMsbcounter,r_txndelaycounter,r_framedelaycounter); //#endif //keep comparing with previous values @@ -239,33 +250,42 @@ void Beb_EndofDataSend(int tengiga){ usleep(maxtimer); //read new values - l_framepktcounter2_new = Beb_Read32(csp0base, addr_l_framepktcounter2); + l_framepktLsbcounter_new = Beb_Read32(csp0base, addr_l_framepktLsbcounter); + l_framepktMsbcounter_new = Beb_Read32(csp0base, addr_l_framepktMsbcounter); l_txndelaycounter_new = Beb_Read32(csp0base, addr_l_txndelaycounter); l_framedelaycounter_new = Beb_Read32(csp0base, addr_l_framedelaycounter); - r_framepktcounter2_new = Beb_Read32(csp0base, addr_r_framepktcounter2); + r_framepktLsbcounter_new = Beb_Read32(csp0base, addr_r_framepktLsbcounter); + r_framepktMsbcounter_new = Beb_Read32(csp0base, addr_r_framepktMsbcounter); r_txndelaycounter_new = Beb_Read32(csp0base, addr_r_txndelaycounter); r_framedelaycounter_new = Beb_Read32(csp0base, addr_r_framedelaycounter); //#ifdef VERBOSE printf("\nLeft\n" - "Framepacketcounter: %d\n" + "FramepacketLsbcounter: %d\n" + "FramepacketMsbcounter: %d\n" "Txndelaycounter:%d\n" "Framedelaycounter:%d\n" "\nRight\n" - "Framepacketcounter: %d\n" + "FramepacketLsbcounter: %d\n" + "FramepacketMsbcounter: %d\n" "Txndelaycounter:%d\n" "Framedelaycounter:%d\n\n", - l_framepktcounter2_new,l_txndelaycounter_new,l_framedelaycounter_new, - r_framepktcounter2_new,r_txndelaycounter_new,r_framedelaycounter_new); + l_framepktLsbcounter_new,l_framepktMsbcounter_new,l_txndelaycounter_new,l_framedelaycounter_new, + r_framepktLsbcounter_new,r_framepktMsbcounter_new,r_txndelaycounter_new,r_framedelaycounter_new); //#endif - if ((l_framepktcounter2 == l_framepktcounter2_new) && (r_framepktcounter2 == r_framepktcounter2_new)) + if ((l_framepktLsbcounter == l_framepktLsbcounter_new) && + (l_framepktMsbcounter == l_framepktMsbcounter_new) && + (r_framepktLsbcounter == r_framepktLsbcounter_new) && + (r_framepktMsbcounter == r_framepktMsbcounter_new)) break; //update old values - l_framepktcounter2 = l_framepktcounter2_new; + l_framepktLsbcounter = l_framepktLsbcounter_new; + l_framepktMsbcounter = l_framepktMsbcounter_new; l_txndelaycounter = l_txndelaycounter_new; l_framedelaycounter = l_framedelaycounter_new; - r_framepktcounter2 = r_framepktcounter2_new; + r_framepktLsbcounter = r_framepktLsbcounter_new; + r_framepktMsbcounter = r_framepktMsbcounter_new; r_txndelaycounter = r_txndelaycounter_new; r_framedelaycounter = r_framedelaycounter_new; diff --git a/slsDetectorSoftware/eigerDetectorServer/FebRegisterDefs.h b/slsDetectorSoftware/eigerDetectorServer/FebRegisterDefs.h index 1b13cad65..d7c8c012b 100644 --- a/slsDetectorSoftware/eigerDetectorServer/FebRegisterDefs.h +++ b/slsDetectorSoftware/eigerDetectorServer/FebRegisterDefs.h @@ -156,27 +156,27 @@ #define FEB_REG_STATUS 0xa //1g counters -#define ONE_GIGA_LEFT_FRAME_SEND_COUNTER 0x04 -#define ONE_GIGA_LEFT_PKT_SEND_COUNTER 0x24 +#define ONE_GIGA_LEFT_INDEX_LSB_COUNTER 0x04 +#define ONE_GIGA_LEFT_INDEX_MSB_COUNTER 0x24 #define ONE_GIGA_LEFT_TXN_DELAY_COUNTER 0x104 #define ONE_GIGA_LEFT_FRAME_DELAY_COUNTER 0x124 -#define ONE_GIGA_RIGHT_FRAME_SEND_COUNTER 0x44 -#define ONE_GIGA_RIGHT_PKT_SEND_COUNTER 0x64 +#define ONE_GIGA_RIGHT_INDEX_LSB_COUNTER 0x44 +#define ONE_GIGA_RIGHT_INDEX_MSB_COUNTER 0x64 #define ONE_GIGA_RIGHT_TXN_DELAY_COUNTER 0x144 #define ONE_GIGA_RIGHT_FRAME_DELAY_COUNTER 0x164 //10g counters -#define TEN_GIGA_LEFT_FRAME_SEND_COUNTER 0x84 -#define TEN_GIGA_LEFT_PKT_SEND_COUNTER 0xa4 +#define TEN_GIGA_LEFT_INDEX_LSB_COUNTER 0x84 +#define TEN_GIGA_LEFT_INDEX_MSB_COUNTER 0xa4 #define TEN_GIGA_LEFT_TXN_DELAY_COUNTER 0x184 #define TEN_GIGA_LEFT_FRAME_DELAY_COUNTER 0x1a4 -#define TEN_GIGA_RIGHT_FRAME_SEND_COUNTER 0xc4 -#define TEN_GIGA_RIGHT_PKT_SEND_COUNTER 0xe4 +#define TEN_GIGA_RIGHT_INDEX_LSB_COUNTER 0xc4 +#define TEN_GIGA_RIGHT_INDEX_MSB_COUNTER 0xe4 #define TEN_GIGA_RIGHT_TXN_DELAY_COUNTER 0x1c4 #define TEN_GIGA_RIGHT_FRAME_DELAY_COUNTER 0x1e4 diff --git a/slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv2.3.0.16.1 b/slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv2.3.0.16.2 similarity index 61% rename from slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv2.3.0.16.1 rename to slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv2.3.0.16.2 index 71cb01ec6..59f65ff9a 100755 Binary files a/slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv2.3.0.16.1 and b/slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv2.3.0.16.2 differ diff --git a/slsDetectorSoftware/eigerDetectorServer/gitInfo.txt b/slsDetectorSoftware/eigerDetectorServer/gitInfo.txt index 8c70f608d..5b5e1143a 100644 --- a/slsDetectorSoftware/eigerDetectorServer/gitInfo.txt +++ b/slsDetectorSoftware/eigerDetectorServer/gitInfo.txt @@ -1,9 +1,9 @@ Path: slsDetectorsPackage/slsDetectorSoftware/eigerDetectorServer URL: origin git@git.psi.ch:sls_detectors_software/sls_detector_software.git/eigerDetectorServer Repository Root: origin git@git.psi.ch:sls_detectors_software/sls_detector_software.git -Repsitory UUID: f54cba156ce79a2b50445326a8ca4d1dc7d3cc5a -Revision: 273 -Branch: 2.3-rc +Repsitory UUID: 3618c87c5cd000fff7799ddd8cd07a4162d9fdec +Revision: 276 +Branch: 2.3 Last Changed Author: Dhanya_Maliakal -Last Changed Rev: 1335 -Last Changed Date: 2017-03-20 09:27:38 +0100 \ No newline at end of file +Last Changed Rev: 1340 +Last Changed Date: 2017-03-23 13:46:02 +0100 diff --git a/slsDetectorSoftware/eigerDetectorServer/gitInfoEiger.h b/slsDetectorSoftware/eigerDetectorServer/gitInfoEiger.h index daff8cd94..dbef85812 100644 --- a/slsDetectorSoftware/eigerDetectorServer/gitInfoEiger.h +++ b/slsDetectorSoftware/eigerDetectorServer/gitInfoEiger.h @@ -1,11 +1,11 @@ //#define SVNPATH "" #define SVNURL "git@git.psi.ch:sls_detectors_software/sls_detector_software.git/eigerDetectorServer" //#define SVNREPPATH "" -#define SVNREPUUID "f54cba156ce79a2b50445326a8ca4d1dc7d3cc5a" -//#define SVNREV 0x1335 +#define SVNREPUUID "3618c87c5cd000fff7799ddd8cd07a4162d9fdec" +//#define SVNREV 0x1340 //#define SVNKIND "" //#define SVNSCHED "" #define SVNAUTH "Dhanya_Maliakal" -#define SVNREV 0x1335 -#define SVNDATE 0x20170320 +#define SVNREV 0x1340 +#define SVNDATE 0x20170323 // diff --git a/slsDetectorSoftware/gitInfo.txt b/slsDetectorSoftware/gitInfo.txt index 25b5a5702..5bd5174f4 100644 --- a/slsDetectorSoftware/gitInfo.txt +++ b/slsDetectorSoftware/gitInfo.txt @@ -1,18 +1,9 @@ Path: slsDetectorsPackage/slsDetectorSoftware URL: origin git@git.psi.ch:sls_detectors_software/sls_detector_software.git Repository Root: origin git@git.psi.ch:sls_detectors_software/sls_detector_software.git -<<<<<<< HEAD -Repsitory UUID: 1b28feb21b0963439560b102ef572f070d77ed77 -Revision: 1345 -Branch: hdf5 +Repsitory UUID: 3618c87c5cd000fff7799ddd8cd07a4162d9fdec +Revision: 1340 +Branch: 2.3 Last Changed Author: Dhanya_Maliakal -Last Changed Rev: 1345 -Last Changed Date: 2017-03-03 09:05:40 +0100 -======= -Repsitory UUID: f54cba156ce79a2b50445326a8ca4d1dc7d3cc5a -Revision: 1335 -Branch: 2.3-rc -Last Changed Author: Dhanya_Maliakal -Last Changed Rev: 1335 -Last Changed Date: 2017-03-20 09:27:38 +0100 ->>>>>>> 2.3 +Last Changed Rev: 1340 +Last Changed Date: 2017-03-23 13:46:02 +0100 diff --git a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp index f46958c14..a8cc2e2f7 100644 --- a/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp +++ b/slsDetectorSoftware/multiSlsDetector/multiSlsDetector.cpp @@ -5240,11 +5240,12 @@ void multiSlsDetector::readFrameFromReceiver(){ string currentFileName = ""; //getting sls values - int slsdatabytes = 0, slsmaxchannels = 0, bytesperchannel = 0, slsmaxX = 0, slsmaxY=0, nx=0, ny=0; + int slsdatabytes = 0, slsmaxchannels = 0, slsmaxX = 0, slsmaxY=0, nx=0, ny=0; + double bytesperchannel = 0; if(detectors[0]){ slsdatabytes = detectors[0]->getDataBytes(); slsmaxchannels = detectors[0]->getMaxNumberOfChannels(); - bytesperchannel = slsdatabytes/slsmaxchannels; + bytesperchannel = (double)slsdatabytes/(double)slsmaxchannels; slsmaxX = detectors[0]->getTotalNumberOfChannels(X); slsmaxY = detectors[0]->getTotalNumberOfChannels(Y); } @@ -5311,17 +5312,17 @@ void multiSlsDetector::readFrameFromReceiver(){ if(bottom[isocket]){ //if((((isocket/numSocketsPerSLSDetector)+1)%2) == 0){ for(int i=0;i