From e85973ec8b571f5c5330b8082231aabb7b112c9a Mon Sep 17 00:00:00 2001 From: Gemma Tinti Date: Tue, 8 Aug 2017 19:48:32 +0200 Subject: [PATCH 1/4] manuals --- manual/manual-client/Eiger_short.tex | 139 ++++++++++++++++++ .../manual-client/slsDetectorClientHowTo.tex | 23 +-- 2 files changed, 152 insertions(+), 10 deletions(-) diff --git a/manual/manual-client/Eiger_short.tex b/manual/manual-client/Eiger_short.tex index dbef94843..3d404a941 100644 --- a/manual/manual-client/Eiger_short.tex +++ b/manual/manual-client/Eiger_short.tex @@ -6,6 +6,9 @@ \usepackage{verbatim} \usepackage{xspace} \newcommand{\E}{EIGER\xspace} +\newcommand{\p}{sls\_detector\_put} +\newcommand{\g}{sls\_detector\_get} + \begin{document} \title{\E - short manual} @@ -137,6 +140,7 @@ returns the client version. The answer can be {\tt{thisversion 111220160718}}. /sls_detector_get detectorversion \end{verbatim} returns the firmware version . The answer can be {\tt{detectorversion 11}}. +Killing and starting the server on the boards allows you to check the firmware version you have and also if your board is a top/bottom/master/slave. \section{Setting up the threshold} \begin{verbatim} @@ -333,6 +337,141 @@ sls_detector_put 0-ratecorr -1 \end{verbatim} Every time either the rate corrections are activated, $\tau$ is changed or the subframe length is changed, then a new correction table is evaluated. Note that computing the correction table is time consuming. + +\section{Client checks - command line} + +Guide on returned strings: +\begin{enumerate} +\item \begin{verbatim} +sls_detector_get free +\end{verbatim} +Returns a list of shared mamories cleaned (variable number depending on detector): +\begin{verbatim} +Shared memory 273612805 deleted +Shared memory 276922374 deleted +Shared memory 270270468 deleted +free freed +\end{verbatim} +Note that occasionally if there is a shared memory of a different size (from an older software version), it will return also a line like this: +\begin{verbatim} +*** shmget error (server) ***-1 +\end{verbatim} +This needs to be cleaned with {\tt{ipcs -m}} and then {\tt{ipcrm -M xxx}}, where xxx are the keys with nattch 0. +\item \begin{verbatim}sls_detector_get settings +settings standard +\end{verbatim} +{\tt{standard}} is only if correct. {\tt{undefined}} or anything else is wrong. + +\item \begin{verbatim} +sls_detector_get threshold +threshold xxxx +\end{verbatim} +Returns the threshold in eV (xxxx). If it fails to set it, returns the last threshold it was set (which the detector still has). + +\item \begin{verbatim} +sls_detector_get fname +fname string +\end{verbatim} + +\item \begin{verbatim} +sls_detector_get exptime +exptime number +\end{verbatim} +where {\tt{number}} is a string to be interpreted as a float in (s). + +\item \begin{verbatim} +sls_detector_get period +period number +\end{verbatim} +where {\tt{nuymber}} is a string to be interpreted as a float in (s). + +\item \begin{verbatim} +sls_detector_get frames +frames number +\end{verbatim} +where {\tt{number}} is a string to be interpreted as an integer. + +\item \begin{verbatim} +sls_detector_get cycles +cycles number +\end{verbatim} +where {\tt{number}} is a string to be interpreted as an integer. + +\item \begin{verbatim} +sls_detector_get status +status string +\end{verbatim} +where {\tt{string}} can be {\tt{idle}} or {\tt{running}}. + +\item \begin{verbatim} +sls_detector_get index +status number +\end{verbatim} +where {\tt{number}} is a string to be interpreted as an integer. + +\item \begin{verbatim} +sls_detector_get dr +dr number +\end{verbatim} +where {\tt{number}} is a string that should be interpreted as an integer (4/8/16/32). + +\item \begin{verbatim} +sls_detector_get clkdivider +clkdivider number +\end{verbatim} +where {\tt{number}} is a string that should be interpreted as an integer (0/1/2/3). + +\item \begin{verbatim} +sls_detector_get flags +flags string1 string2 +\end{verbatim} +where {\tt{string1}} is a string should be always {\tt{continous}} and {\tt{string2}} can be either {\tt{nonparallel}} or {\tt{parallel}}. + +\item \begin{verbatim} +sls_detector_get timing +timing string +\end{verbatim} +where {\tt{string}} is a string which can be {\tt{auto/trigger/burst\_trigger/gating}}. + +\item \begin{verbatim} +sls_detector_get enablefwrite +enablefwrite number +\end{verbatim} +where {\tt{number}} is a string which should be interpreted as an integer "0" or "1". + +\item \begin{verbatim} +sls_detector_get framescaught +framescaught number +\end{verbatim} +where {\tt{number}} is a string which should be interpreted as an integer of the complete frames got by the receiver. + +\item \begin{verbatim} +sls_detector_get frameindex +frameindex number +\end{verbatim} +where {\tt{number}} is a string which should be interpreted as an integer of the last frame number read from firmware. It comes from the receiver, though and reset after every acquisition series. + +\item \begin{verbatim} +sls_detector_get subexptime +subexptime number +\end{verbatim} +where {\tt{number}} is a string that should be interpreted as a float in s. The default value is 0.002621440. + +\item \begin{verbatim} +sls_detector_get ratecorr +ratecorr number +\end{verbatim} +where {\tt{number}} is a string that should be interpreted as a float in s. 0.000000 means correction off. Values above zero are the value of $\tau$ in ns. + +\item \begin{verbatim} +sls_detector_get m:vhighvoltage +m:vhighvoltage number +\end{verbatim} +where {\tt{number}} is a string that should be interpreted as an int and for proper Eiger setting is approximately 150~V. + +\end{enumerate} + + \section{1Gb/s, 10Gb/s links} \subsection{Checking the 1Gb/s, 10Gb/s physical links} LEDs on the backpanel board at the back of each half module signal: diff --git a/manual/manual-client/slsDetectorClientHowTo.tex b/manual/manual-client/slsDetectorClientHowTo.tex index 30eb764a3..414d1877b 100644 --- a/manual/manual-client/slsDetectorClientHowTo.tex +++ b/manual/manual-client/slsDetectorClientHowTo.tex @@ -395,7 +395,7 @@ For some commands, an additional argument \verb=arg= is needed. \subsection{Standard commands} - +All the commends return two strings, where string1 is the command, string2 is teh actual returned string. \begin{description} \item[config fname] @@ -403,9 +403,11 @@ Dumps the current configuration of the detector to the file fname. \item[parameters fname] Dumps the current acquisition parameters of the detector to the file fname. \item[settings] -Returns the current settings of the detector. +Returns the current settings of the detector. Returns a string + \item[threshold] -For photon counting detectors, returns the detector threshold in eV, -1 if undefined. +For photon counting detectors, returns the detector threshold in eV, -1 if undefined. Returns ``threshold value\_in\_eV''. If it fails, the returned threshold is the old set value. + \item[timing] Returns the acquisition timing mode of the detector. Refer to the detailed documentation to understand how the different timing modes work. @@ -415,10 +417,10 @@ Returns the path where the output files are saved to. Returns the prefix of the file name for the data output. \item[enablefwrite] Returns if data are written to file (1) or not (0). \item[exptime] -Returns the exposure time of a single acquisition in seconds. +Returns the exposure time of a single acquisition in seconds. Example: "exptime 1.000000000'' Refer to detailed documentation to understand how the different timing modes work. \item[period] -Returns the frames period (in s). +Returns the frames period (in s). Example: ``period 1.000000000'' Refer to detailed documentation to understand how the different timing modes work. \item[delay] Returns the delay after trigger in triggered mode (in s). @@ -427,18 +429,19 @@ Refer to detailed documentation to understand how the different timing modes wor Returns the number of gates per frame in gated (stroboscopic) mode. Refer to detailed documentation to understand how the different timing modes work. \item[frames] -Returns the number of frames acquired sequentially per cycle (e.g. after each trigger), with the exposure time defined by exptime and the period defined by period (unless in gated mode). +Returns the number of frames acquired sequentially per cycle (e.g. after each trigger), with the exposure time defined by exptime and the period defined by period (unless in gated mode). Returned as a string to be interpreted as an integer ``frames integer'' Note that the total number of images is frames times cycles. Refer to detailed documentation to understand how the different timing modes work. \item[cycles n] -Returns the number of cycles (e.g. number of triggers). +Returns the number of cycles (e.g. number of triggers). Returned as atring to be interpreted as an integer ``cycles integer'' Note that the total number of images is frames times cycles. Refer to detailed documentation to understand how the different timing modes work. \item[probes] Returns the number of probes to accumulate for stroboscopic measurements. Refer to detailed documentation to understand how the different timing modes work. \item[measurements] Returns the number of repetitions of the acquisitions (non real time!). Refer to detailed documentation to understand how the different timing modes work. -\item[dr] Returns the dynamic range n (in bits) of the data for a photon counting detector. +\item[dr] Returns the dynamic range n (in bits) of the data for a photon counting detector. Returns a string that should be interpreted as an integer. + \item[flags s] Returns the flags set for your detector. \item[help cmd] Returns the help for command cmd. \item[lock] Returns if the detector is locked to a single PC. @@ -580,7 +583,7 @@ Advanced commands to configure the detector system. Should be left to the config \item[free] Avoid using it. Frees the shared memory. \end{description} Settable communication parameters: -\start{description} +\begin{description} \item[txndelay\_left] \E advanced: Set transmission delay of sending the left port frame \item[txndelay\_right] \E advanced: Set transmission delay of sending the right port frame \item[txndelay\_frame] \E advanced: Set transmission delay of sending the entire frame In addition to left and right. This value has to be greater than the maximum of the transmission delays of each port. @@ -604,7 +607,7 @@ Settable communication parameters: \item[r\_online b] Returns whether the receiver in online (1) or offline (0) mode. \item[r\_checkonline] Returns whether the receiver in online (1) or offline (0) mode. -\item[framescaught] Returns the number of frames received. +\item[framescaught] Returns the number of frames received. Returns: "framescaught n'' \item[resetframescaught n] Sets the number of frames received to 1 \item[frameindex] Returns the index of the last frame received. \item[r\_lock] Returns whether the receiver is locked (1) or unlocked (0). From 851914f0aeb10464c5cf1cc9d2fcd516a014b9c4 Mon Sep 17 00:00:00 2001 From: Gemma Tinti Date: Tue, 8 Aug 2017 20:04:28 +0200 Subject: [PATCH 2/4] manuals --- manual/manual-client/Eiger_short.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manual/manual-client/Eiger_short.tex b/manual/manual-client/Eiger_short.tex index 3d404a941..22995fb22 100644 --- a/manual/manual-client/Eiger_short.tex +++ b/manual/manual-client/Eiger_short.tex @@ -611,7 +611,7 @@ The HV can also be set and read through the software: ./sls_detector_put vhighvoltage 150 ./sls_detector_get m:vhighvoltage \end{verbatim} -Note that the get {\tt{vhighvoltage}} would return the measured HV from the master module only, so one has to really get it for the master \tt{m} module. +Note that the get {\tt{vhighvoltage}} would return the measured HV from the master module only, so one has to really get it for the master {\tt{m}} module. \appendix From 24d0d776b79b9174165af1b59ea1e489701ff299 Mon Sep 17 00:00:00 2001 From: Dhanya Maliakal Date: Wed, 16 Aug 2017 16:04:47 +0200 Subject: [PATCH 3/4] new gotthard server binary --- serverBin/gotthardDetectorServer | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/serverBin/gotthardDetectorServer b/serverBin/gotthardDetectorServer index 81734036a..98922ce43 120000 --- a/serverBin/gotthardDetectorServer +++ b/serverBin/gotthardDetectorServer @@ -1 +1 @@ -../slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv3.0.0.1 \ No newline at end of file +../slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv3.0.0.5 \ No newline at end of file From 83bb7c99ea3d4aa3796df62bea40dcdac06ca870 Mon Sep 17 00:00:00 2001 From: Dhanya Maliakal Date: Wed, 16 Aug 2017 16:05:53 +0200 Subject: [PATCH 4/4] removed gotthard server binary..was for developer branch --- serverBin/gotthardDetectorServer | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/serverBin/gotthardDetectorServer b/serverBin/gotthardDetectorServer index 98922ce43..81734036a 120000 --- a/serverBin/gotthardDetectorServer +++ b/serverBin/gotthardDetectorServer @@ -1 +1 @@ -../slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv3.0.0.5 \ No newline at end of file +../slsDetectorSoftware/gotthardDetectorServer/gotthardDetectorServerv3.0.0.1 \ No newline at end of file