diff --git a/manual/slsDetectorClientDocs/html/acquisition.html b/manual/slsDetectorClientDocs/html/acquisition.html
new file mode 100644
index 000000000..fff67317d
--- /dev/null
+++ b/manual/slsDetectorClientDocs/html/acquisition.html
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
Commands to control the acquisition
+
+- acquire blocking acquisition (like calling sls_detector_acquire). Starts receiver and detector, writes and processes the data, stops detector. Only get!
+
+
+- data gets all data from the detector (if any) processes them and writes them to file according to the preferences already setup (MYTHEN only). Only get!
+
+
+- frame gets a single frame from the detector (if any) processes it and writes it to file according to the preferences already setup (MYTHEN only). Only get!
+
+
+- status
returns
the detector status (string)- can be: running
, error
, transmitting
, finished
, waiting
or idle
; put
can be start
or stop
+
+
+- busy returns
1
if the acquisition is active, 0
otherwise. Works when the acquisition is started in non-blocking mode. Only get!
+
+
+- readctr Reads the counters from the detector memory (analog detector returning values translated into number of photons - only GOTTHARD). Cannot put.
+
+
+- resetctr i Resets counter in detector, restarts acquisition if i=1(analog detector returning values translated into number of photons - only GOTTHARD). Cannot put.
+
+
+- resmat i sets/resets counter bit in detector.gets the counter bit in detector ????
+
+
+
+
+
+
+
Commands to define scripts to be executed during the acquisition flow
+
+- positions [n [p0..pn-1]] sets/gets number of angular position and positions to be acquired.
+
+
+- startscript [s] sets/gets the script to be executed at the beginning of the acquisition.
none
unsets.
+
+
+- startscriptpar [s] sets/gets a string to be passed as a parameter to the startscript
+
+
+- stopscript [s] sets/gets the script to be executed at the end of the acquisition.
none
unsets.
+
+
+- stopscriptpar [s] sets/gets a string to be passed as a parameter to the stopscript
+
+
+- scriptbefore [s] sets/gets the script to be executed before starting the detector every time in the acquisition.
none
unsets.
+
+
+- scriptbeforepar [s] sets/gets a string to be passed as a parameter to the scriptbefore
+
+
+- scriptafter [s] sets/gets the script to be executed after the detector has finished every time in the acquisition.
none
unsets.
+
+
+- scriptafterpar [s] sets/gets a string to be passed as a parameter to the scriptafter
+
+
+- headerafter [s] sets/gets the script to be executed for logging the detector parameters.
none
unsets.
+
+
+- headerbefore [s] sets/gets the script to be executed for logging the detector parameters.
none
unsets.
+
+
+- headerbeforepar [s] sets/gets a string to be passed as a parameter to the headerbefore script
+
+
+- headerafterpar [s] sets/gets a string to be passed as a parameter to the headerafter script
+
+
+- enacallog [i] enables/disables logging of the parameters necessary for the energy calibration. 1 sets, 0 unsets.
+
+
+- angcallog [i] enables/disables logging of the parameters necessary for the angular calibration. 1 sets, 0 unsets.
+
+
+- scan0script [s] sets/gets the script to be executed for the scan 0 level.
none
unsets.
+
+
+- scan0par [s] sets/gets a string to be passed as a parameter to the scan0script
+
+
+- scan0prec [i] sets/gets number of digits to be used for the scan0 variable in the file name.
+
+
+- scan0steps [i [s0..sn-1]] sets/gets number of steps (int) of the scan0 level and their values (float).
+
+
+- scan0range [smin smax sstep] sets scan0 min, max and step, returns the number of steps and their values as scan0steps.
+
+
+- scan1script [s] sets/gets the script to be executed for the scan1 level.
none
unsets.
+
+
+- scan1par [s] sets/gets a string to be passed as a parameter to the scan1script
+
+
+- scan1prec [i] sets/gets number of digits to be used for the scan1 variable in the file name.
+
+
+- scan1steps [i [s0..sn-1]] sets/gets number of steps (int) of the scan1 level and their values (float).
+
+
+- scan1range [smin smax sstep] sets scan1 min, max and step, returns the number of steps and their values as scan1steps.
+
+
+
+
+
+
+
This page is for advanced users. Make sure you have first read the introduction.
+
+
+
+
+
+
Commands to configure the detector. these commands are often left to the configuration file.
+
+- datastream enables/disables the 0MQ data stream (0MQ threads created) from receiver to client.
+
+
+- free Free shared memory on the control PC
+
+
+- add Adds a detector at the end of the multi-detector structure.
put
argument is the hostname or IP adress. Returns the chained list of detector hostnames.
+
+
+- remove i Removes controller
i
from the multi-detector structure. Can be used for partial readout of the detector.
+
+
+- type Sets/gets detector type (string).
+
+
+- hostname
put
adds the hostname (ot IP adress) at the end of the multi-detector structure. If used for a single controlled (i:) replaces the current hostname. Returns the list of the hostnames of the multi-detector structure.
+
+
+- id[:i] Returns the id of the detector structure. i is the detector position in a multi detector system. If used a
put
, configures the id of the detector structure. i is the detector position in a multi detector system and l is the id of the detector to be added.
+
+
+- master i
put
sets the position of the master of the acquisition (-1 if none). Returns the position of the master of the detector structure (-1 if none).
+
+
+- sync Sets/gets the synchronization mode of the detectors in the multi-detector structure. Can be:
none
, gating
, trigger
, complementary
. Mainly used by MYTHEN/GOTTHARD.
+
+
+- online [i] sets the detector in online (1) or offline (0) mode
+
+
+- checkonline returns the hostnames of all detectors without connecting to them
+
+
+- activate Activates/Deactivates the detector. Deactivated detector does not send data. Used for EIGER only.
+
+
+- lock [i] Locks/Unlocks the detector to communicate with this client. 1 locks, 0 unlocks.
+
+
+- nmod [i] sets/gets the number of modules of the detector. Used for MYTHEN only.
+
+
+- maxmod Gets the maximum number of modules of the detector. Used for MYTHEN only. Cannot put!
+
+
+- dr [i] sets/gets the dynamic range of detector. Mythen [4,8,16,24]. Eiger [4,8,16,32]. Others cannot put!
+
+
+- roi [i] [xmin] [xmax] [ymin] [ymax] sets region of interest of the detector, where i is number of rois;i=0 to clear rois. Used for GOTTHARD only.
+
+
+- detsizechan [xmax] [ymax] sets the maximum number of channels in each dimension for complete detector set; -1 is no limit. Use for multi-detector system as first command in config file.
+
+
+
+- flippeddatax [i] enables/disables data being flipped across x axis. 1 enables, 0 disables. Used for EIGER only. 1 for bottom half-module, 0 for top-half module.
+
+
+- flags [flag] sets/gets the readout flags to mode. Options: none, storeinram, tot, continous, parallel, nonparallel, safe, digital, analog_digital, unknown. Used for MYTHEN and EIGER only.
+
+
+- extsig:[i] [flag] sets/gets the mode of the external signal i. Options:
off
, gate_in_active_high
, gate_in_active_low
, trigger_in_rising_edge
, trigger_in_falling_edge
, ro_trigger_in_rising_edge
, ro_trigger_in_falling_edge
, gate_out_active_high
, gate_out_active_low
, trigger_out_rising_edge
, trigger_out_falling_edge
, ro_trigger_out_rising_edge
, ro_trigger_out_falling_edge
.
+ Used in MYTHEN, GOTTHARD, PROPIX only.
+
+
+- programfpga [file] programs the FPGA with file f (with .pof extension). Used for JUNGFRAU, MOENCH only. Only put!
+
+
+- resetfpga [f] resets FPGA, where f can be any value. Used for JUNGFRAU only. Only put!
+
+
+- powerchip [i] Powers on/off the chip. 1 powers on, 0 powers off. Can also get the power status. Used for JUNGFRAU only.
+
+
+- led [i] sets/gets the led status. 1 on, 0 off. Used for MOENCH only ??
+
+
+- moduleversion:[i] Gets the firmware version of module i. Used for MYTHEN only. Only get!
+
+
+- detectornumber Gets the serial number or MAC of detector. Only get!
+
+
+- modulenumber:[i] Gets the serial number of module i. Used for MYTHEN only. Only get!
+
+
+- detectorversion Gets the firmware version of detector. Only get!
+
+
+- softwareversion Gets the software version of detector server. Only get!
+
+
+- thisversion Gets the software version of this client software. Only get!
+
+
+- receiverversion Gets the software version of receiver. Only get!
+
+
+- timing [mode] sets/gets synchronization mode of the detector. Mode: auto, trigger, ro_trigger, gating, triggered_gating
+
+
+- exptime [i] sets/gets exposure time in s
+
+
+- subexptime [i] sets/gets sub exposure time in s. Used in EIGER only in 32 bit mode.
+
+
+- period [i] sets/gets frame period in s.
+
+
+- delay [i] sets/gets delay in s. Used in MYTHEN, GOTTHARD only
+
+
+- gates [i] sets/gets number of gates. Used in MYTHEN, GOTTHARD, EIGER only
+
+
+- gates [i] sets/gets number of frames. If
timing
is not auto
, then it is the number of frames per cycle/trigger.
+
+
+- cycles [i] sets/gets number of triggers. Timing mode should be set appropriately.
+
+
+- probes [i] sets/gets number of probes to accumulate. When setting, max 3! cycles should be set to 1, frames to the number of pump-probe events. Used in MYTHEN only
+
+
+- measurements [i] sets/gets number of measurements.
+
+
+- samples [i] sets/gets number of samples expected from the jctb. Used in CHIP TEST BOARD only.
+
+
+- exptimel gets exposure time left. Used in MYTHEN, GOTTHARD only. Only get!
+
+
+- periodl gets frame period left. Used in MYTHEN, GOTTHARD only. Only get!
+
+
+- delayl gets delay left. Used in MYTHEN, GOTTHARD only. Only get!
+
+
+- gatesl gets number of gates left. Used in MYTHEN, GOTTHARD only. Only get!
+
+
+- framesl gets number of frames left. Used in MYTHEN, GOTTHARD only. Only get!
+
+
+- cyclesl gets number of cylces left. Used in MYTHEN, GOTTHARD only. Only get!
+
+
+- probesl gets number of probes left. Used in MYTHEN, GOTTHARD only. Only get!
+
+
+
+- timestamp ??? Only get!
+
+
+
+- clkdivider [i] sets/gets the readout clock divider. EIGER, JUNGFRAU [0(fast speed), 1(half speed), 2(quarter speed)]. MYTHEN[???]
+
+
+- clkdivider [i] sets/gets length of set/reset signals (in clock cycles). Used in MYTHEN only
+
+
+- clkdivider [i] sets/gets waitstates of the bus interface (in clock cycles). Used in MYTHEN only
+
+
+- clkdivider [i] sets/gets clock divider in tot mode. Used in MYTHEN only
+
+
+- clkdivider [i] sets/gets duty cycle of the tot clock. Used in MYTHEN only
+
+
+
+
+
+- adcphase [i] ??? Used in MYTHEN, JUNGFRAU only.
+
+
+
+
+
+- config [fname] sets/saves detector/receiver to configuration contained in fname. Same as executing sls_detector_put for every line. Normally a one time operation.
+
+
+- rx_printconfig prints the receiver configuration. Only get!
+
+
+- parameters [fname] sets/saves detector parameters contained in fname. Normally once per different measurement.
+
+
+- setup [fname] sets/saves detector complete setup contained in fname (extensions automatically generated), including trimfiles, ff coefficients etc.
+
+
+- tengiga [i] enables/disables 10GbE in system (detector & receiver). 1 enabled 10GbE, 0 enables 1GbE. Used in EIGER only.
+
+
+- pulse [n] [x] [y] pulses pixel at coordinates (x,y) n number of times. Used in EIGER only. Only put!
+
+
+- pulsenmove [n] [x] [y] pulses pixel n number of times and moves relatively by x value (x axis) and y value(y axis). Used in EIGER only. Only put!
+
+
+- pulsechip [n]pulses chip n number of times, while n=-1 will reset it to normal mode. Used in EIGER only. Only put!
+
+
+
+
+
+
+
Commands to setup the data processing (mainly MYTHEN related)
+
+- flatfield [fn]
put
sets flatfield file to fn
(relative to ffdir
). returns the flatfield file name relative to ffdir
(string). If
+
+
+- ffdir [d] Sets/gets the directory in which the flat field file is located.
+
+
+- ratecorr [ns] Returns the dead time used for rate correections in ns (int).
put
sets the deadtime correction constant in ns, -1 will set it to default tau of settings (0 unset).
+
+
+- badchannels [fn]
put
sets the badchannels file to fn
. returns the bad channels file name. If
+
+
+- angconv [fn]
put
sets the angular conversion file to fn
. returns the angular conversion file name. If
+
+
+- globaloff [f] Sets/gets the beamline angular global offset (float).
+
+
+- fineoff [f] Sets/gets the angular fine offset of the measurement (float).
+
+
+- binsize [f] Sets/gets the bin size used for the angular conversion (float).
+
+
+- angdir [i] Sets/gets the angular direction. 1 means increasing channels number as increasing angle, -1 increasing channel number decreasing angle.
+
+
+- moveflag [i] Sets/gets the flag for physically moving the detector during the acquisition of several positions. 1 sets (moves), 0 unsets.
+
+
+- samplex [f] Sets/gets the sample displacement in th direction parallel to the beam in um. Unused!
+
+
+- sampley [f] Sets/gets the sample displacement in th direction orthogonal to the beam in um. Unused!
+
+
+- threaded [i] Sets/gets the data processing threaded flag. 1 is threaded, 0 unthreaded.
+
+
+- darkimage fn Loads the dark image to the detector from file fn (pedestal image). Cannot get.
+
+
+- gainimage fn Loads the gain image to the detector from file fn (gain map for translation into number of photons of an analog detector). Cannot get.
+
+
+
+
+
Introduction
This program is intended to control the SLS detectors via command line interface. This is the only way to access all possible functionality of the detectors, however it is often recommendable to avoid changing the most advanced settings, rather leaving the task to configuration files, as when using the GUI or the API provided.
+
The command line interface consists in four main functions:
+
+- sls_detector_acquire to acquire data from the detector
+- sls_detector_put to set detector parameters
+- sls_detector_get to retrieve detector parameters
+- sls_detector_help to get help concerning the text commands Additionally the program slsReceiver should be started on the machine expected to receive the data from the detector.
+
+
If you need control a single detector, the use of the command line interface does not need any additional arguments.
+
For commands addressing a single controller of your detector, the command cmd should be called with the index i of the controller:
+
sls_detector_clnt i:cmd
+
where sls_detector_clnt is the text client (put, get, acquire, help).
+
In case more than one detector is configured on the control PC, the command cmd should be called with their respective index j:
+
sls_detector_clnt j-cmd
+
where sls_detector_clnt is the text client (put, get, acquire, help).
+
To address a specific controller i of detector j use:
+
sls_detector_clnt j-i:cmd
+
For additional questions concerning the indexing of the detector, please refer to the SLS Detectors FAQ documentation.
+
The commands are sudivided into different pages depending on their functionalities:
+
+- Acquition commands Acquisition: commands to start/stop the acquisition and retrieve data
+- Configuration commands Configuration: commands to configure the detector
+- Data postprocessing: commands to process the data - mainly for MYTHEN except for rate corrections.
+- Settings: commands to define detector settings/threshold.
+- Output: commands to define output file destination and format
+- Actions: commands to define scripts to be executed during the acquisition flow
+- Network: commands to setup the network between client, detector and receiver
+- Receiver: commands to configure the receiver
+- Developer Developer: commands to be used only for software debugging. Avoid using them!
+
+
+
+