Skip to content
Snippets Groups Projects
Commit 0344db83 authored by Christian Koernig's avatar Christian Koernig
Browse files

Modified README

parent 785deb2d
No related branches found
No related tags found
No related merge requests found
AmptekHardwareInterface
=======================
Implementation of [Amptek's](https://www.amptek.com) DP5 Protocol for controlling PX5/DP5 Digital Pulse Processors. The code is tested with both, the PX5/XR-100 combination and the X-123 CdTe and SDD detectors.
Communication interface for Amptek PX5 as a new backend for a Tango Device Server.
This interface will be designed to work with both, USB and UDP connection. It is based on the original AmptekPX5 Tango Device Server.
The low level communication is implemented in C++ and supports both Ethernet via UDP and USB communication. A autogenerated high-level interface python as well as a Device Server for the [Tango Controls](https://www.tango-controls.org) SCADA system is available, allowing simple integration into many synchrotron beamlines.
Current Plan is, to strip the connection-dependent part to seperate comm handlers for USB and UDP and use common code for everything except receiving and sending of the packets.
The Tango Server will the be implemented using python and SWIG. This is based on the much more modern design of Tango device servers in python resulting in a better readability and development. No need for code generators!
The low level implementation is based on [previous work](https://github.com/ALBA-Synchrotron/AmptekPX5DS) at the ALBA synchrotron. However, the communication layer has been completely redesigned for more stability and added support for USB connections, circumventing the bottleneck of the low speed base-10 ethernet PHY of the hardware.
This code is meant to be a mostly drop-in replacement of the original Tango server, therefore the same server name and many commands & attributes are used. So far, the SCA channels and the MCS mode is not implemented, if those are needed, the original code should be used.
Prerequisites
-------------
- libusb1-dev
- SWIG 3 (v4 currently not supported)
- numpy
- pytango (optionally, only when using the tango server)
Install
-------
......@@ -14,9 +22,3 @@ Run
python setup.py install
TODOs
------
- propagde the device state properly up to tango
- verify correct error handling
- add comments, docs
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment