Commits (3)
......@@ -20,7 +20,7 @@ requirements:
- python {{ python }}
- sip 4.19.8 # For compatibility with pyqt 5.9.2
- lima-core >1.9.2
- xspectrum-sdk
- xspectrum-sdk >=1.4.1
- git
- cmake
......@@ -8,11 +8,19 @@ Lambda / Xspectrum
This plugin control a Xspectrum Lambda camera under linux, using lambda libraries developed at DESY.
LAMBDA is a next-generation pixel detector for X-rays, based on Medipix3 technology. It is a photon-counting detector, making it effectively noise free, and it offers a high frame rate of up to 23,000 frames per second (with no readout deadtime) and a small pixel size of 55 µm. It is available in a wide variety of sizes and configurations for different applications, and can be equipped with different sensor materials to allow high detection efficiency even at high X-ray energies. The system also has “colour imaging” capabilities, where X-rays hitting the detector can be divided into two energy ranges (**\***). Developed by DESY for use at the PETRA-III synchrotron, the system is designed for high reliability, and has external triggering and gating capability for synchronisation with the rest of the experiment. It can be easily integrated into common beamline control systems.
Installation & Module configuration
Follow the generic instructions in :ref:`build_installation`. If using CMake directly, add the following flag:
.. code-block:: sh
For the Tango server installation, refers to :ref:`tango_installation`.
Initialisation and Capabilities
......@@ -22,27 +30,82 @@ Initialisation and Capabilities
Camera initialisation
The camera will be initialized by created the :cpp:class:`Lambda::Camera` object. The contructor
will take care of your detector configuration according to the SDK installation setup done before.
The Camera::Camera() constructor required to pass the full path to the configuration directory installed
on the control computer. The standard path should be /opt/xsp/config .
Std capabilites
This plugin has been implement in respect of the mandatory capabilites but with some limitations which
are due to the camera and SDK features. We provide here further information for a better understanding
of the detector specific capabilities.
Optional capabilites
* HwDetInfo
getCurrImageType/getDefImageType(): Bpp16 only.
setCurrImageType(): this method do not change the image type which is fixed to Bpp16.
* HwSync
Specific control parameters
get/setTrigMode(): the supported mode are IntTrig, ExtTrigSingle, ExtTrigMult and ExtGate
Optional capabilites
None of the hardware capability like HwRoi, HwBin have been implemented.
No Specific hardware configuration are needed
No Specific hardware configuration are needed. The detector is sold with a control computer equiped with hardware and software.
How to use
This is a python code example for a simple test:
.. code-block:: python
from Lima import Lambda
from Lima import Core
cam = Lambda.Camera('/opt/xsp/config')
hwint = Lambda.Interface(cam)
ct = Core.CtControl(hwint)
acq = ct.acquisition()
# set the detector energy threshold
# setting new file parameters and autosaving mode
# set saving in HDF5 bitshuffle compression
# now ask for 2 sec. exposure and 10 frames
# wait for last image (#9) ready
lastimg = ct.getStatus().ImageCounters.LastImageReady
while lastimg !=9:
lastimg = ct.getStatus().ImageCounters.LastImageReady
# read the first image
im0 = ct.ReadImage(0)
Lambda Tango device
This is the reference documentation of the Lambda Tango device.
you can also find some useful information about the camera models/prerequisite/installation/configuration/compilation in the :ref:`Lambda camera plugin <camera-lambda>` section.
This camera device has no property.
=============== =============== =============== ==============================================================
Property name Mandatory Default value Description
=============== =============== =============== ==============================================================
config_path Yes None path the manufacturer configuration file of the detector
should be something like: /opt/xsp/config
=============== =============== =============== ==============================================================
======================= ======= ======================= ============================================================
Attribute name RW Type Description
======================= ======= ======================= ============================================================
distorsion_correction ro DevBoolean Return **True** if the distorsion correction is active
temperature ro DevDouble The detector temperature in C
humidity ro DevDouble The detector humitity in %
energy_threshold rw DevDouble The energy threshold in KeV
high_voltage rw DevDouble The high voltage, relevant only for CdTe model
======================= ======= ======================= ============================================================
Distorsion_correction, temperature and humidity are only relevant with detector equiped with the latest harwdare
and firmware, since mid of 2020.
======================= =============== ======================= ======================================
Command name Arg. in Arg. out Description
======================= =============== ======================= ======================================
Init DevVoid DevVoid Do not use
State DevVoid DevLong Return the device state
Status DevVoid DevString Return the device state as a string
getAttrStringValueList DevString: DevVarStringArray: Return the authorized string value list for
Attribute name String value list a given attribute name
======================= =============== ======================= ======================================