From 0437bd0584df58b81e027d1f2424aa0c7c10c967 Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Mon, 28 Feb 2022 12:28:03 +0100 Subject: [PATCH] Wip --- RELEASE.txt | 3 +++ .../eigerDetectorServer/FebControl.c | 1 + .../slsDetectorFunctionList.c | 22 ++++++++++++++++--- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/RELEASE.txt b/RELEASE.txt index c2d2b7ac6..f39ba503d 100755 --- a/RELEASE.txt +++ b/RELEASE.txt @@ -41,6 +41,9 @@ This document describes the differences between v7.0.0 and v6.x.x - file write disabled by default - start non blocking acquisition at modular level - connect master commands to api (allow set master for eiger) +--ignore-config command line +- command line argument 'master' mainly for virtual servers (also master/top for real eiger), only one virtual server for eiger, use command lines for master/top +- stop servers also check for errors at startup( in case it was running with an older version) - hostname cmd failed when connecting to servers in update mode (ctb, moench, jungfrau, eiger) - missingpackets signed (negative => extra packets) diff --git a/slsDetectorServers/eigerDetectorServer/FebControl.c b/slsDetectorServers/eigerDetectorServer/FebControl.c index c149178d2..97b178499 100644 --- a/slsDetectorServers/eigerDetectorServer/FebControl.c +++ b/slsDetectorServers/eigerDetectorServer/FebControl.c @@ -1549,6 +1549,7 @@ int Feb_Control_SetMasterEffects(int master, int controlServer) { } } } + return OK; } int Feb_Control_SetQuad(int val) { diff --git a/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c index 08817484b..18a85ef3c 100644 --- a/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c @@ -336,13 +336,21 @@ void initControlServer() { Feb_Interface_FebInterface(); if (!Feb_Control_FebControl(normal)) { initError = FAIL; - sprintf(initErrorMessage, "Could not intitalize feb control\n"); + sprintf(initErrorMessage, "Could not intitalize eiger detector sever: feb control\n"); LOG(logERROR, (initErrorMessage)); initCheckDone = 1; sharedMemory_unlockLocalLink(); return; } - Feb_Control_SetMasterEffects(master, isControlServer); + if (Feb_Control_SetMasterEffects(master, isControlServer) == FAIL) { + initError = FAIL; + sprintf(initErrorMessage, "Could not intitalize HV for eiger detector server: feb control serial " + "communication\n"); + LOG(logERROR, (initErrorMessage)); + initCheckDone = 1; + sharedMemory_unlockLocalLink(); + return; + } sharedMemory_unlockLocalLink(); LOG(logDEBUG1, ("Control server: FEB Initialization done\n")); Beb_SetTopVariable(top); @@ -389,7 +397,15 @@ void initStopServer() { sharedMemory_unlockLocalLink(); return; } - Feb_Control_SetMasterEffects(master, isControlServer); + if (Feb_Control_SetMasterEffects(master, isControlServer) == FAIL) { + initError = FAIL; + sprintf(initErrorMessage, "Could not intitalize HV for eiger detector server: feb control serial " + "communication\n"); + LOG(logERROR, (initErrorMessage)); + initCheckDone = 1; + sharedMemory_unlockLocalLink(); + return; + } sharedMemory_unlockLocalLink(); LOG(logDEBUG1, ("Stop server: FEB Initialization done\n")); Beb_SetTopVariable(top);