From 0344db839c9462fe8f9c7ca41ccbc1646b560fc6 Mon Sep 17 00:00:00 2001
From: Christian Koernig <ckoernig@mail.desy.de>
Date: Fri, 26 Mar 2021 10:26:40 +0100
Subject: [PATCH] Modified README

---
 README.md | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

diff --git a/README.md b/README.md
index a905add..5c43552 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,20 @@
 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
 -------
 Run
@@ -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
-
-- 
GitLab