diff --git a/slsDetectorSoftware/commonFiles/sls_detector_defs.h b/slsDetectorSoftware/commonFiles/sls_detector_defs.h index 3198f89e2..ab1e24ad6 100755 --- a/slsDetectorSoftware/commonFiles/sls_detector_defs.h +++ b/slsDetectorSoftware/commonFiles/sls_detector_defs.h @@ -22,7 +22,7 @@ #define HEADERLENGTH 12 #define DEFAULT_SUBFRAME_EXPOSURE_VAL 2621440 /** default value for sub frame value 2.6ms*/ -#define MAX_SUBFRAME_EXPOSURE_VAL 0x1FFFFFFF /** 29 bit register for max subframe exposure value */ +#define MAX_SUBFRAME_EXPOSURE_VAL_IN_10NS 0x1FFFFFFF /** 29 bit register for max subframe exposure value */ /** maximum rois */ #define MAX_ROIS 100 diff --git a/slsDetectorSoftware/eigerDetectorServer/FebControl.c b/slsDetectorSoftware/eigerDetectorServer/FebControl.c index 930689f78..ab24d0d6d 100644 --- a/slsDetectorSoftware/eigerDetectorServer/FebControl.c +++ b/slsDetectorSoftware/eigerDetectorServer/FebControl.c @@ -174,7 +174,7 @@ void Feb_Control_FebControl(){ -int Feb_Control_Init(int master, int top){ +int Feb_Control_Init(int master, int top, int module_num){ unsigned int i; Feb_Control_module_number = 0; Feb_Control_current_index = 0; @@ -182,19 +182,7 @@ int Feb_Control_Init(int master, int top){ //global send Feb_Control_AddModule1(0,1,0xff,0,1); Feb_Control_PrintModuleList(); - - //get module nummber - int res=0; - char hostname[100]; - if (gethostname(hostname, sizeof hostname) == 0) - puts(hostname); - else - perror("gethostname"); - char *pch; - pch = strtok(hostname,"0"); - pch = strtok(NULL,"0"); - sscanf(pch,"%d",&res); - Feb_Control_module_number = (res & 0xFF); + Feb_Control_module_number = (module_num & 0xFF); int serial = !top; diff --git a/slsDetectorSoftware/eigerDetectorServer/FebControl.h b/slsDetectorSoftware/eigerDetectorServer/FebControl.h index 9caf87d22..eca0dd48f 100644 --- a/slsDetectorSoftware/eigerDetectorServer/FebControl.h +++ b/slsDetectorSoftware/eigerDetectorServer/FebControl.h @@ -111,7 +111,7 @@ int Feb_Control_GetModuleNumber(); void Feb_Control_FebControl(); - int Feb_Control_Init(int master, int top); + int Feb_Control_Init(int master, int top, int module_num); int Feb_Control_ReadSetUpFileToAddModules(char* file_name); int Feb_Control_ReadSetUpFile(unsigned int module_num, char* file_name); int Feb_Control_CheckSetup(); diff --git a/slsDetectorSoftware/eigerDetectorServer/slsDetectorFunctionList.c b/slsDetectorSoftware/eigerDetectorServer/slsDetectorFunctionList.c index d13279fbd..cb68c0844 100644 --- a/slsDetectorSoftware/eigerDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorSoftware/eigerDetectorServer/slsDetectorFunctionList.c @@ -140,7 +140,7 @@ int initDetector(){ getModuleConfiguration(); Feb_Interface_FebInterface(); Feb_Control_FebControl(); - Feb_Control_Init(master,top); + Feb_Control_Init(master,top,getDetectorNumber()); printf("FEB Initialization done\n"); Beb_Beb(); printf("BEB Initialization done\n"); @@ -181,7 +181,7 @@ int initDetectorStop(){ getModuleConfiguration(); Feb_Interface_FebInterface(); Feb_Control_FebControl(); - Feb_Control_Init(master,top); + Feb_Control_Init(master,top,getDetectorNumber()); printf("FEB Initialization done\n"); /* Beb_Beb(-1); printf("BEB constructor done\n");*/ diff --git a/slsDetectorSoftware/slsDetectorServer/slsDetectorServer_funcs.c b/slsDetectorSoftware/slsDetectorServer/slsDetectorServer_funcs.c index 305746e4f..707ee279b 100755 --- a/slsDetectorSoftware/slsDetectorServer/slsDetectorServer_funcs.c +++ b/slsDetectorSoftware/slsDetectorServer/slsDetectorServer_funcs.c @@ -47,7 +47,7 @@ void checkFirmwareCompatibility(){ cprintf(BLUE,"\n\n********************************************************\n" "**********************EIGER Server**********************\n" "********************************************************\n"); - cprintf(BLUE,"\nFirmware Version: %llx\nSoftware Version: %llx\n\n", + cprintf(BLUE,"\nFirmware Version: %lld\nSoftware Version: %lld\n\n", getDetectorId(DETECTOR_FIRMWARE_VERSION), getDetectorId(DETECTOR_SOFTWARE_VERSION)); //check for firmware version compatibility @@ -2538,7 +2538,7 @@ int set_timer(int file_des) { switch(ind) { #ifdef EIGERD case SUBFRAME_ACQUISITION_TIME: - if (tns > MAX_SUBFRAME_EXPOSURE_VAL ){ + if (tns > (MAX_SUBFRAME_EXPOSURE_VAL_IN_10NS*10) ){ ret=FAIL; strcpy(mess,"Sub Frame exposure time should not exceed 5.368 seconds\n"); break;