diff --git a/Config_Controller.md b/Config_Controller.md
index a852f7b..1416641 100644
--- a/Config_Controller.md
+++ b/Config_Controller.md
@@ -1,105 +1,126 @@
# Controller
+
Definition of a set of hardware controllers. The file contains a JSON structure where each field name corresponds to the name of a controller (the names must be unique strings). These fields then contain a structure that defines the configuration parameters of the controller.
- **type**::
- String value that identifies which hardware interface will handle the controller behaviour. The set of allowed values is listed near the beginning of [`Controller.h`](https://gitlab.psi.ch/microspectro/pixelator/-/blob/master/PixelatorController/src/Controller.h#L19), for example:
-
+**type**::\
+ String value that identifies which hardware interface will handle the controller behaviour. The set of allowed values is listed near the beginning of [`Controller.h`](https://gitlab.psi.ch/microspectro/pixelator/-/blob/master/PixelatorController/src/Controller.h#L19), for example:
`enum Type { NewPort, NexLine, SmarAct, SmarActUsb, SmarActTcp, Orchestra, Orocos, Zaber, ZmiEpics, PandA };`
- **active**::
- Integer value that defines if the controller should be used (value of 1) or ignored (value of 0).
- **Default**: 0
+**active**::\
+ Integer value that defines if the controller should be used (value of 1) or ignored (value of 0). \
+ **Default**: 0
All further parameters are passed to the specific controller code without checking. Therefore, any default values or subtleties in usage will depend on the controller type.
## NewPort
-**serverAddress**::
- String value that defines the network address where the controller can be accessed. Used together with **serverPort**
- **Default**: empty string
+**serverAddress**::\
+ String value that defines the network address where the controller can be accessed. Used together with **serverPort**\
+ **Default**: empty string
-**serverPort**::
- Integer value that defines the port over which the controller can be accessed. Used together with **serverAddress**
- **Default**: 0
-
-**timeout**::
- Double value that defines the controller timeout in seconds.
- **Default**: 1.0
+**serverPort**::\
+ Integer value that defines the port over which the controller can be accessed. Used together with **serverAddress**\
+ **Default**: 0
+**timeout**::\
+ Double value that defines the controller timeout in seconds. \
+ **Default**: 1.0
## NexLine
-**serverAddress**::
- String value that defines the network address where the controller can be accessed.
- **Default**: empty string
-
-**serverPort**::
- Integer value that defines the port over which the controller can be accessed.
- **Default**: 0
+**serverAddress**::\
+ String value that defines the network address where the controller can be accessed.\
+ **Default**: empty string
+**serverPort**::\
+ Integer value that defines the port over which the controller can be accessed.\
+ **Default**: 0
## SmarAct
-**deviceName**::
- String value that defines the filesystem path where the controller can be accessed.
- **Default**: empty string
-
-**baudRate**::
- Integer value that defines communication rate of the controller.
- **Default**: 9600
+**deviceName**::\
+ String value that defines the filesystem path where the controller can be accessed. \
+ **Default**: empty string
+**baudRate**::\
+ Integer value that defines communication rate of the controller. \
+ **Default**: 9600
## SmarActUsb
-**deviceName**::
- String value that defines the USB object name where the controller can be accessed.
- **Default**: empty string
-
+**deviceName**::\
+ String value that defines the USB object name where the controller can be accessed. \
+ **Default**: empty string
## SmarActTcp
-**ipAddress**::
- String value that defines the network address where the controller can be accessed.
- **Default**: empty string
-
-**port**::
- Integer value that defines the port over which the controller can be accessed.
- **Default**: 55551
+**ipAddress**::\
+ String value that defines the network address where the controller can be accessed.\
+ **Default**: empty string
+**port**::\
+ Integer value that defines the port over which the controller can be accessed.\
+ **Default**: 55551
## Orchestra
-**loopName**::
- String value that defines which Orchestra loop the controller is associated with.
- **Default**: "ControlLoop"
+**loopName**::\
+ String value that defines which Orchestra loop the controller is associated with. \
+ **Default**: "ControlLoop"
-**Sensor3Name**::
- String value that defines the module name in the Orchestra configuration for the Z-axis interferometer.
- **Default**: "AttoCube_Sensor"
+**Sensor3Name**::\
+ String value that defines the module name in the Orchestra configuration for the Z-axis interferometer.\
+ **Default**: "AttoCube_Sensor"
-**nAxes**::
- Integer value that defines the number of `axis` objects that the controller handles.
- **Default**: 2
+**nAxes**::\
+ Integer value that defines the number of `axis` objects that the controller handles. \
+ **Default**: 2
## Orocos
-Documentation required.
+**portName**::\
+ A string which is the IP address of the ZMQ REP socket that is intended to receive commands.\
+ **Default**: `"tcp://localhost:51555"`
+
+**nAxes**::\
+ Integer value that defines the number of `axis` objects that the controller handles. \
+ **Default**: 2
## Zaber
-**deviceName**::
- String value that defines the filesystem path where the controller can be accessed.
- **Default**: empty string
+**deviceName**::\
+ String value that defines the filesystem path where the controller can be accessed. \
+ **Default**: empty string
-**baudRate**::
- Integer value that defines communication rate of the controller.
- **Default**: 9600
+**baudRate**::\
+ Integer value that defines communication rate of the controller. \
+ **Default**: 9600
## ZmiEpics
Documentation required.
-## PandA
+## PandATcp
-Documentation required.
\ No newline at end of file
+**serverAddress**::\
+ A string which represents the IP address of the server to which the controller will connect.\
+ **Default**: empty string
+
+**cmdPort**::\
+ An integer which represents the port number used for sending commands to the server\
+ **Default**: 8888
+
+**dataPort**::\
+ An integer which represents the port number used for receiving data from the server\
+ **Default**: 8889
+
+**pixelBit**::\
+ **Default**: 0
+
+**encXField**::\
+ These fields represent encoder fields. Each one corresponds to a specific encoder channel (0 to 3). They are initialized from the configuration.\
+ **Default**: -1
+
+**crtField**::\
+ **Default**: -1
\ No newline at end of file