skip to content

Control computer and software

All detector systems are delivered with a fully configured control computer running Debian Linux and preinstalled detector control software. Different hardware and software options are available depending on your requirements.

The control software provides a range of integration and operation options. X-Spectrum provides a C++ control library that can be integrated into common beamline control systems. Open-source TANGO and EPICS drivers, for example, have been developed by users. Python bindings are available for convenient scripted detector operation. In addition, an open-source GUI written in Python is provided for manual control and for gaining practical insight into how to use the library.

Software packages by X-Spectrum

libxsp

libxsp is a C++ library for controlling X-Spectrum detectors. It provides the core functionality used by all other software products, including Tango and EPICS integrations. By providing a well-documented and feature-rich library, we enable users to develop custom C++ applications tailored to their specific acquisition and data-processing workflows.

pyxsp

pyxsp is a Python wrapper for libxsp, providing the same functionality in a Python environment. It is intended for users who prefer developing applications and workflows in Python.

xspcontrol

xspcontrol is built on top of pyxsp and provides a graphical user interface as well as functionality for writing NeXus files. The GUI offers an easy way to configure the detector and acquire data without the need to develop a custom acquisition pipeline.

xspd

xspd is a remote service that provides a REST API for controlling the detector from another computer or server.

xenv

xenv is a testing environment for X-Spectrum detectors. It includes a collection of scripts for verifying control and data connections, testing detector functionality, and writing files.

While the core C++ library is closed source, the Python code of the GUI is open source. It demonstrates the use of many library APIs and can serve as a starting point for developing custom acquisition software and data-processing workflows.

If you already have access to our GitLab, you can find the current software versions here: https://gitlab.x-spectrum.de/support/customer-issues

Virtual detector

Full Interface Testing with the Virtual Detector

You can start developing and testing your software before receiving your detector by using our virtual detector environment. It emulates detector communication and core functionality, allowing you to integrate APIs, develop acquisition workflows, and validate software components at an early stage of your project. The virtual detector can run on all operating systems supported by Docker.

Contact our support team for further information and access details.