From 7f59fad7fb9c8fd5091867c7b3c6691be29b5235 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: Thu, 26 Jan 2017 09:40:33 +0100
Subject: [PATCH] Add precision to the SCAN PS output

---
 builddir/3.14.12.5/dbd/emu.dbd                |     8 +
 builddir/3.14.12.5/lib/centos7-x86_64/emu.dep |    11 +
 .../3.14.12.5/lib/centos7-x86_64/libemu.so    |   Bin 0 -> 83357 bytes
 builddir/3.14.12.5/lib/eldk56-e500v2/emu.dep  |    11 +
 .../3.14.12.5/lib/eldk56-e500v2/libemu.so     |   Bin 0 -> 26344 bytes
 builddir/3.15.2/dbd/emu.dbd                   |     8 +
 builddir/3.15.2/lib/centos7-x86_64/emu.dep    |    11 +
 builddir/3.15.2/lib/centos7-x86_64/libemu.so  |   Bin 0 -> 83617 bytes
 builddir/3.15.2/lib/eldk56-e500v2/emu.dep     |    11 +
 builddir/3.15.2/lib/eldk56-e500v2/libemu.so   |   Bin 0 -> 26316 bytes
 .../emu_subRecordFunctions.dbd                |     6 +
 .../.dependencies_includes                    |     1 +
 .../O.3.14.12.5_centos7-x86_64/EMU_CALCULS.d  |    15 +
 .../O.3.14.12.5_centos7-x86_64/EMU_CALCULS.dc |    25 +
 .../O.3.14.12.5_centos7-x86_64/EMU_CALCULS.o  |   Bin 0 -> 39712 bytes
 .../EMU_MTR-CHECKBRAKE.c                      |   339 +
 .../EMU_MTR-CHECKBRAKE.d                      |    14 +
 .../EMU_MTR-CHECKBRAKE.dc                     |    27 +
 .../EMU_MTR-CHECKBRAKE.i                      |   103 +
 .../EMU_MTR-CHECKBRAKE.o                      |   Bin 0 -> 28224 bytes
 .../EMU_MTR-CHECKBRAKE_snl.dbd                |     1 +
 .../EMU_MTR-HOME_AUTO.c                       |   394 +
 .../EMU_MTR-HOME_AUTO.d                       |    14 +
 .../EMU_MTR-HOME_AUTO.dc                      |    27 +
 .../EMU_MTR-HOME_AUTO.i                       |   143 +
 .../EMU_MTR-HOME_AUTO.o                       |   Bin 0 -> 33384 bytes
 .../EMU_MTR-HOME_AUTO_snl.dbd                 |     1 +
 .../EMU_REPORT_FILE.d                         |    15 +
 .../EMU_REPORT_FILE.dc                        |    37 +
 .../EMU_REPORT_FILE.o                         |   Bin 0 -> 24616 bytes
 .../emu_Versioncatane.c                       |     1 +
 .../emu_Versioncatane.d                       |     1 +
 .../emu_Versioncatane.o                       |   Bin 0 -> 2328 bytes
 .../emu_registerRecordDeviceDriver.cpp        |    61 +
 .../emu_registerRecordDeviceDriver.d          |    18 +
 .../emu_registerRecordDeviceDriver.o          |   Bin 0 -> 14904 bytes
 builddir/O.3.14.12.5_centos7-x86_64/libemu.so |   Bin 0 -> 83357 bytes
 .../.dependencies_includes                    |     1 +
 .../O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.d   |    15 +
 .../O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.dc  |    36 +
 .../O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.o   |   Bin 0 -> 5744 bytes
 .../EMU_MTR-CHECKBRAKE.c                      |   339 +
 .../EMU_MTR-CHECKBRAKE.d                      |    14 +
 .../EMU_MTR-CHECKBRAKE.dc                     |    48 +
 .../EMU_MTR-CHECKBRAKE.i                      |   102 +
 .../EMU_MTR-CHECKBRAKE.o                      |   Bin 0 -> 6752 bytes
 .../EMU_MTR-CHECKBRAKE_snl.dbd                |     1 +
 .../EMU_MTR-HOME_AUTO.c                       |   394 +
 .../EMU_MTR-HOME_AUTO.d                       |    14 +
 .../EMU_MTR-HOME_AUTO.dc                      |    48 +
 .../EMU_MTR-HOME_AUTO.i                       |   142 +
 .../EMU_MTR-HOME_AUTO.o                       |   Bin 0 -> 7928 bytes
 .../EMU_MTR-HOME_AUTO_snl.dbd                 |     1 +
 .../EMU_REPORT_FILE.d                         |    15 +
 .../EMU_REPORT_FILE.dc                        |    59 +
 .../EMU_REPORT_FILE.o                         |   Bin 0 -> 1784 bytes
 .../emu_Versioncatane.c                       |     1 +
 .../emu_Versioncatane.d                       |     1 +
 .../emu_Versioncatane.o                       |   Bin 0 -> 801 bytes
 .../emu_registerRecordDeviceDriver.cpp        |    61 +
 .../emu_registerRecordDeviceDriver.d          |    18 +
 .../emu_registerRecordDeviceDriver.o          |   Bin 0 -> 3384 bytes
 builddir/O.3.14.12.5_eldk56-e500v2/libemu.so  |   Bin 0 -> 26344 bytes
 .../emu_subRecordFunctions.dbd                |     6 +
 .../.dependencies_includes                    |     1 +
 .../O.3.15.2_centos7-x86_64/EMU_CALCULS.d     |    17 +
 .../O.3.15.2_centos7-x86_64/EMU_CALCULS.dc    |    27 +
 .../O.3.15.2_centos7-x86_64/EMU_CALCULS.o     |   Bin 0 -> 39936 bytes
 .../EMU_MTR-CHECKBRAKE.c                      |   339 +
 .../EMU_MTR-CHECKBRAKE.d                      |    19 +
 .../EMU_MTR-CHECKBRAKE.dc                     |    29 +
 .../EMU_MTR-CHECKBRAKE.i                      |   103 +
 .../EMU_MTR-CHECKBRAKE.o                      |   Bin 0 -> 28216 bytes
 .../EMU_MTR-CHECKBRAKE_snl.dbd                |     1 +
 .../EMU_MTR-HOME_AUTO.c                       |   394 +
 .../EMU_MTR-HOME_AUTO.d                       |    19 +
 .../EMU_MTR-HOME_AUTO.dc                      |    29 +
 .../EMU_MTR-HOME_AUTO.i                       |   143 +
 .../EMU_MTR-HOME_AUTO.o                       |   Bin 0 -> 33376 bytes
 .../EMU_MTR-HOME_AUTO_snl.dbd                 |     1 +
 .../O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.d |    17 +
 .../EMU_REPORT_FILE.dc                        |    39 +
 .../O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.o |   Bin 0 -> 24744 bytes
 .../emu_Versioncatane.c                       |     1 +
 .../emu_Versioncatane.d                       |     1 +
 .../emu_Versioncatane.o                       |   Bin 0 -> 2328 bytes
 .../emu_registerRecordDeviceDriver.cpp        |    68 +
 .../emu_registerRecordDeviceDriver.cpp.tmp    |    70 +
 .../emu_registerRecordDeviceDriver.d          |    21 +
 .../emu_registerRecordDeviceDriver.o          |   Bin 0 -> 15600 bytes
 builddir/O.3.15.2_centos7-x86_64/libemu.so    |   Bin 0 -> 83617 bytes
 .../.dependencies_includes                    |     1 +
 builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.d |    17 +
 .../O.3.15.2_eldk56-e500v2/EMU_CALCULS.dc     |    38 +
 builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.o |   Bin 0 -> 5744 bytes
 .../EMU_MTR-CHECKBRAKE.c                      |   339 +
 .../EMU_MTR-CHECKBRAKE.d                      |    19 +
 .../EMU_MTR-CHECKBRAKE.dc                     |    51 +
 .../EMU_MTR-CHECKBRAKE.i                      |   102 +
 .../EMU_MTR-CHECKBRAKE.o                      |   Bin 0 -> 6752 bytes
 .../EMU_MTR-CHECKBRAKE_snl.dbd                |     1 +
 .../EMU_MTR-HOME_AUTO.c                       |   394 +
 .../EMU_MTR-HOME_AUTO.d                       |    19 +
 .../EMU_MTR-HOME_AUTO.dc                      |    51 +
 .../EMU_MTR-HOME_AUTO.i                       |   142 +
 .../EMU_MTR-HOME_AUTO.o                       |   Bin 0 -> 7928 bytes
 .../EMU_MTR-HOME_AUTO_snl.dbd                 |     1 +
 .../O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.d  |    17 +
 .../O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.dc |    61 +
 .../O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.o  |   Bin 0 -> 1784 bytes
 .../emu_Versioncatane.c                       |     1 +
 .../emu_Versioncatane.d                       |     1 +
 .../emu_Versioncatane.o                       |   Bin 0 -> 801 bytes
 .../emu_registerRecordDeviceDriver.cpp        |    68 +
 .../emu_registerRecordDeviceDriver.cpp.tmp    |    70 +
 .../emu_registerRecordDeviceDriver.d          |    21 +
 .../emu_registerRecordDeviceDriver.o          |   Bin 0 -> 3468 bytes
 builddir/O.3.15.2_eldk56-e500v2/libemu.so     |   Bin 0 -> 26316 bytes
 builddir/db/EMU.db                            |  5286 ++++++++
 builddir/db/EMU.substitutions                 |   560 +
 builddir/db/EMU_BUFF_CHAN.template            |    77 +
 builddir/db/EMU_BUFF_POS.template             |    12 +
 builddir/db/EMU_CALCUL.template               |   315 +
 builddir/db/EMU_DACQ_SYNC.template            |    48 +
 builddir/db/EMU_PMAC-CONSOLE.template         |    14 +
 builddir/db/EMU_PMAC-GETBO.template           |     9 +
 builddir/db/EMU_PMAC-SETBO.template           |     8 +
 builddir/db/EMU_PROCESS.template              |   222 +
 builddir/doc/README.md                        |     0
 builddir/misc/pmacVariables.proto             |    37 +
 builddir/opi/EMU.opi                          | 10386 ++++++++++++++++
 builddir/opi/Scripts/ExtracData.py            |   111 +
 builddir/opi/Scripts/PlcOpi.js                |    19 +
 builddir/startup/EMU.cmd                      |   248 +
 db/EMU_PROCESS.template                       |    40 +-
 logs.0                                        |    84 +-
 logs.1                                        |   235 +-
 opi/EMU.opi                                   |    18 +-
 startup/EMU.cmd                               |     2 +
 139 files changed, 22904 insertions(+), 199 deletions(-)
 create mode 100644 builddir/3.14.12.5/dbd/emu.dbd
 create mode 100644 builddir/3.14.12.5/lib/centos7-x86_64/emu.dep
 create mode 100644 builddir/3.14.12.5/lib/centos7-x86_64/libemu.so
 create mode 100644 builddir/3.14.12.5/lib/eldk56-e500v2/emu.dep
 create mode 100644 builddir/3.14.12.5/lib/eldk56-e500v2/libemu.so
 create mode 100644 builddir/3.15.2/dbd/emu.dbd
 create mode 100644 builddir/3.15.2/lib/centos7-x86_64/emu.dep
 create mode 100644 builddir/3.15.2/lib/centos7-x86_64/libemu.so
 create mode 100644 builddir/3.15.2/lib/eldk56-e500v2/emu.dep
 create mode 100644 builddir/3.15.2/lib/eldk56-e500v2/libemu.so
 create mode 100644 builddir/O.3.14.12.5_Common/emu_subRecordFunctions.dbd
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/.dependencies_includes
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.d
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.dc
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.o
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.c
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.d
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.i
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.o
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.c
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.d
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.dc
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.i
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.o
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.d
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.dc
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.o
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.c
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.d
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.o
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.cpp
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.d
 create mode 100644 builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.o
 create mode 100755 builddir/O.3.14.12.5_centos7-x86_64/libemu.so
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/.dependencies_includes
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.d
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.dc
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.o
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.o
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.c
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.d
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.i
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.o
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.d
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.dc
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.o
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.c
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.d
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.o
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.d
 create mode 100644 builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.o
 create mode 100755 builddir/O.3.14.12.5_eldk56-e500v2/libemu.so
 create mode 100644 builddir/O.3.15.2_Common/emu_subRecordFunctions.dbd
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/.dependencies_includes
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.d
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.dc
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.o
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.c
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.d
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.i
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.o
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.c
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.d
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.dc
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.i
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.o
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.d
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.dc
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.o
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.c
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.d
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.o
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp.tmp
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.d
 create mode 100644 builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.o
 create mode 100755 builddir/O.3.15.2_centos7-x86_64/libemu.so
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/.dependencies_includes
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.d
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.dc
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.o
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.o
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.c
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.d
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.i
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.o
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.d
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.dc
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.o
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.c
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.d
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.o
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp.tmp
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.d
 create mode 100644 builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.o
 create mode 100755 builddir/O.3.15.2_eldk56-e500v2/libemu.so
 create mode 100644 builddir/db/EMU.db
 create mode 100644 builddir/db/EMU.substitutions
 create mode 100644 builddir/db/EMU_BUFF_CHAN.template
 create mode 100644 builddir/db/EMU_BUFF_POS.template
 create mode 100644 builddir/db/EMU_CALCUL.template
 create mode 100644 builddir/db/EMU_DACQ_SYNC.template
 create mode 100644 builddir/db/EMU_PMAC-CONSOLE.template
 create mode 100644 builddir/db/EMU_PMAC-GETBO.template
 create mode 100644 builddir/db/EMU_PMAC-SETBO.template
 create mode 100644 builddir/db/EMU_PROCESS.template
 create mode 100644 builddir/doc/README.md
 create mode 100644 builddir/misc/pmacVariables.proto
 create mode 100644 builddir/opi/EMU.opi
 create mode 100644 builddir/opi/Scripts/ExtracData.py
 create mode 100644 builddir/opi/Scripts/PlcOpi.js
 create mode 100644 builddir/startup/EMU.cmd

diff --git a/builddir/3.14.12.5/dbd/emu.dbd b/builddir/3.14.12.5/dbd/emu.dbd
new file mode 100644
index 0000000..e92ea73
--- /dev/null
+++ b/builddir/3.14.12.5/dbd/emu.dbd
@@ -0,0 +1,8 @@
+registrar (checkMTRBrakeRegistrar)
+registrar (homeMtrAutoRegistrar)
+function (FACTOR_CONVERSION)
+function (ANGLE_CALCUL)
+function (CREATE_TAB)
+function (INIT_TAB)
+function (CREATE_PROJXY)
+function (CREATE_REPORT)
diff --git a/builddir/3.14.12.5/lib/centos7-x86_64/emu.dep b/builddir/3.14.12.5/lib/centos7-x86_64/emu.dep
new file mode 100644
index 0000000..e7bdc7e
--- /dev/null
+++ b/builddir/3.14.12.5/lib/centos7-x86_64/emu.dep
@@ -0,0 +1,11 @@
+# Generated file. Do not edit.
+scanning,2.0+
+streamdevice,2.7+
+asyn,4.27+
+ecat2db,0.3+
+sscan,2.10+
+busy,1.6+
+calc,3.6+
+fastacquisition,1.1+
+seq,2.1+
+dataacquisition,1.0+
diff --git a/builddir/3.14.12.5/lib/centos7-x86_64/libemu.so b/builddir/3.14.12.5/lib/centos7-x86_64/libemu.so
new file mode 100644
index 0000000000000000000000000000000000000000..9e4d178cdd5354e13f5316e191c25ff61f711324
GIT binary patch
literal 83357
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

literal 0
HcmV?d00001

diff --git a/builddir/3.14.12.5/lib/eldk56-e500v2/emu.dep b/builddir/3.14.12.5/lib/eldk56-e500v2/emu.dep
new file mode 100644
index 0000000..e7bdc7e
--- /dev/null
+++ b/builddir/3.14.12.5/lib/eldk56-e500v2/emu.dep
@@ -0,0 +1,11 @@
+# Generated file. Do not edit.
+scanning,2.0+
+streamdevice,2.7+
+asyn,4.27+
+ecat2db,0.3+
+sscan,2.10+
+busy,1.6+
+calc,3.6+
+fastacquisition,1.1+
+seq,2.1+
+dataacquisition,1.0+
diff --git a/builddir/3.14.12.5/lib/eldk56-e500v2/libemu.so b/builddir/3.14.12.5/lib/eldk56-e500v2/libemu.so
new file mode 100644
index 0000000000000000000000000000000000000000..a3dee129989aeb00e9e12b416081c5f5f5bf7958
GIT binary patch
literal 26344
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

literal 0
HcmV?d00001

diff --git a/builddir/3.15.2/dbd/emu.dbd b/builddir/3.15.2/dbd/emu.dbd
new file mode 100644
index 0000000..e92ea73
--- /dev/null
+++ b/builddir/3.15.2/dbd/emu.dbd
@@ -0,0 +1,8 @@
+registrar (checkMTRBrakeRegistrar)
+registrar (homeMtrAutoRegistrar)
+function (FACTOR_CONVERSION)
+function (ANGLE_CALCUL)
+function (CREATE_TAB)
+function (INIT_TAB)
+function (CREATE_PROJXY)
+function (CREATE_REPORT)
diff --git a/builddir/3.15.2/lib/centos7-x86_64/emu.dep b/builddir/3.15.2/lib/centos7-x86_64/emu.dep
new file mode 100644
index 0000000..e7bdc7e
--- /dev/null
+++ b/builddir/3.15.2/lib/centos7-x86_64/emu.dep
@@ -0,0 +1,11 @@
+# Generated file. Do not edit.
+scanning,2.0+
+streamdevice,2.7+
+asyn,4.27+
+ecat2db,0.3+
+sscan,2.10+
+busy,1.6+
+calc,3.6+
+fastacquisition,1.1+
+seq,2.1+
+dataacquisition,1.0+
diff --git a/builddir/3.15.2/lib/centos7-x86_64/libemu.so b/builddir/3.15.2/lib/centos7-x86_64/libemu.so
new file mode 100644
index 0000000000000000000000000000000000000000..1ab359bac40cdee69a7f6b5e0220887f7f4277c7
GIT binary patch
literal 83617
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
ANB{r;

literal 0
HcmV?d00001

diff --git a/builddir/3.15.2/lib/eldk56-e500v2/emu.dep b/builddir/3.15.2/lib/eldk56-e500v2/emu.dep
new file mode 100644
index 0000000..e7bdc7e
--- /dev/null
+++ b/builddir/3.15.2/lib/eldk56-e500v2/emu.dep
@@ -0,0 +1,11 @@
+# Generated file. Do not edit.
+scanning,2.0+
+streamdevice,2.7+
+asyn,4.27+
+ecat2db,0.3+
+sscan,2.10+
+busy,1.6+
+calc,3.6+
+fastacquisition,1.1+
+seq,2.1+
+dataacquisition,1.0+
diff --git a/builddir/3.15.2/lib/eldk56-e500v2/libemu.so b/builddir/3.15.2/lib/eldk56-e500v2/libemu.so
new file mode 100644
index 0000000000000000000000000000000000000000..50a83f1fc870075ba3b60f7fa8e31393f29a187a
GIT binary patch
literal 26316
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_Common/emu_subRecordFunctions.dbd b/builddir/O.3.14.12.5_Common/emu_subRecordFunctions.dbd
new file mode 100644
index 0000000..25aa99a
--- /dev/null
+++ b/builddir/O.3.14.12.5_Common/emu_subRecordFunctions.dbd
@@ -0,0 +1,6 @@
+function (FACTOR_CONVERSION)
+function (ANGLE_CALCUL)
+function (CREATE_TAB)
+function (INIT_TAB)
+function (CREATE_PROJXY)
+function (CREATE_REPORT)
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/.dependencies_includes b/builddir/O.3.14.12.5_centos7-x86_64/.dependencies_includes
new file mode 100644
index 0000000..e0a8063
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/.dependencies_includes
@@ -0,0 +1 @@
+DEPENDENCIES_INCLUDES = -I/opt/epics/modules/scanning/2.0.5/3.14.12.5/include -I/opt/epics/modules/scanning/2.0.5/3.14.12.5/include/os/Linux -I/opt/epics/modules/scanning/2.0.5/3.14.12.5/include/os/default -I/opt/epics/modules/fastacquisition/1.1.0/3.14.12.5/include -I/opt/epics/modules/fastacquisition/1.1.0/3.14.12.5/include/os/Linux -I/opt/epics/modules/fastacquisition/1.1.0/3.14.12.5/include/os/default -I/opt/epics/modules/seq/2.1.10/3.14.12.5/include -I/opt/epics/modules/seq/2.1.10/3.14.12.5/include/os/Linux -I/opt/epics/modules/seq/2.1.10/3.14.12.5/include/os/default -I/opt/epics/modules/dataacquisition/1.0.1/3.14.12.5/include -I/opt/epics/modules/dataacquisition/1.0.1/3.14.12.5/include/os/Linux -I/opt/epics/modules/dataacquisition/1.0.1/3.14.12.5/include/os/default -I/opt/epics/modules/ecat2db/0.3.1/3.14.12.5/include -I/opt/epics/modules/ecat2db/0.3.1/3.14.12.5/include/os/Linux -I/opt/epics/modules/ecat2db/0.3.1/3.14.12.5/include/os/default 
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.d b/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.d
new file mode 100644
index 0000000..7b2da41
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.d
@@ -0,0 +1,15 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.dc b/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.dc
new file mode 100644
index 0000000..137d292
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.dc
@@ -0,0 +1,25 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c /usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h /usr/include/time.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h /usr/include/bits/time.h \
+ /usr/include/bits/types.h /usr/include/bits/typesizes.h \
+ /usr/include/bits/timex.h /usr/include/xlocale.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.o b/builddir/O.3.14.12.5_centos7-x86_64/EMU_CALCULS.o
new file mode 100644
index 0000000000000000000000000000000000000000..bc9dc88f73f42dcba088829f4cc6abb9ce1e8cfe
GIT binary patch
literal 39712
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
XzJ(h4hQ{;0c1+`W-}znRc^~<IKtsbD

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.c b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.c
new file mode 100644
index 0000000..61f7985
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.c
@@ -0,0 +1,339 @@
+/* Generated with snc from EMU_MTR-CHECKBRAKE.i */
+
+/* Program "checkMTRBrake" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrGet = 0;
+# line 19 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short statusMTRMov = 0;
+# line 23 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrSet = 0;
+# line 27 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrCMD = 0;
+# line 31 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrGET = 0;
+# line 37 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short AbortscanMtrCMD = 0;
+# line 41 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short countErrors = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 48 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nWAIT\n");
+# line 49 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 50 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (0.1));
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_efTestAndClear(ssId, 1/*ErrorBrakeMtrEvent*/) && (ErrorBrakeMtrGet == 1) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 58 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : BRAKE OFF \n");
+# line 59 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			brakeMtrCMD = 1;
+# line 60 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 3/*brakeMtrCMD*/, 0);
+# line 61 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_delay(ssId, 0);
+# line 62 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 63 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "count" in state set "ss1" ******/
+
+/* Delay function for state "count" in state set "ss1" */
+static void D_ss1_0_count(SS_ID ssId, struct UserVar *pVar)
+{
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 1, (1.0));
+}
+
+/* Event function for state "count" in state set "ss1" */
+static seqBool E_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 69 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (countErrors > 3)
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 0)) && (statusMTRMov == 1))
+	{
+		*pNextState = 1;
+		*pTransNum = 1;
+		return TRUE;
+	}
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 1)) && (statusMTRMov == 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 2;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "count" in state set "ss1" */
+static void A_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 71 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : STOP MEASURE \n");
+		}
+		return;
+	case 1:
+		{
+# line 76 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+# line 77 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	case 2:
+		{
+# line 82 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = countErrors + 1;
+		}
+		return;
+	}
+}
+
+/****** Code for state "stopMeasure" in state set "ss1" ******/
+
+/* Delay function for state "stopMeasure" in state set "ss1" */
+static void D_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "stopMeasure" in state set "ss1" */
+static seqBool E_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "stopMeasure" in state set "ss1" */
+static void A_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 90 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\n ABORT\n");
+# line 91 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			AbortscanMtrCMD = 1;
+# line 92 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 5/*AbortscanMtrCMD*/, 0);
+# line 93 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_GET", (size_t)&ErrorBrakeMtrGet, "ErrorBrakeMtrGet", "short", 1, 3, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 4, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_SET", (size_t)&ErrorBrakeMtrSet, "ErrorBrakeMtrSet", "short", 1, 5, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 6, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 7, 2, 1, 0, 0},
+	{"{DEVICE}:MTR-ABORT.PROC", (size_t)&AbortscanMtrCMD, "AbortscanMtrCMD", "short", 1, 8, 0, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x0000000a,
+};
+static const seqMask	EM_ss1_0_count[] = {
+	0x00000010,
+};
+static const seqMask	EM_ss1_0_stopMeasure[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "count",
+	/* action function */   A_ss1_0_count,
+	/* event function */    E_ss1_0_count,
+	/* delay function */    D_ss1_0_count,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_count,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "stopMeasure",
+	/* action function */   A_ss1_0_stopMeasure,
+	/* event function */    E_ss1_0_stopMeasure,
+	/* delay function */    D_ss1_0_stopMeasure,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_stopMeasure,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  4,
+	/* number of delays */  2
+	},
+};
+
+/* Program table (global) */
+seqProgram checkMTRBrake = {
+	/* magic number */      2001010,
+	/* program name */      "checkMTRBrake",
+	/* channels */          G_channels,
+	/* num. channels */     6,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  2,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void checkMTRBrakeRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&checkMTRBrake);
+}
+epicsExportRegistrar(checkMTRBrakeRegistrar);
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.d b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.d
new file mode 100644
index 0000000..5cff764
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.d
@@ -0,0 +1,14 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seqCom.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvType.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsThread.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdThread.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seq_release.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc
new file mode 100644
index 0000000..d6a612e
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc
@@ -0,0 +1,27 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c /usr/include/stdc-predef.h \
+ /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /usr/include/xlocale.h /usr/include/stdio.h /usr/include/bits/types.h \
+ /usr/include/bits/typesizes.h /usr/include/libio.h \
+ /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stdarg.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/syslimits.h \
+ /usr/include/limits.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h seqCom.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/bits/byteswap-16.h /usr/include/sys/types.h \
+ /usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
+ /usr/include/bits/sigset.h /usr/include/bits/time.h \
+ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
+ /usr/include/alloca.h /usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.i b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.i
new file mode 100644
index 0000000..1267f20
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.i
@@ -0,0 +1,103 @@
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+# 1 "<built-in>"
+# 1 "<command-line>"
+# 1 "/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+
+
+
+
+
+program checkMTRBrake
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short ErrorBrakeMtrGet;
+assign ErrorBrakeMtrGet to "{PREFIX}:PBI-EM:CURRENT_ERR_GET";
+monitor ErrorBrakeMtrGet;
+evflag ErrorBrakeMtrEvent;
+sync ErrorBrakeMtrGet ErrorBrakeMtrEvent;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short ErrorBrakeMtrSet;
+assign ErrorBrakeMtrSet to "{PREFIX}:PBI-EM:CURRENT_ERR_SET";
+monitor ErrorBrakeMtrSet;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+short AbortscanMtrCMD;
+assign AbortscanMtrCMD to "{DEVICE}:MTR-ABORT.PROC";
+monitor AbortscanMtrCMD;
+
+short countErrors=0;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     printf("\nWAIT\n");
+     ErrorBrakeMtrSet=0;
+           pvPut(ErrorBrakeMtrSet);
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(ErrorBrakeMtrEvent)&&(ErrorBrakeMtrGet==1)&&(delay(0.1)))
+       {
+       printf("\nERRROR CURRENT : BRAKE OFF \n");
+       brakeMtrCMD=1;
+       pvPut(brakeMtrCMD);
+       delay(1);
+       ErrorBrakeMtrSet=0;
+       pvPut(ErrorBrakeMtrSet);
+       }state count
+      }
+
+ state count
+        {
+        when(countErrors>3)
+       {
+       printf("\nERRROR CURRENT : STOP MEASURE \n");
+       }state stopMeasure
+
+   when((delay(1.0)) && (statusMTRMov==1))
+       {
+       printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+       countErrors=0;
+       }state waiting
+
+   when((delay(1.0)) && (statusMTRMov==0))
+       {
+       countErrors=countErrors+1;
+       }state waiting
+   }
+
+
+ state stopMeasure
+   {
+   when(delay(1.0)){
+   printf("\n ABORT\n");
+   AbortscanMtrCMD=1;
+   pvPut(AbortscanMtrCMD);
+   countErrors=0;
+   }state waiting
+   }
+
+}
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.o b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE.o
new file mode 100644
index 0000000000000000000000000000000000000000..083007c6f5d0156b9c5173c582f32e041daabd4e
GIT binary patch
literal 28224
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
Nf%EzFxWM^5^<Qv_M~naf

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd
new file mode 100644
index 0000000..d71c5ef
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd
@@ -0,0 +1 @@
+registrar (checkMTRBrakeRegistrar)
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.c b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.c
new file mode 100644
index 0000000..0b2209c
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.c
@@ -0,0 +1,394 @@
+/* Generated with snc from EMU_MTR-HOME_AUTO.i */
+
+/* Program "homeMtrAuto" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short HOMCPTFLAG = 0;
+# line 17 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short statusMTRMov = 0;
+# line 21 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPlaced = 0;
+# line 27 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrStop = 0;
+# line 31 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeCMD = 0;
+# line 35 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPosCons = 0;
+# line 39 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrCMD = 0;
+# line 43 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrGET = 0;
+# line 50 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanPS_Sts = 0;
+# line 55 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanMTR_Sts = 0;
+# line 61 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeSTART = 0;
+# line 68 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short plimSTATUS = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 79 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 80 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 81 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nWAIT\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 87 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 3/*homeSTARTEvent*/) && (homeSTART == 1) && (plimSTATUS == 0))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 89 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nSTART HOME PROCEDURE\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "startHOME" in state set "ss1" ******/
+
+/* Delay function for state "startHOME" in state set "ss1" */
+static void D_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "startHOME" in state set "ss1" */
+static seqBool E_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if ((scanPS_Sts == 0) && (scanMTR_Sts == 0) && (statusMTRMov == 0) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "startHOME" in state set "ss1" */
+static void A_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 97 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\n GO HOME\n");
+# line 98 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 1;
+# line 99 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+# line 100 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 101 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 1;
+# line 102 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 103 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 104 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 105 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "limitON" in state set "ss1" ******/
+
+/* Delay function for state "limitON" in state set "ss1" */
+static void D_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "limitON" in state set "ss1" */
+static seqBool E_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 111 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 4/*plimSTATUSEvent*/) && (plimSTATUS == 1))
+	{
+		*pNextState = 4;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "limitON" in state set "ss1" */
+static void A_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 113 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nLIMIT HIGH\n");
+# line 114 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 115 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "breakON" in state set "ss1" ******/
+
+/* Delay function for state "breakON" in state set "ss1" */
+static void D_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "breakON" in state set "ss1" */
+static seqBool E_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 0;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "breakON" in state set "ss1" */
+static void A_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 123 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nINIT POSITION\n");
+# line 124 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 125 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 126 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 127 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nBRAKE ON\n");
+# line 128 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 129 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+# line 130 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 131 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 132 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 0;
+# line 133 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG", (size_t)&HOMCPTFLAG, "HOMCPTFLAG", "short", 1, 5, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 6, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS", (size_t)&mtrPlaced, "mtrPlaced", "short", 1, 7, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.SPMG", (size_t)&mtrStop, "mtrStop", "short", 1, 8, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD", (size_t)&homeCMD, "homeCMD", "short", 1, 9, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}", (size_t)&mtrPosCons, "mtrPosCons", "short", 1, 10, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 11, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 12, 2, 1, 0, 0},
+	{"{DEVICE}:PS.BUSY", (size_t)&scanPS_Sts, "scanPS_Sts", "short", 1, 13, 0, 1, 0, 0},
+	{"{DEVICE}:MTR.BUSY", (size_t)&scanMTR_Sts, "scanMTR_Sts", "short", 1, 14, 0, 1, 0, 0},
+	{"{DEVICE}:PROC-AUTO-HOME", (size_t)&homeSTART, "homeSTART", "short", 1, 15, 3, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS", (size_t)&plimSTATUS, "plimSTATUS", "short", 1, 16, 4, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x00018008,
+};
+static const seqMask	EM_ss1_0_startHOME[] = {
+	0x00006040,
+};
+static const seqMask	EM_ss1_0_limitON[] = {
+	0x00010010,
+};
+static const seqMask	EM_ss1_0_breakON[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "startHOME",
+	/* action function */   A_ss1_0_startHOME,
+	/* event function */    E_ss1_0_startHOME,
+	/* delay function */    D_ss1_0_startHOME,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_startHOME,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "limitON",
+	/* action function */   A_ss1_0_limitON,
+	/* event function */    E_ss1_0_limitON,
+	/* delay function */    D_ss1_0_limitON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_limitON,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "breakON",
+	/* action function */   A_ss1_0_breakON,
+	/* event function */    E_ss1_0_breakON,
+	/* delay function */    D_ss1_0_breakON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_breakON,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  5,
+	/* number of delays */  1
+	},
+};
+
+/* Program table (global) */
+seqProgram homeMtrAuto = {
+	/* magic number */      2001010,
+	/* program name */      "homeMtrAuto",
+	/* channels */          G_channels,
+	/* num. channels */     12,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  4,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void homeMtrAutoRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&homeMtrAuto);
+}
+epicsExportRegistrar(homeMtrAutoRegistrar);
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.d b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.d
new file mode 100644
index 0000000..8f7967a
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.d
@@ -0,0 +1,14 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seqCom.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvType.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsThread.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdThread.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seq_release.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.dc b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.dc
new file mode 100644
index 0000000..4ec46b3
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.dc
@@ -0,0 +1,27 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c /usr/include/stdc-predef.h \
+ /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /usr/include/xlocale.h /usr/include/stdio.h /usr/include/bits/types.h \
+ /usr/include/bits/typesizes.h /usr/include/libio.h \
+ /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stdarg.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/syslimits.h \
+ /usr/include/limits.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h seqCom.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/bits/byteswap-16.h /usr/include/sys/types.h \
+ /usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
+ /usr/include/bits/sigset.h /usr/include/bits/time.h \
+ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
+ /usr/include/alloca.h /usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.i b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.i
new file mode 100644
index 0000000..1d5294f
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.i
@@ -0,0 +1,143 @@
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+# 1 "<built-in>"
+# 1 "<command-line>"
+# 1 "/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+
+
+
+
+
+program homeMtrAuto
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short HOMCPTFLAG;
+assign HOMCPTFLAG to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG";
+monitor HOMCPTFLAG;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short mtrPlaced;
+assign mtrPlaced to "{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS";
+monitor mtrPlaced;
+evflag mtrPlacedEvent;
+sync mtrPlaced mtrPlacedEvent;
+
+short mtrStop;
+assign mtrStop to "{PMACPREFIX}:{MOTOR_NAME1}.SPMG";
+monitor mtrStop;
+
+short homeCMD;
+assign homeCMD to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD";
+monitor homeCMD;
+
+short mtrPosCons;
+assign mtrPosCons to "{PMACPREFIX}:{MOTOR_NAME1}";
+monitor mtrPosCons;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+
+short scanPS_Sts;
+assign scanPS_Sts to "{DEVICE}:PS.BUSY";
+monitor scanPS_Sts;
+
+
+short scanMTR_Sts;
+assign scanMTR_Sts to "{DEVICE}:MTR.BUSY";
+monitor scanMTR_Sts;
+
+
+
+short homeSTART;
+assign homeSTART to "{DEVICE}:PROC-AUTO-HOME";
+monitor homeSTART;
+evflag homeSTARTEvent;
+sync homeSTART homeSTARTEvent;
+
+
+short plimSTATUS;
+assign plimSTATUS to "{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS";
+monitor plimSTATUS;
+evflag plimSTATUSEvent;
+sync plimSTATUS plimSTATUSEvent;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     homeSTART=0;
+        pvPut(homeSTART);
+     printf("\nWAIT\n");
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(homeSTARTEvent)&&(homeSTART==1)&&(plimSTATUS==0))
+       {
+       printf("\nSTART HOME PROCEDURE\n");
+       }state startHOME
+      }
+
+
+ state startHOME
+   {
+   when((scanPS_Sts==0) && (scanMTR_Sts==0) && (statusMTRMov==0) && (delay(1.0))){
+   printf("\n GO HOME\n");
+   brakeMtrCMD=1;
+   pvPut(brakeMtrCMD);
+   delay(1);
+   HOMCPTFLAG=1;
+   pvPut(HOMCPTFLAG);
+   delay(1);
+   homeCMD=1;
+   pvPut(homeCMD);
+   }state limitON
+   }
+
+ state limitON
+     {
+   when(efTestAndClear(plimSTATUSEvent)&&(plimSTATUS==1))
+    {
+    printf("\nLIMIT HIGH\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    }state breakON
+     }
+
+ state breakON
+     {
+   when(delay(1.0))
+    {
+    printf("\nINIT POSITION\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    delay(1);
+    printf("\nBRAKE ON\n");
+    homeCMD=1;
+    pvPut(homeCMD);
+    homeSTART=0;
+    pvPut(homeSTART);
+    brakeMtrCMD=0;
+    pvPut(brakeMtrCMD);
+    }state init
+           }
+
+}
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.o b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO.o
new file mode 100644
index 0000000000000000000000000000000000000000..4b79bcfec5061e9339329f1e72dc40c40455923f
GIT binary patch
literal 33384
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
JgmFGk_#b1nQ}h4;

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd
new file mode 100644
index 0000000..1386530
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd
@@ -0,0 +1 @@
+registrar (homeMtrAutoRegistrar)
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.d b/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.d
new file mode 100644
index 0000000..3655c14
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.d
@@ -0,0 +1,15 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.dc b/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.dc
new file mode 100644
index 0000000..6484088
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.dc
@@ -0,0 +1,37 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h /usr/include/time.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h /usr/include/bits/time.h \
+ /usr/include/bits/types.h /usr/include/bits/typesizes.h \
+ /usr/include/bits/timex.h /usr/include/xlocale.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/string.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/bits/byteswap-16.h /usr/include/sys/types.h \
+ /usr/include/sys/select.h /usr/include/bits/select.h \
+ /usr/include/bits/sigset.h /usr/include/sys/sysmacros.h \
+ /usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-float.h /usr/include/stdio.h \
+ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stdarg.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.o b/builddir/O.3.14.12.5_centos7-x86_64/EMU_REPORT_FILE.o
new file mode 100644
index 0000000000000000000000000000000000000000..c8be86bea94255bd7ed1815332da0b2bd5013efc
GIT binary patch
literal 24616
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%0DFNAn<$WN81Y|2jC4>az8i=6~5|FP$R6$5U
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.c b/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.c
new file mode 100644
index 0000000..a707bba
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.c
@@ -0,0 +1 @@
+char epics_emuLibRelease[] = "catane";
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.d b/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.d
new file mode 100644
index 0000000..28b2801
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.d
@@ -0,0 +1 @@
+emu_Versioncatane.o: emu_Versioncatane.c
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.o b/builddir/O.3.14.12.5_centos7-x86_64/emu_Versioncatane.o
new file mode 100644
index 0000000000000000000000000000000000000000..29d0ba942cd5b61a5e6625b22f299c228e0451a7
GIT binary patch
literal 2328
zcmbVO&2G~`5FRI?w1kFM5rV29xe|yJu+y}mf6x*sf;OViQVFh+<7^X)#HnnjYPs|g
zIP)$X`UqSQyap$bIKYg((`*+@NQ~s2*>Ap?osDPLIeoVCJYyKZV!$ShW{d)yWkz-_
zHft~ili)g$;|qY7h~;8@JPyB*BU43>g-@1-G02TyCTh+YBXx-e!?=y(M3(GWjA`R;
zp_tDWW(!j{0I<eJ(I{eyIcOBid5pdT`TQmlFhdoxh4uX7e53euCUX<xZ{d?vJf5V}
z#)a5_A4kLZRhYyv{td8d14Mt=d@F*`8~DlYY&VV$z4szIITWz<>Wx`9tM;nBWG*gL
zstaqCidothZFAd+65LvwH?9716^Cf(i;a%(Mc}zObpp4$alE>0k+Wl3yGy2Zu-B-k
zE?e#n`l6gvQErPP(Hk80g&&psmN@j>(85~Ft)bUzx4odeYcJWAs$E&MA2nTM4Z;-*
zS86U-A!av`z2mj^MNc@P0JrM|09*C?x>>?4&Hr;p0CsrNkDM0jC`fddtw<b4V7IXy
zz;1;h*n#Ldc3ZTDou=m>4A2+bPOBA&qYG{)aQu$Ikc83mu%V=l*}--PecCkG{vZ-I
zmTHBO<G#~g>Hke<sRi(fJ5fndQ*6~tdVGY;p-J(h#!Y;+L_yr>(k7+H-$RUARFB^#
za*F8j739$Rx^Vn!&7pH2qF>KRAtiZkzR7qzWid~}K!=QE10Ovn;U8&0*-X^=sB`zw
zqhmz=DkDs(S?Syt=t!#{CXxuQlj^5;q1WF;OwUP?KWIRqn@bg)OI=79T_~zNki;)4
zh&IQwK9ZOoFK@5-)>Kn)9P3jhr^>UG`&z|0j<IPp^xh*M$A4g=)OtM4)0R4u2WnLY
zTtnVfeDvR+UQ^ooKjp!hN53li`l?U0iI;=#zg3Lw?D<<@B+=Q_olt#g6%wA>d5G(`
z3Fp^u1IA^uUMvUmT+tBb(=YkAWC1^mnq0^Ew6d@B3evuEX<rGMk9R~Bu}v<ngmBsg
z?}Yk_gmF4&BvcOx<6$y|8L0{99wCU&1@k2hR;0oBXE}eO;h*GuTWabHu9+a-3+0Lb
Ih!BYK2eOd14FCWD

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.cpp b/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.cpp
new file mode 100644
index 0000000..b8b743c
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.cpp
@@ -0,0 +1,61 @@
+/* THIS IS A GENERATED FILE. DO NOT EDIT! */
+/* Generated from ../../builddir/3.14.12.5/dbd/emu.dbd */
+
+#include <string.h>
+
+#include "epicsStdlib.h"
+#include "iocsh.h"
+#include "registryCommon.h"
+
+extern "C" {
+
+epicsShareExtern void (*pvar_func_checkMTRBrakeRegistrar)(void);
+epicsShareExtern void (*pvar_func_homeMtrAutoRegistrar)(void);
+epicsShareExtern void (*pvar_func_register_func_FACTOR_CONVERSION)(void);
+epicsShareExtern void (*pvar_func_register_func_ANGLE_CALCUL)(void);
+epicsShareExtern void (*pvar_func_register_func_CREATE_TAB)(void);
+epicsShareExtern void (*pvar_func_register_func_INIT_TAB)(void);
+epicsShareExtern void (*pvar_func_register_func_CREATE_PROJXY)(void);
+epicsShareExtern void (*pvar_func_register_func_CREATE_REPORT)(void);
+
+int emu_registerRecordDeviceDriver(DBBASE *pbase)
+{
+    if (!pbase) {
+        printf("pdbbase is NULL; you must load a DBD file first.\n");
+        return -1;
+    }
+
+    (*pvar_func_checkMTRBrakeRegistrar)();
+    (*pvar_func_homeMtrAutoRegistrar)();
+    (*pvar_func_register_func_FACTOR_CONVERSION)();
+    (*pvar_func_register_func_ANGLE_CALCUL)();
+    (*pvar_func_register_func_CREATE_TAB)();
+    (*pvar_func_register_func_INIT_TAB)();
+    (*pvar_func_register_func_CREATE_PROJXY)();
+    (*pvar_func_register_func_CREATE_REPORT)();
+    return 0;
+}
+
+/* registerRecordDeviceDriver */
+static const iocshArg registerRecordDeviceDriverArg0 =
+                                            {"pdbbase",iocshArgPdbbase};
+static const iocshArg *registerRecordDeviceDriverArgs[1] =
+                                            {&registerRecordDeviceDriverArg0};
+static const iocshFuncDef registerRecordDeviceDriverFuncDef =
+                {"emu_registerRecordDeviceDriver",1,registerRecordDeviceDriverArgs};
+static void registerRecordDeviceDriverCallFunc(const iocshArgBuf *)
+{
+    emu_registerRecordDeviceDriver(*iocshPpdbbase);
+}
+
+} // extern "C"
+/*
+ * Register commands on application startup
+ */
+static int Registration() {
+    iocshRegister(&registerRecordDeviceDriverFuncDef,
+        registerRecordDeviceDriverCallFunc);
+    return 0;
+}
+
+static int done = Registration();
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.d b/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.d
new file mode 100644
index 0000000..52cdf69
--- /dev/null
+++ b/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.d
@@ -0,0 +1,18 @@
+emu_registerRecordDeviceDriver.o: emu_registerRecordDeviceDriver.cpp \
+ /opt/epics/bases/base-3.14.12.5/include/epicsStdlib.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdStrtod.h \
+ /opt/epics/bases/base-3.14.12.5/include/iocsh.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryCommon.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbStaticLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbFldTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbBase.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/errMdef.h \
+ /opt/epics/bases/base-3.14.12.5/include/cantProceed.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryRecordType.h \
+ /opt/epics/bases/base-3.14.12.5/include/recSup.h
diff --git a/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.o b/builddir/O.3.14.12.5_centos7-x86_64/emu_registerRecordDeviceDriver.o
new file mode 100644
index 0000000000000000000000000000000000000000..b1fb15263e1851fb608c0ccc565cf4b117073d6f
GIT binary patch
literal 14904
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
EZ-q@4eE<Le

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_centos7-x86_64/libemu.so b/builddir/O.3.14.12.5_centos7-x86_64/libemu.so
new file mode 100755
index 0000000000000000000000000000000000000000..9e4d178cdd5354e13f5316e191c25ff61f711324
GIT binary patch
literal 83357
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/.dependencies_includes b/builddir/O.3.14.12.5_eldk56-e500v2/.dependencies_includes
new file mode 100644
index 0000000..8a5e18d
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/.dependencies_includes
@@ -0,0 +1 @@
+DEPENDENCIES_INCLUDES = -I/opt/epics/modules/scanning/2.0.5/3.14.12.5/include -I/opt/epics/modules/scanning/2.0.5/3.14.12.5/include/os/Linux -I/opt/epics/modules/scanning/2.0.5/3.14.12.5/include/os/default -I/opt/epics/modules/streamdevice/2.7.1/3.14.12.5/include -I/opt/epics/modules/streamdevice/2.7.1/3.14.12.5/include/os/Linux -I/opt/epics/modules/streamdevice/2.7.1/3.14.12.5/include/os/default -I/opt/epics/modules/asyn/4.27.0/3.14.12.5/include -I/opt/epics/modules/asyn/4.27.0/3.14.12.5/include/os/Linux -I/opt/epics/modules/asyn/4.27.0/3.14.12.5/include/os/default -I/opt/epics/modules/ecat2db/0.3.1/3.14.12.5/include -I/opt/epics/modules/ecat2db/0.3.1/3.14.12.5/include/os/Linux -I/opt/epics/modules/ecat2db/0.3.1/3.14.12.5/include/os/default -I/opt/epics/modules/sscan/2.10.1/3.14.12.5/include -I/opt/epics/modules/sscan/2.10.1/3.14.12.5/include/os/Linux -I/opt/epics/modules/sscan/2.10.1/3.14.12.5/include/os/default -I/opt/epics/modules/busy/1.6.0/3.14.12.5/include -I/opt/epics/modules/busy/1.6.0/3.14.12.5/include/os/Linux -I/opt/epics/modules/busy/1.6.0/3.14.12.5/include/os/default -I/opt/epics/modules/calc/3.6.1/3.14.12.5/include -I/opt/epics/modules/calc/3.6.1/3.14.12.5/include/os/Linux -I/opt/epics/modules/calc/3.6.1/3.14.12.5/include/os/default -I/opt/epics/modules/pcre/8.36.0/3.14.12.5/include -I/opt/epics/modules/pcre/8.36.0/3.14.12.5/include/os/Linux -I/opt/epics/modules/pcre/8.36.0/3.14.12.5/include/os/default -I/opt/epics/modules/seq/2.1.10/3.14.12.5/include -I/opt/epics/modules/seq/2.1.10/3.14.12.5/include/os/Linux -I/opt/epics/modules/seq/2.1.10/3.14.12.5/include/os/default -I/opt/epics/modules/dataacquisition/1.0.1/3.14.12.5/include -I/opt/epics/modules/dataacquisition/1.0.1/3.14.12.5/include/os/Linux -I/opt/epics/modules/dataacquisition/1.0.1/3.14.12.5/include/os/default -I/opt/epics/modules/fastacquisition/1.1.0/3.14.12.5/include -I/opt/epics/modules/fastacquisition/1.1.0/3.14.12.5/include/os/Linux -I/opt/epics/modules/fastacquisition/1.1.0/3.14.12.5/include/os/default 
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.d b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.d
new file mode 100644
index 0000000..7b2da41
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.d
@@ -0,0 +1,15 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.dc b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.dc
new file mode 100644
index 0000000..729f96d
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.dc
@@ -0,0 +1,36 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/timex.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/math.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_val.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_valf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_vall.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/inf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/nan.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathdef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathcalls.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.o b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_CALCULS.o
new file mode 100644
index 0000000000000000000000000000000000000000..486ca7c0070e9161bd1084df47d0370be89fc867
GIT binary patch
literal 5744
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
Gx&H!sj2+bg

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c
new file mode 100644
index 0000000..61f7985
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c
@@ -0,0 +1,339 @@
+/* Generated with snc from EMU_MTR-CHECKBRAKE.i */
+
+/* Program "checkMTRBrake" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrGet = 0;
+# line 19 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short statusMTRMov = 0;
+# line 23 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrSet = 0;
+# line 27 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrCMD = 0;
+# line 31 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrGET = 0;
+# line 37 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short AbortscanMtrCMD = 0;
+# line 41 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short countErrors = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 48 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nWAIT\n");
+# line 49 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 50 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (0.1));
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_efTestAndClear(ssId, 1/*ErrorBrakeMtrEvent*/) && (ErrorBrakeMtrGet == 1) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 58 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : BRAKE OFF \n");
+# line 59 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			brakeMtrCMD = 1;
+# line 60 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 3/*brakeMtrCMD*/, 0);
+# line 61 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_delay(ssId, 0);
+# line 62 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 63 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "count" in state set "ss1" ******/
+
+/* Delay function for state "count" in state set "ss1" */
+static void D_ss1_0_count(SS_ID ssId, struct UserVar *pVar)
+{
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 1, (1.0));
+}
+
+/* Event function for state "count" in state set "ss1" */
+static seqBool E_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 69 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (countErrors > 3)
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 0)) && (statusMTRMov == 1))
+	{
+		*pNextState = 1;
+		*pTransNum = 1;
+		return TRUE;
+	}
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 1)) && (statusMTRMov == 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 2;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "count" in state set "ss1" */
+static void A_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 71 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : STOP MEASURE \n");
+		}
+		return;
+	case 1:
+		{
+# line 76 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+# line 77 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	case 2:
+		{
+# line 82 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = countErrors + 1;
+		}
+		return;
+	}
+}
+
+/****** Code for state "stopMeasure" in state set "ss1" ******/
+
+/* Delay function for state "stopMeasure" in state set "ss1" */
+static void D_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "stopMeasure" in state set "ss1" */
+static seqBool E_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "stopMeasure" in state set "ss1" */
+static void A_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 90 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\n ABORT\n");
+# line 91 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			AbortscanMtrCMD = 1;
+# line 92 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 5/*AbortscanMtrCMD*/, 0);
+# line 93 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_GET", (size_t)&ErrorBrakeMtrGet, "ErrorBrakeMtrGet", "short", 1, 3, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 4, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_SET", (size_t)&ErrorBrakeMtrSet, "ErrorBrakeMtrSet", "short", 1, 5, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 6, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 7, 2, 1, 0, 0},
+	{"{DEVICE}:MTR-ABORT.PROC", (size_t)&AbortscanMtrCMD, "AbortscanMtrCMD", "short", 1, 8, 0, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x0000000a,
+};
+static const seqMask	EM_ss1_0_count[] = {
+	0x00000010,
+};
+static const seqMask	EM_ss1_0_stopMeasure[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "count",
+	/* action function */   A_ss1_0_count,
+	/* event function */    E_ss1_0_count,
+	/* delay function */    D_ss1_0_count,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_count,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "stopMeasure",
+	/* action function */   A_ss1_0_stopMeasure,
+	/* event function */    E_ss1_0_stopMeasure,
+	/* delay function */    D_ss1_0_stopMeasure,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_stopMeasure,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  4,
+	/* number of delays */  2
+	},
+};
+
+/* Program table (global) */
+seqProgram checkMTRBrake = {
+	/* magic number */      2001010,
+	/* program name */      "checkMTRBrake",
+	/* channels */          G_channels,
+	/* num. channels */     6,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  2,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void checkMTRBrakeRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&checkMTRBrake);
+}
+epicsExportRegistrar(checkMTRBrakeRegistrar);
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d
new file mode 100644
index 0000000..5cff764
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d
@@ -0,0 +1,14 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seqCom.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvType.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsThread.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdThread.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seq_release.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc
new file mode 100644
index 0000000..2cde58d
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc
@@ -0,0 +1,48 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/string.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/libio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/_G_config.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/wchar.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stdarg.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdio_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sys_errlist.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/syslimits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix1_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/local_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/linux/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix2_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h seqCom.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdlib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitflags.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitstatus.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap-16.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sigset.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/sysmacros.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/pthreadtypes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/alloca.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i
new file mode 100644
index 0000000..3ec36e0
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i
@@ -0,0 +1,102 @@
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+# 1 "<command-line>"
+# 1 "/opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+
+
+
+
+
+program checkMTRBrake
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short ErrorBrakeMtrGet;
+assign ErrorBrakeMtrGet to "{PREFIX}:PBI-EM:CURRENT_ERR_GET";
+monitor ErrorBrakeMtrGet;
+evflag ErrorBrakeMtrEvent;
+sync ErrorBrakeMtrGet ErrorBrakeMtrEvent;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short ErrorBrakeMtrSet;
+assign ErrorBrakeMtrSet to "{PREFIX}:PBI-EM:CURRENT_ERR_SET";
+monitor ErrorBrakeMtrSet;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+short AbortscanMtrCMD;
+assign AbortscanMtrCMD to "{DEVICE}:MTR-ABORT.PROC";
+monitor AbortscanMtrCMD;
+
+short countErrors=0;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     printf("\nWAIT\n");
+     ErrorBrakeMtrSet=0;
+           pvPut(ErrorBrakeMtrSet);
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(ErrorBrakeMtrEvent)&&(ErrorBrakeMtrGet==1)&&(delay(0.1)))
+       {
+       printf("\nERRROR CURRENT : BRAKE OFF \n");
+       brakeMtrCMD=1;
+       pvPut(brakeMtrCMD);
+       delay(1);
+       ErrorBrakeMtrSet=0;
+       pvPut(ErrorBrakeMtrSet);
+       }state count
+      }
+
+ state count
+        {
+        when(countErrors>3)
+       {
+       printf("\nERRROR CURRENT : STOP MEASURE \n");
+       }state stopMeasure
+
+   when((delay(1.0)) && (statusMTRMov==1))
+       {
+       printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+       countErrors=0;
+       }state waiting
+
+   when((delay(1.0)) && (statusMTRMov==0))
+       {
+       countErrors=countErrors+1;
+       }state waiting
+   }
+
+
+ state stopMeasure
+   {
+   when(delay(1.0)){
+   printf("\n ABORT\n");
+   AbortscanMtrCMD=1;
+   pvPut(AbortscanMtrCMD);
+   countErrors=0;
+   }state waiting
+   }
+
+}
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.o b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE.o
new file mode 100644
index 0000000000000000000000000000000000000000..66aec5b2d7560113d9321a05843e9a9203884340
GIT binary patch
literal 6752
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd
new file mode 100644
index 0000000..d71c5ef
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd
@@ -0,0 +1 @@
+registrar (checkMTRBrakeRegistrar)
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.c b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.c
new file mode 100644
index 0000000..0b2209c
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.c
@@ -0,0 +1,394 @@
+/* Generated with snc from EMU_MTR-HOME_AUTO.i */
+
+/* Program "homeMtrAuto" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short HOMCPTFLAG = 0;
+# line 17 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short statusMTRMov = 0;
+# line 21 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPlaced = 0;
+# line 27 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrStop = 0;
+# line 31 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeCMD = 0;
+# line 35 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPosCons = 0;
+# line 39 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrCMD = 0;
+# line 43 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrGET = 0;
+# line 50 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanPS_Sts = 0;
+# line 55 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanMTR_Sts = 0;
+# line 61 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeSTART = 0;
+# line 68 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short plimSTATUS = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 79 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 80 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 81 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nWAIT\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 87 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 3/*homeSTARTEvent*/) && (homeSTART == 1) && (plimSTATUS == 0))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 89 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nSTART HOME PROCEDURE\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "startHOME" in state set "ss1" ******/
+
+/* Delay function for state "startHOME" in state set "ss1" */
+static void D_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "startHOME" in state set "ss1" */
+static seqBool E_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if ((scanPS_Sts == 0) && (scanMTR_Sts == 0) && (statusMTRMov == 0) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "startHOME" in state set "ss1" */
+static void A_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 97 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\n GO HOME\n");
+# line 98 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 1;
+# line 99 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+# line 100 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 101 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 1;
+# line 102 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 103 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 104 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 105 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "limitON" in state set "ss1" ******/
+
+/* Delay function for state "limitON" in state set "ss1" */
+static void D_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "limitON" in state set "ss1" */
+static seqBool E_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 111 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 4/*plimSTATUSEvent*/) && (plimSTATUS == 1))
+	{
+		*pNextState = 4;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "limitON" in state set "ss1" */
+static void A_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 113 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nLIMIT HIGH\n");
+# line 114 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 115 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "breakON" in state set "ss1" ******/
+
+/* Delay function for state "breakON" in state set "ss1" */
+static void D_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "breakON" in state set "ss1" */
+static seqBool E_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 0;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "breakON" in state set "ss1" */
+static void A_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 123 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nINIT POSITION\n");
+# line 124 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 125 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 126 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 127 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nBRAKE ON\n");
+# line 128 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 129 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+# line 130 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 131 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 132 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 0;
+# line 133 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG", (size_t)&HOMCPTFLAG, "HOMCPTFLAG", "short", 1, 5, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 6, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS", (size_t)&mtrPlaced, "mtrPlaced", "short", 1, 7, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.SPMG", (size_t)&mtrStop, "mtrStop", "short", 1, 8, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD", (size_t)&homeCMD, "homeCMD", "short", 1, 9, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}", (size_t)&mtrPosCons, "mtrPosCons", "short", 1, 10, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 11, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 12, 2, 1, 0, 0},
+	{"{DEVICE}:PS.BUSY", (size_t)&scanPS_Sts, "scanPS_Sts", "short", 1, 13, 0, 1, 0, 0},
+	{"{DEVICE}:MTR.BUSY", (size_t)&scanMTR_Sts, "scanMTR_Sts", "short", 1, 14, 0, 1, 0, 0},
+	{"{DEVICE}:PROC-AUTO-HOME", (size_t)&homeSTART, "homeSTART", "short", 1, 15, 3, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS", (size_t)&plimSTATUS, "plimSTATUS", "short", 1, 16, 4, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x00018008,
+};
+static const seqMask	EM_ss1_0_startHOME[] = {
+	0x00006040,
+};
+static const seqMask	EM_ss1_0_limitON[] = {
+	0x00010010,
+};
+static const seqMask	EM_ss1_0_breakON[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "startHOME",
+	/* action function */   A_ss1_0_startHOME,
+	/* event function */    E_ss1_0_startHOME,
+	/* delay function */    D_ss1_0_startHOME,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_startHOME,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "limitON",
+	/* action function */   A_ss1_0_limitON,
+	/* event function */    E_ss1_0_limitON,
+	/* delay function */    D_ss1_0_limitON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_limitON,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "breakON",
+	/* action function */   A_ss1_0_breakON,
+	/* event function */    E_ss1_0_breakON,
+	/* delay function */    D_ss1_0_breakON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_breakON,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  5,
+	/* number of delays */  1
+	},
+};
+
+/* Program table (global) */
+seqProgram homeMtrAuto = {
+	/* magic number */      2001010,
+	/* program name */      "homeMtrAuto",
+	/* channels */          G_channels,
+	/* num. channels */     12,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  4,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void homeMtrAutoRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&homeMtrAuto);
+}
+epicsExportRegistrar(homeMtrAutoRegistrar);
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.d b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.d
new file mode 100644
index 0000000..8f7967a
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.d
@@ -0,0 +1,14 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seqCom.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/pvType.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsThread.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdThread.h \
+ /opt/epics/modules/seq/2.1.10/3.14.12.5/include/seq_release.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc
new file mode 100644
index 0000000..d75e436
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc
@@ -0,0 +1,48 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/string.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/libio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/_G_config.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/wchar.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stdarg.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdio_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sys_errlist.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/syslimits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix1_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/local_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/linux/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix2_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h seqCom.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdlib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitflags.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitstatus.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap-16.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sigset.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/sysmacros.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/pthreadtypes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/alloca.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.i b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.i
new file mode 100644
index 0000000..79348df
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.i
@@ -0,0 +1,142 @@
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+# 1 "<command-line>"
+# 1 "/opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+
+
+
+
+
+program homeMtrAuto
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short HOMCPTFLAG;
+assign HOMCPTFLAG to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG";
+monitor HOMCPTFLAG;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short mtrPlaced;
+assign mtrPlaced to "{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS";
+monitor mtrPlaced;
+evflag mtrPlacedEvent;
+sync mtrPlaced mtrPlacedEvent;
+
+short mtrStop;
+assign mtrStop to "{PMACPREFIX}:{MOTOR_NAME1}.SPMG";
+monitor mtrStop;
+
+short homeCMD;
+assign homeCMD to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD";
+monitor homeCMD;
+
+short mtrPosCons;
+assign mtrPosCons to "{PMACPREFIX}:{MOTOR_NAME1}";
+monitor mtrPosCons;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+
+short scanPS_Sts;
+assign scanPS_Sts to "{DEVICE}:PS.BUSY";
+monitor scanPS_Sts;
+
+
+short scanMTR_Sts;
+assign scanMTR_Sts to "{DEVICE}:MTR.BUSY";
+monitor scanMTR_Sts;
+
+
+
+short homeSTART;
+assign homeSTART to "{DEVICE}:PROC-AUTO-HOME";
+monitor homeSTART;
+evflag homeSTARTEvent;
+sync homeSTART homeSTARTEvent;
+
+
+short plimSTATUS;
+assign plimSTATUS to "{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS";
+monitor plimSTATUS;
+evflag plimSTATUSEvent;
+sync plimSTATUS plimSTATUSEvent;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     homeSTART=0;
+        pvPut(homeSTART);
+     printf("\nWAIT\n");
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(homeSTARTEvent)&&(homeSTART==1)&&(plimSTATUS==0))
+       {
+       printf("\nSTART HOME PROCEDURE\n");
+       }state startHOME
+      }
+
+
+ state startHOME
+   {
+   when((scanPS_Sts==0) && (scanMTR_Sts==0) && (statusMTRMov==0) && (delay(1.0))){
+   printf("\n GO HOME\n");
+   brakeMtrCMD=1;
+   pvPut(brakeMtrCMD);
+   delay(1);
+   HOMCPTFLAG=1;
+   pvPut(HOMCPTFLAG);
+   delay(1);
+   homeCMD=1;
+   pvPut(homeCMD);
+   }state limitON
+   }
+
+ state limitON
+     {
+   when(efTestAndClear(plimSTATUSEvent)&&(plimSTATUS==1))
+    {
+    printf("\nLIMIT HIGH\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    }state breakON
+     }
+
+ state breakON
+     {
+   when(delay(1.0))
+    {
+    printf("\nINIT POSITION\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    delay(1);
+    printf("\nBRAKE ON\n");
+    homeCMD=1;
+    pvPut(homeCMD);
+    homeSTART=0;
+    pvPut(homeSTART);
+    brakeMtrCMD=0;
+    pvPut(brakeMtrCMD);
+    }state init
+           }
+
+}
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.o b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO.o
new file mode 100644
index 0000000000000000000000000000000000000000..758fd68e93de489bf2f3b4fe122545edc96af3c8
GIT binary patch
literal 7928
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
boU#Wm0@rE`Slqw6f!Crv7lSUczpnfr+>{5!

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd
new file mode 100644
index 0000000..1386530
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd
@@ -0,0 +1 @@
+registrar (homeMtrAutoRegistrar)
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.d b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.d
new file mode 100644
index 0000000..3655c14
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.d
@@ -0,0 +1,15 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.dc b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.dc
new file mode 100644
index 0000000..24f2ef9
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.dc
@@ -0,0 +1,59 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.14.12.5/include/aSubRecord.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsAssert.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTime.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/timex.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryFunction.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsExport.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/math.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_val.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_valf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_vall.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/inf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/nan.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathdef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathcalls.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/string.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdlib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitflags.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitstatus.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap-16.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sigset.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/sysmacros.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/pthreadtypes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/alloca.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdlib-float.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/libio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/_G_config.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/wchar.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stdarg.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdio_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sys_errlist.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.o b/builddir/O.3.14.12.5_eldk56-e500v2/EMU_REPORT_FILE.o
new file mode 100644
index 0000000000000000000000000000000000000000..37fe2400c79153181212dd8aaa5ded12a847a698
GIT binary patch
literal 1784
zcma)7%}Z2K6hChqZ7Qv)BqAY3Xu>ETDiVVlq~oZOW0Q@v33MEvI^=xt-ZMrJ=a~=^
zE(BXwQiux|EnJ4!M(m#mBwE?R+P1LYxpVL9DN!9b_x#T1J@4E*cS^DT9?hqbOB&Sz
zdkns6B8R9|L^M#4Y8bt&KRlQX_}02!Q{~D>3Y2zzYs<)Wt{fhewtv(*jOQG3UOD~+
z_-6wZYms^i_K7kgKjFz=m-(BVzp_Ug?R&JivP$ntUw#(3Ui&I_BUg*e({kx6Y;X6A
ztUFsy0I`A6+I}(OP&>!7eZHQSI<}*A*uQ#Y=kvnsr>2XM6cso(xnpnj?=(LX`5J95
zV4uhc5&B%`J{Pb*dVN3OP)N4xis)dhGZ`Bmj3w?5CSeWFG={T{;jvJ-uPq#J3qNF=
zrH7}cWlC=}+7@c)9T>VEYSklp3!4LAKiJoq7|P_v^Q8GPaow89+Nn`U+bqjTg-l~A
zrQ1f)CVebrr$`^QEYgK_B5$_<=Go4f&3dc!Smn@kKASai$js$!Lq{WxmYqsJAw7|Z
z>alp2o+?a>Cb+Zzr4R!7j#SA6z8&8rX2D;_R0mcVuxb(ukL?VY^Vx^{Mc1TW0m(3g
z#Y^fw-h`2-_pi8Hh~XS>ToAe<Rj(NaZ+{=4H-WjoO6lYNI>4MGjt`JyZh#eW4fZFb
zRQo=L?y2wMdq?e6JUiZp_f@xp^+#Z?%lm<}5iI8!Nn#)Kh?Edanpu|a$}vm@@Ckv$
zBH}Ln)<rE=&w=GPu&TYlGS5hos>jl&jQG?g#B#4^!Te6}w+F!|!Jc}RJm(FtB2`c6
zO1gGG9e!6vmMG@>r0%IN{NA~9JfG(Ua5s1zO>=%dnBzL64p=6{d*&qS@wvDJ|7lkN
zfPU(j&gXYq*?0(`2W3$n3b1iZSFeT`8hmrd{LiKC#{mT>79Wx?(Qwb*{+OPoqtBCR
zOk^zEFo(ydbLrtf`OKLfxa>?m*Eu#uMj?~7l9{a0YuM3g)8uEvwI%bt@noFv#Ejbr
zA**0!a`reCo~Gmmf7`CycjaZG(g84jPc`Zu-@(x+dl5eYWnaWKQuqxfrtmJVr@|-|
cQ1<}mDE`R!d~sI7&SS?p2z(V7Bx3x(03><rU;qFB

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.c b/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.c
new file mode 100644
index 0000000..a707bba
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.c
@@ -0,0 +1 @@
+char epics_emuLibRelease[] = "catane";
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.d b/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.d
new file mode 100644
index 0000000..28b2801
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.d
@@ -0,0 +1 @@
+emu_Versioncatane.o: emu_Versioncatane.c
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.o b/builddir/O.3.14.12.5_eldk56-e500v2/emu_Versioncatane.o
new file mode 100644
index 0000000000000000000000000000000000000000..ab90c900b777038ffb35c1d7bf949d37e1d3c4c4
GIT binary patch
literal 801
zcma)4Jx{|x40S?F3oL+OVkr}?1SeE=;A5kLE`^~Ih^<P(2_i^>dWQrP{FMGhHa2*^
zoI|$OlJlPJcRt6u&&%;u5C&9PKs(^I1kH)Qhz3s4r44E)k&SXqG#U=iI^EIDZLc#>
zC#p}R%tvOU7-(lDJ_)n>-I991QBtunq#g^~hp@~fMV9Ftg1oR=q2-aWQS$8WT=ugE
zA<w<)50n%CpO$~x_qvq@x&zeP@I|`ACHrANZoYcI7II<@Pfme6>#>i|f!m%laE<-K
zBf#0U5Ra^3+k(rT9J6l1#GB|CLrH?(gU{jX@HIHkx9NGUU-*Mu4=yJCBo?gl4f_3-
zBqN$tH6PdJaP``KE|y)nHYhe7@gKzXy>fqk6T80L!a|y)v$yG;o|&}B%lE7j(ywV^
Prl^e5c%ol)WHkK&cF8*`

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp b/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp
new file mode 100644
index 0000000..b8b743c
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp
@@ -0,0 +1,61 @@
+/* THIS IS A GENERATED FILE. DO NOT EDIT! */
+/* Generated from ../../builddir/3.14.12.5/dbd/emu.dbd */
+
+#include <string.h>
+
+#include "epicsStdlib.h"
+#include "iocsh.h"
+#include "registryCommon.h"
+
+extern "C" {
+
+epicsShareExtern void (*pvar_func_checkMTRBrakeRegistrar)(void);
+epicsShareExtern void (*pvar_func_homeMtrAutoRegistrar)(void);
+epicsShareExtern void (*pvar_func_register_func_FACTOR_CONVERSION)(void);
+epicsShareExtern void (*pvar_func_register_func_ANGLE_CALCUL)(void);
+epicsShareExtern void (*pvar_func_register_func_CREATE_TAB)(void);
+epicsShareExtern void (*pvar_func_register_func_INIT_TAB)(void);
+epicsShareExtern void (*pvar_func_register_func_CREATE_PROJXY)(void);
+epicsShareExtern void (*pvar_func_register_func_CREATE_REPORT)(void);
+
+int emu_registerRecordDeviceDriver(DBBASE *pbase)
+{
+    if (!pbase) {
+        printf("pdbbase is NULL; you must load a DBD file first.\n");
+        return -1;
+    }
+
+    (*pvar_func_checkMTRBrakeRegistrar)();
+    (*pvar_func_homeMtrAutoRegistrar)();
+    (*pvar_func_register_func_FACTOR_CONVERSION)();
+    (*pvar_func_register_func_ANGLE_CALCUL)();
+    (*pvar_func_register_func_CREATE_TAB)();
+    (*pvar_func_register_func_INIT_TAB)();
+    (*pvar_func_register_func_CREATE_PROJXY)();
+    (*pvar_func_register_func_CREATE_REPORT)();
+    return 0;
+}
+
+/* registerRecordDeviceDriver */
+static const iocshArg registerRecordDeviceDriverArg0 =
+                                            {"pdbbase",iocshArgPdbbase};
+static const iocshArg *registerRecordDeviceDriverArgs[1] =
+                                            {&registerRecordDeviceDriverArg0};
+static const iocshFuncDef registerRecordDeviceDriverFuncDef =
+                {"emu_registerRecordDeviceDriver",1,registerRecordDeviceDriverArgs};
+static void registerRecordDeviceDriverCallFunc(const iocshArgBuf *)
+{
+    emu_registerRecordDeviceDriver(*iocshPpdbbase);
+}
+
+} // extern "C"
+/*
+ * Register commands on application startup
+ */
+static int Registration() {
+    iocshRegister(&registerRecordDeviceDriverFuncDef,
+        registerRecordDeviceDriverCallFunc);
+    return 0;
+}
+
+static int done = Registration();
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.d b/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.d
new file mode 100644
index 0000000..52cdf69
--- /dev/null
+++ b/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.d
@@ -0,0 +1,18 @@
+emu_registerRecordDeviceDriver.o: emu_registerRecordDeviceDriver.cpp \
+ /opt/epics/bases/base-3.14.12.5/include/epicsStdlib.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/os/Linux/osdStrtod.h \
+ /opt/epics/bases/base-3.14.12.5/include/iocsh.h \
+ /opt/epics/bases/base-3.14.12.5/include/shareLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryCommon.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbStaticLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbFldTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbBase.h \
+ /opt/epics/bases/base-3.14.12.5/include/epicsTypes.h \
+ /opt/epics/bases/base-3.14.12.5/include/ellLib.h \
+ /opt/epics/bases/base-3.14.12.5/include/dbDefs.h \
+ /opt/epics/bases/base-3.14.12.5/include/link.h \
+ /opt/epics/bases/base-3.14.12.5/include/errMdef.h \
+ /opt/epics/bases/base-3.14.12.5/include/cantProceed.h \
+ /opt/epics/bases/base-3.14.12.5/include/registryRecordType.h \
+ /opt/epics/bases/base-3.14.12.5/include/recSup.h
diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.o b/builddir/O.3.14.12.5_eldk56-e500v2/emu_registerRecordDeviceDriver.o
new file mode 100644
index 0000000000000000000000000000000000000000..d7dcf9fccc2736a946b23a4f9c9258d6d4ef63a6
GIT binary patch
literal 3384
zcmbVOOK%fb6h3xL;(!xE8%hc(ok&&{Bsv6$s`Q~MW5;<=V_U9MwY1V?;!F|?J7dj^
z5mb~IvFVbkNZp_msa4kf2_T`0B?}f^Rb6y}sxD~Nz5AUz_l|}Up;3=?=AOrQzkBX$
zX0{8(`9v~7p(JP&b|ldEgs4k2EfAA5Mn~DYGtql?J)PXmeNP9@+#>q+0j0MeC3kP5
zfA?hX+4lXvM~xl2d-KC?>gFk;uTJ&tmb$44`01FRiTNWje>CQg#r*M@uSNZt6;zL!
zZlS)J2^zVc<~m60-ssXI<~g&{>wVPg{T83oi{`^Ts6WeG%){e!8$`?tuKz93wS3{Y
zH@cJEo$hI_SJp7~?kth2<C~?R2A)@>h{zsNAIIBktE-l0YYk5;Ef<ULYuB8P*6Mh^
z)^w~j&C=#_bJ}{NY2)E~zRrE@R>yShjfUsjZq=?k?%JGvrBS!%+{P8#4LOMx^7;3)
z$%WGLDQ#Mx(a&+`G&BWG8kOb7*1AK96a`g{a60j2l~UJ@#EFauP9ikMamZsbhDVG+
zgYrAc+!14Y<KVBuWb_-xp&*|{GZ&aNtFXBMJKt~QffmBJro<IvxC{M8F2L#DwU%$K
zlJ5C#&~7TrwVRgi+gE+k*DT*6ebw_w7tsyJKPOEFptI%rowf|seaBTu?#X?0*U_6!
z-D*lq7*|0@L@@SQeVX*T(`wmU7<tR_Z5>PdHioEQCcRS0>xGLs-D-ElvIh0oo94P}
zwQM=veKi_Ty!ibRja!~jd%z*yJ(d$tWy3u54<1v{*Pz^=a~bGc(ii6qsUrNS1iMdk
z8bLlCQCx&S9P1rmxK9)pyonHmD893>BmFa3_;;aP-vOE9`V1)dk@HP-VOO9^6vqb$
zC>v(xJ|4U-%r^k#9P`zn(fS_C92y~tqYO{kFf+gK1Im1ZP{p?bJIeP2{wP$5;`kf^
zWy8$;jz<>Ce0)VX$NX2JQNE`#heinR0gDHX@C|WX)i)$_?0*eqK5@Na{t5dFs1oMj
z{CBeDGXhC2;_-?wg9l?+@5vSoOY&0ChEK+@`~>B7mm+Y{bE<GZ1Hg7N049C3w*y-|
z)f^wdQ#Q;YUgIp3*Y8y*=XkzHpz`d&qCSrE9xGAfM#kjSz#Wt@0^=Bzzn9#PectN`
z-{6nHRS;96_>`~OFrK2`Un<Bg$ikfTBm5%IV~2ty--j%e&)_T;D&C*hc>&7(ipWRS
zUGVW7LIEG2w`(%MZ*unUNk0Xj&(A|BuV-53Wm@oYJ{0gBhVxVgxPQEU-jh&(=lu!=
zKCg2q@cG<@YZfFE;aQaaS=B-Me7}T9zbjoyp7<f=^ZbNJ{2$Nz;w<ny9%EokDS0NA
zpN{#t=lqv{g!Ov6O?!W%^H#Gt-`T2@xlk<UjG}3JomF$m+y|+7sd)bU-ptH8XRi~(
zruK#z?uNGy%oJm$*PJbz+E*;sTnD>Z-?ZzOFV?C#*Sc(1#eaxvxe>so)3Pu6uF>(G
z7o}BI0o%Nhua&E2zFhjGQ2ltRT#67qk2FdP#e$hPiuvW@o}hfSVAKj`&B*NuSt>2n
zUJ8&Lm1_CIr=RUfBT>~trChE3*FRai<9pO_>fUBW{_zD~us;0LCgi|zqU~oe9}%5Y
z_u&a%4>F#>JMj$_2kbD;tq`2!qsmU>m8opp?_<iwH5gMicwSdF-r2{MJ&xZBWoty^
z%FYtKsq9IjgUUXQd&4%rx2Et~P;t1bX8y0xA~g>%hVLCj)X(<}H4m%4s9D5o0uqdc
V7@@W#)<N`Lls1ps#_LeT{{{0;{;mK3

literal 0
HcmV?d00001

diff --git a/builddir/O.3.14.12.5_eldk56-e500v2/libemu.so b/builddir/O.3.14.12.5_eldk56-e500v2/libemu.so
new file mode 100755
index 0000000000000000000000000000000000000000..a3dee129989aeb00e9e12b416081c5f5f5bf7958
GIT binary patch
literal 26344
zcmeHw4|J2)mFN2;*%q#w%C(y~fg~~*V)I8fwjr`%8p)Du+1Q}kazZ<4Wn&BM;(w83
zDjEsPF?3A+Y$4DN?GOgqghD5~O-`8|rlr*Euo;tWcj!zyWfC?^PH5w_*%La4nbIwT
z_IKYO>65Vy>Fl1<b2cye{Qd5G_uY5jefQn>zR#Z@BcA4Z&7iSVGO|KoWE330y_&Ig
z6TGaNSy?tKWsBKDQO<Maj~WwWbg?X|iG-gH{FE2VexEV35BWK=+`yQ}%`|y2b_Hd0
zW#b|_bY0b5CBSs?vhK*wA<N#JzId6w{8QkaDUo~&E|Nq2G&ZbnXTKT#&3Bdze!2Qw
z;vb*6a_aKe-oE}1RGyEk2p8cTb0Kqlw17P^FZ(~3cU~%dLYCc)`+QvY;<Dl@#zpp7
zgo_gCL}{_O@t;fZ^8s9?|I*nw|Bm<n;g{b%Jay!mBTrts<JZspb%6cs)dd?LyD<1@
z?aJ7*Z-2kX`{R{8J9dBSy`OqqId^^a3%_{rJHPw#_uGEsd9(YC+@Ce&=;Z2P0c?ZL
zF*c7e!(XZb>Np1FKWEZxx1v8TfEYnwtDrl@P0`wbqJ=!RK+#qXv~!A<<#t7ja>E8i
zOMM=mMt@7uLLb8#MN9stGHJu#WYTOnlQsktE#zrlMN9o!6-@&N`&?ACC^z&dTGoG2
z(Ndodrq!=So*fSJ3Eb~wtctUM|04kZi1PEen^1li?tcmTM>-l}#CU<9#_Ow$t?Wbj
zdC<8SMHl!nf4Jkq9}NpYUjixR88<M^>yzd1N9}!-Qy)}&zXknTnl`T0$s>Kf40<wM
zZm@ukfR_C+`~>tA=p3QHb|2^qI{qQhms4~gu%&-+AP|mph9ZFg3-k{3Mp$4oZY<E~
zZwYh<L%}V*;Ycv#Z*lbv4g~$3oBD#HZ03?cSG1D^boTXr5sXdS0<BVltFJR04u+Yi
z7usGwJkS;C9UO3WceC(gp~z-7w5>A~*o^Fek}W7#tH<g01bnR<nl^rVR<6eNjsAe&
zSvM<#6f+l#bA3azC*X26yV{#)l~eC@`8Tu%TpQLu>}hRl+_0X7gO9;feVyAI$$lw{
zb@c?hwzl|N>q4DdgOsmq(H4AcI5^N147mpT`#T4^!!s88LW5gEo&9WRIKmkML)(1A
zLVj?wKNyZU2fAH-!OjqGa%h`ta9|+V6>$v?4+t(~^>iYyPh_R-o1vIcDg-e-gZ;sl
zNXR)H8PxS&mz!n{4)u10{k{FchG4`s90~=|WGc@;*wEr{Vc|$<a|A3bJQV63xb*<H
zdVCvN{Vdo&oN|EHVAo)%+a282+ZA+&dbb5btaq?0+~XVS-n6MR92Ar?tI!|-0nNRe
zT7xhRIQn`w4MloF!Om`5c+gfsbSOe_CBg1Kf|Ufrk?yW#%ZOY}WPb{6>FNrEQ#HCo
zejwQ08R=w!z@~6mOdu8r4s^4I=Egc#pwd>ILMv@mDO`c6ClglHX$eb!OoV79%fhAI
z@;~B14Pzy^5udR3_4d+wiP}a#<<0B8Ka4vh8b3!g%88Had>(hv1~c9RMEOjXLqk>W
zAZ-vU3l3tRK<g}UbssRTCwJmr$}f?R7~@zjcpgCfa!{wiUm69j7I;wwutVUg^S~76
zNha|$3%n!&>=XEbNnq*=cot3pcL-cX`4sc1F7Z<=243t19um034jd79VGnRZ;HnAW
zae=GHfu9z5@pa%m0xyaH?-zKX75K2gRVRUu30%D&_(hI2uMPMmnSTQKgv6xhd5NjN
zuSxzTz!aZJ|0}?>77!->YXYxgz}F@Ja;7-}iDwn`amsNaey3IDR|A)Dta+CLm&$xU
z@N$7UzgOmWAir7iV_cj*nV$gm>-dLc{?o{hNd8jbsLX#JIHu!2ATj*Jc~I~>j{z&Y
z4FL<gF`F4!+O7O7@Ci}347PGk2)yb7@T9=xC(a)UycG6#O555ncFxyCei_-}lEAA-
z&XmBbDgQlzS2P1(5qKHd_Nu^T<4mgq<aV9}HVeGk0h}lB@(Eyzz_v$$3k5ENztvd<
zUPU~m0<ZQ0FBf>(Yrqu(FD(SF7PyS$I|N<@AFJ~UyxIrc%(3Pr`97HsJJk6FrZKG>
zk{JE1i%9;}z;cYp$Le%rR42!1^-ko=G4hh0hlQNg$AF)gGD-e~%s&BqmSfFZ4?HRJ
zsb4=5nCmko^DiR*J;`4Sd`09x$bhe=`CS&7Z)TdSQ1av1!&M~nOMn;X`0WC(sz&}=
z$^S`Uhs^f_y9FkFTpcpM1Gt-G&07cDBl8o$eFAg-ae*JKK>pK`zY=(l%qQLU>-b-i
z`4}(P3CT~oos{|Az^8Ql7i9hr@-IsMwZNBT{y6Yufk_|g3i;%N`+-dyYhL(_+br|p
zGwwWrIe)3ZcG%5bA^7WG0<M<%(BCcXR(}H6A$bTl3+!D0?3elQJ@-bLZv}o-V21^`
zL*hK(Zix$lr9G=i&mo@As=UAviD4^uRN@NYn8X`_6B2g-@07S2SdL3o53m>)b|=Y~
z<5Cp^-Y@v?B0Uetx=#Zi6!`8(fe*|41HjJ<JbwcCn9P43_(g&5qrS`Wts;Cv@>~Eu
zDe)!X363={+5D``p8}o~xY`W-BZ(1n+~*~xe!V8KANYd6RV4qSz^g6-U*=fz!Vle3
zGXE;@djhXE0bh}r#^tKSG>+E<t|s}{1%B`>p6vn2uPV@Yk4fgg25goX`g`&uz5-m$
zvF0uXwu}5q2k=^v?`;Nl2<$+A>je+pwR(}ys$u_nx8ykn+$?bs@J5bVHGHGKTi}J1
z9~F2t+O3ZXe#A(vey70B1HgL(53hSr;4=6X{GR$qzOU8GvAFjdupEnfPXeD8{P#wI
z<yhQn2fiTk7ZCqNffo_JB=FMrfG-PNkw6>hmstbNfW3G$RM>}C84CB{6^g>A@cKgG
zOW40i?6KfAg~El5-LG&FUP~yv0DB^Zt&H8Ha0y;_C|ruy8wxMSUQFQ%JfljC`OmV@
z29nlb$KH>gj|n@lbyOIA$x;}7$x(PCUaKhFfk$J7(Z`P{Jj7U@!cpup6;3dAhr;8G
zeN5p!*p4cE0IzryKFrw16+VVNslqS8whEub<GsQY7<Ppx@mSCC{^I17nAvc2kH!l3
zonhv>KWAAZlZK-Yy~(sSZ&p2;xG#CF9GW>#GqYE#`iYkrTD<K3tOWRDX5-N@)Ug*c
z%lZVfGVSGVC6DBgJd#DSA?M1-#6K4%b|gv@hZ4&n>&GNx^plB-8V6$}hve;T#6x^a
z-b?OV$wPexnWmaDW{fZL`j+ix+0N%!5y@7%kzCRbyykMeIdYy(UZ(PRSz3R=V?rOk
zbN*IsQhU@cwHGhDb0}VN$53pi_7%qyv$mUe8|`jHyO(Gzr0t5N?MldY`#M?PzENf&
z8}2)TzU@d@_Pxax?8ciWlI=LehM-d+Z|4xR02d{C8S`qDyT)!L7K|NAl#HEDSVtdX
zY~<9GZ{!De4z2k?GC8t)%HcT3N?|{(eW|5(FUsR<eKxYq`h=;N^Ml8EFnMWR^2Trt
zEc7+B3Hz0dL8me3#QlJDI>U;_pcBT=O7>QE<l_%})3~a!VA_A`QRQ>_%IG4|Kj$G<
zggz~o{mWDO(KzbI89JtXW|nqIuaup^Q&MoIpqOk;b{;jFnnxFzyrV9YkNYcT;%FKA
z`!^=XXcK1Q?u8SHw@vQR&6tU~trKL2#J7Omz&8>szvDCS=bM`*sGpX@OW(Krtx?N&
zw7zfoRppdrcip7rouyNWHxuUkhSn+YoARwq?<c;Qb0VMBy>EHNs9D~@m00+Gep&5Q
z;_aN1mYuEd=Fh8}%J;UuYk6hiyO8yFmWj&0+l!@Y&);IMbYSM6DbSS7nf4zY=-+we
zN9bR5!I?$r{*9T((MJdR*G&CGUw!3IL&lN$#RYFID=ru<C{CEs=Pr{w@lBI=?3b9E
z$I<_{b51y((<*8nVCEVRu8&~8?%rszBR0f#78l0Nc1sO|@0gvKSEUyC35%CC7RFw+
zTkI3yd1Yl`Y}^%%FRh9eFK5{(v&3_K_IMdPA20RQIG@l8W5?G-<Gt&mk1b_6jwduz
z`|fKypuag@x^6q}dGUG1qoemFEb&Ie(e}0GwU%+ChBmdh*>}it<|7(!6Fm7JS;z7{
zxV){S`AwDM`ArMQ^BdM#;p65ymb^Uj^d-k5yDhcwsgBrx^V$lMzdRH7cx{lKmtWs{
zCV}Xf-(;Ay+;5mf{mFPkqixg+n=HyXN%pp|*2z8d_#CK)y)+tY*iVC<HQ12GqJsRN
z<dRHPk7SU{+pSM^Yqln@+h4%-PV#zuxA7?Hwrd?T?OKd?rAwR6<d;FmvdYP?Jituo
z+Z1n8uj>bBk7<8lnsaWrOn&%&GyI3o4Vn)$R}z1MIr=2i5>xP_x8@gPuDJP}`KIaY
zs4?dR>^#L|)N|Toytnvgj!`yV<Hfph6h4$&VX?z+VhrQ|g2Q4z4E#b_VevYQchjdV
zv8-j$coTfYQA$2?ES_5xeayrC<6!&euk9fIc%W^2yTiP;#sObwx^^hu2p_0lhVfr!
zwZFi}{OZV43@=XjnCHdonJw<sY?uR%_A*OtId)C<ov2&dROo-lQd`rMydHzC@w8sJ
zE0>w}Vyxq3wS}<nRhsW=&Y`b-?A6>W--S5*96Mm2!u(i*wQt<(7|FIfVwWDiuXr)L
zgZsSWk^5r5Y>RTgx02tpJ@I+yQwjBn?erhNwqx{jiNg2;>$cZ)FfI13@#x6AhNJmS
zMlHVe+M)Ib%xmMl#-rrx`QCNb{Q8t%Ume+HcaZ+DH?6Bhqm9tpTVspY*VssJ*eB(~
z<g>KaQtY69s6J4=8Z-Ru71-c7=35zKUnym#uPovIb!}ZTdD40M#^hXfpt?0)_$&0>
zd6b#<e_PePv4?5L4$tjlh);`hPEc%uPmw(@w3q(o#<C|__DHV75u1GYb8&B56l?qi
z#L=Q<<4m)^%S?$^5D(9B{$}JEfKA9ZqyAdZM$l%^d7zhrHi6CqZ2`RibQWj}=t9tW
zz=gm?BTqUUu;s?sF`v(W^x6*pS@R!Zyw=kAw3{up@v^$Y*g1>^qj+J|+Ov!7`HfZ9
z8Z(~e;VXW`n2}vpN9>)ZLdfB3GTC$Q17iJDenhrc>tgwr@LNg9!}v#?hmzy5$*L%9
zUc|I--Fm&mT8O>L0_?A>YCi?p7O%Fn2lY!~_bX~$m~n3=>X)E?>9qQ#OglPtoAsBY
zenn>evMJO*cANF9QQtnT{xQ_Q-TtpdeaE!==>JjbKh|ZjzltZ=609k1?5QeX3p=g<
zwB{q8HPb#|48FI|$x35ioFB!0tD5|A#X-iN#UAHb>~Z#K%(}0bmF(+e%drnzyLS|}
z?=m?O-@}@D9DewW(K>b`;eKS?Qk(d?$xUmZ4Zm?68)2;WGBd??FN*H?)%T;L_)VW<
zFMJJiE%7eJnYzOKrrHVeANwmzD|ozhV&qGg7|m(&jd)4mP|a3mf=^7=lqRo_VZRo8
zp{WqDg2hfQi;`T(^Cm7}pGWf-@|9f6FKV%#aoJZOLo29(?58fVHATtmkiWbfzom?q
z{P0liZ<xusH#tFdiBItmzvEEyVnNO8=SFLDPV9p(JN6oS#_nhAk%Xl-_SB*%_0#c;
zVL{?;)LoanF7}VcqZCK;bLy~G)$zW?w;Bq0|B9N>zbO{$G897gWI+*^eKIiu`_Cg;
z%=gHbFxNJh`b6Kf=Mz6q_s#Oot7k0l)J~3qH(pj*$lGY*ZCs&s)6#`L?%L=;d^bV<
zgr)2Cb6)KM4f>zLSUF<b=0|CK_ViL;ARFyI@~4(s(GRVH+NyD<`(b(Kzwq{^_b0aV
zd%QoEF4><KzDNC$?Je1h_9oDdgXE5W5qm563ALGk?a;@G(Z#}EiOcBQZmeJPUOhv$
z6YbSaPH!*1Rkp`ud(=Mqi#AUbbi95p|BqjvM4M+V+wPg%hjw6xGhS`UJj8AHD16n@
zWjKrSNs2p9z^9*pPsc|!E9n$Zj9SOw-xQz5;NxSM2V?Ma?DZ?gFc&bl?AYh8MQm}<
zK8N&#KSsp;#&z-=(nZ;w#=vpth8uhHos!4Q=LX_qO<D3f%?t8j=yPIh1UA8VjBI}+
zN`6K@=G^;lhsnp*CI9U*)i3CM{oF{`8&R*exQ6UXI-`C04El|6eVn2F>1?qMYhCKO
zGjUuzcP6lIK(3c*-=KYT>N$brsOJR44gO3v>SX3oJOfc|pnVU?i;c{W(z-j^%S>?(
z*7?nU9Ni1Pz2Ng|CBLS1GjRlagSUSdO`O3Rl)ya18qD{QavcWWB-4&ee1LwKFed!@
zIkO)nkbWfk0p!eLj}p7G1-IuBJp2ETswh2w#(uagO7?(_i@e&Re<~ltcpbtop^%3?
zinjNU;MZ2Hc^EhN6YnQ{=%!~y;^+P*%g7%3XGx|Veo5btnZ^|D*FX-ffo5e7vHmUE
zi26gS4>LYrQ%t94*^5<C8c+U=eIt<<`@ym(Vtn3l=#M?Dk@gelkCFPacZuv9<}T?!
z2EMtThsk!a$LGUu7rrd*WPw}*<Z7^42l+Jl1IqVOIoZQ`I(ba;FvscSL28HFbuDk(
zK=w`9RklBqefNT&>kNL(6}<QS^A5c|v3J#GvMKcHMwtP3JMC|ApYh!a^dh@kGVNY`
z9&;j($|(N`<^_#wO%u~z2Bxv0_<?$bUaj~A;v@bV2jY(OXFVU&4!wA*F@!&Er*Wk5
zqj7Y6gH^=hi19lT@XuoB*dfTbVom$zugKO}_QQ<5yq4yC@$h%A%W*_~vLW}uY40?k
z1MMSHae@3k<2?=4`+?K}K1DiU&sc)Km5^`DCYRy{bX?%otk02-q!;N49gP$#pkp@5
zenJ>|c&}saCz;<pC1MH5M!tdMQ(f4vNI!?bzn^K(_06ffn9tjl?Vz`n>kXOH<<YoF
zyIQ^4{qM?gE+M-TFX{4K?7z7#%9fCiF$cfZ%(R1-^tynb{4dj%@aNbYh%@M0?9{T<
zyyS5QV~TcHuDOJHDPj)yo#SOJSI(#9q&wMb>=yG<`T}fv|J_{HY3!}6%&>P2){g6p
zp$!dl=7iE0x-u0j$W}Z?knJ#rJQkuo>Wf#q?;Od)ySe3<d$$!MNMF<&r8pt+k4OHj
zh{pojPf(xK{HK1=81IQ=ylMP9m^Rbgr?FBO)Bfyf^dt2g!25!^CVjXt^`2Jab1^j!
zGuM^-N+HMn@0W8gEc^BA{}<#O$QT<MlNr~iduybxR7g8A6+dZx;`0S{$$#~05Ao9Y
zDckDj71<Sip!G3jQ;L(b#L~H9XKD=>Yt{nH*RRnWNy(i_rdM0wfqpZrc?-Hx|FE*l
zY-=8Tn^BCS`Fk8OnLl$MVpd=Sl}Xxyd1b=9qWI5a0-smXPGk?7*JKOwr#(lQdCwVo
z?wo%v0ZcYefW}%z^U6r;=Dwe&=M~cqT$@u*8qeQ9rjj0wDyEWtq&wm!;_3WRMFZa}
z)}i_L%D8Jn%;oV*%)|NZ;LW9YhPt^j&q=-kI*;3f=3s(l&mM#4ThQ0MIs5wi#bCsm
zdxA5>V1^i+J#!4cXD8GCG)lhOe44+jpKVQ>;_()-jbh%K1lCTuKN9QJ-Tw=}SK#Xv
z^_|-m?@*x6V!~u!uXgtt(t+@IpA$SN&(f72;dXp3V=XhyZpXVPnfBFFvE$3OH-97j
zdj|4xw2?b)o=kE7{#+vO<)thax;!K2ixu;n@0rDXySoH3Gxms(WrD2CHECLGA=zH7
z=s5W}#R$v~wGQ1O*C9S%W{VxvZ}^*u;t<6h9?wTatl{xou9+gveC52}cc7o~Huak)
z<6a;62<eIWolEa*)qI{!Kg@gT2kkvCN?rM$^H#bN?_4oc^@Duk_SVw7;?#!^zLws#
zD!rE8HTv&eOPRKxd}Pj;Ed7h&J=C<Aekazu{S~P1Q}3ZLe#hk6dxHO-?=AM?nzz_E
z_7%_5{2>2YbA-9Q+MUnXN7<f{pCb=@EYQKk>4X`)=8>a(FS~~Lk-uxSm_5CA!Zjc5
z=XJdD=2+}p#hvy}Hbiy(uS8Bazq0ZP@Wr9$35@&me4L<%T-RR2e0WLt+rIt!zLNc+
z?@fCJ_|QT4m5JVMs^80jHczATrqPyZbm26*Xd1m>8g13n)CaOV&1ss?)EDXlVie-f
zCmQV?$t3o0u>Z3Y`aaFnACd$8OH_QIb`rhfdBv+0UWAO7=8}PU$=?a!9S7U>Q1W{D
z?qm`+DpIyldDzcgQ95J4!S`~cJL#?DV?S9)Jo-NA%SeBUd*nmwl5d?MUOtY}4kXL{
zzZv@>=9x+l`8Kuu{jZN-f9Sl(aahEi_!KYk-~5F);+y`{a8%QMP0muEo~QHW$Ld19
z?x$>#{#GEJ9=am%Lx24>N?*_Qw6?ZxXtlc9TU$Nr{nlD*n}37P+TwAxwYPe#?B;Sb
zSJ&)mv9@h!e%Rx-LR_xZSw~+}-^^Rr>RjisZm6#(HkSK{v(b-x#wX#R!{L>T|2Y8g
z7dm?*y#rfV7yq&xWs$+57JOVi9160>eXXAQ#*Oh>UtQx0PfM-TIe;z%8a#gH355nj
z`~!G=S&omzA&!N6215iM_q8}(s{Z3G8|bt8_0AU0%DAm%!^8NlKGGQ(4&wv*mceaQ
zZ?3l5rnl85+L~Sm-|Vm876?!c#x~Kn`B2T(;=W0KnwNT#<|XQJx98zTmnU8e^;U3G
z+b{?&=G=t7g}XWjq)gH~l{6;Dzr(@vH2RIRNV#o(XRF`p-O%E(k|2*8Lye+baxSZH
zLtCSt{?vfw%HacKxy_9&DD*Zqcro4$8+dKx>%Q108-^kz75RO={k;(g*@Um*x8gp#
z{a2ud%jd6eb~d1%o|vPKb7Ny$o4<{*{z%Bz*Vz^9M%~%@ZEe1m2I6glJI%qzb;0O}
zeu;6K&2L28gJJwB1ipArjgha-R@dJ4X^3DnG`_Y#8~&ssU5+tS41DPPt(+lU9|N+&
z+3w#!x_G#K`EbqIzZE{udUrD!WC(@_zrP)}k#R%*tpmRF+P-3O|BA)k*2Ui1#Vxgq
z!NL}YZHxPc8IynHVC@ZC*S9w}ud!|)9Jclkha=X$!Om`Lr`28Owr=k23*tv89I;XV
zZt>R>N+#3h8`pr{ip!WxzTw0D>16V^MB8z{iaQM-_gC$Ut@y=_Q=6ZsA&ZsbDoQ4=
zUBdl5bKYTb&T}%?Awylhb7V{In|Cm0w$n*}Oodc}%ME$sxH}YYo#3s{cDlgL6Y=#W
zldqq`y?Gj6Q?|2C@d@q^e|~6z4=wPa1wOREhZgw%$O1_u)m=SSdAOT!8Fcg?3Z#vL
z5f|P0CSn%FsEqnR=~jGMg6)=k*|*7;13t3dt=d(4_L=xdr<wAl3V*OS()s^|JxT6d
z_Mo!4?5PY!eDfr6D|zbK`c`~$i+W4_^3d+>_{B$WQ$M-oy=A)}gFH27r0AP&)JNK*
z)0~;!Up-B7K1{*_u#4g6fOP*Cap&d%Z6u$d`#thb&m~0D-&Vs9_}LE_=PEXsyn(t}
z5%Mu_O!WMOIHOJA4*xUK>kX1cV`IeM23^6OeCRT+LR=JUaGt}*djvK|amPH!eGPZ=
z^Sr@i@&>YsaHp7Wz#TGj&f@-C&}VUduyo&eNLOK|m`M7OZkZ{w9?b<xut_SB@7-K4
zRm>RP#TDc4!Q8s6Ibj$6vVI`Q8eFbgYbg$WDYI7F?D!*nB#ISeQ-jmj-aD{)kTD0-
zGz}MY(o8A6O1QOCO9>yh3K};g8Z(sy-#O|6rGlOKfxc8N5O>Ps>Ay;OseapR<>Bq&
z?%+_kd}#0s!O&2bx>r?}cZDLowl-EyFJj6Edbi@}i>|)TU^qNDP(C;mDG&B_Z!O<6
z+}qb(URklSdd13>D^}L5uvb;D-ej*_(Yv{8W#!6>@<{(s`4<L5Tg!)rx`L}JDz;Uw
z=<6LAj;`1;FdQBVmIt@sn1ZhIN*n5iDkQmr$Z}rL6&_}=p4HiAt+Z8E(`#bJL`Obu
zBK#OG>#aI6@Q2tDEuUGk+p~@4`R2vu0>0?pl!MOo^HHlcX}`PUqvR&kX<XV|ea5R$
zF?z(zvM?zMnvI{-ijm5T7viUZdm9y0G2?4YLsqfDz&(&{{(T!HE2kUWX)F_B(@iZf
zR_L-wHOA6=K=SW`nDFnalz;2W;n#FV6!~=(=7C5~+&%_p;w|Tx49phZ-XH1QgnJ|;
z?mY?(3`T-B@Y=ZBuITM%oa*Te_b^-c_5sus_ee;T;H-`?j(5o*0w@dNpcJYg(NJH6
z+4zfQTO=3-=BLltLWBHx4O_4$uo-8d1Oq+YsH-Su>xvA9!e~(3KHr5xszB0F7mW@^
zD!D$L{k>hHjAx>2LNJc)fD|0RLMNBld_I@W(^6;a92(|P#nv6%G`uCy8R{I^f-`F*
znNhR}Z&A0Y63ok>!m17#t1}V_^==xDK*k44^TDq6qgR3HD$$8h0n3K<;9rpsZ=|(|
zuSdr~tM#7v=(6LY^@#W;#AVn6n#z#J?-W-ZxTr4jXicNb7y+#k_fZgDwJy<`Brev9
zeAO<=q^li#SjPyPp&wnW1DC#Cko;Yv%%ioCu6b9GujEk~tvv&{Bp<DveEqyE`AD|n
zLw)YmSm*fM!2G~_#dIP*N;_~-pNQ{(xbBDCR8o99kt6wN4dLrZMT$$bOXQQdh!6dx
zc}7<jttBea`bFtkT#`?njW*->9@g;<VHk0-{kT+8`h6Q2BoBKH2X1t6d(oYe;(Hlb
z@xh)BvZ>NZ&v#PCR|q~_DH(dcAL#gCe+Mp82{Fi|+I<zYY}dUOuY_@F`gW;|(s^98
zH$gvWzrgnlS3oN{bf<d%giFe!zb)r~UmioAN=o+sL<aHUEIa!9X1X%=DkP7t%ea)h
zN$}y~=f2^_6Y)@@c}%iN9`vHKzO?03Ad}+z6=>o^KX85m=VR5133tUueWP|OL>WIj
zEMH*$lgj9#Js-sbnHuO`qA1*nhi<v_gG2tKp%gb?n&vuz)b6Gq>HLN$Nb*UQl)S~r
z(D5~r{F&ON38Cks-$lHEOC=@mA!O+Ink=9liV1hJ8Isn5xIue!nVP5%#H*5$LAFvc
z0<ftAbw8_^a94bE$DCB@Q{xDShe1(a_Ti%OAo;ZS*2()U>^E-$c`7M+iq_w+5`oH+
zhsR=~WxEu2dAXENv6a)*Hd4-6`iVl?&LHtvNwnOn^JfI2r62IvN3^sV-{TT3pOYz`
zad|XmNIYgyIjsXkSI|$;6a$bb4slvO$MRT1<>Gl&b5JqS^jwNw^4LMN7#EGl2%?4m
zigTif{<z?$InV1C2wFT3puAAfd=3-;CnQaCm1vwxfh5jsAezp>Bl-&6KqKZL@p;B+
z^6gYYIX%mz5@=dmQwcQYXF7qtH%)PQ_f4bkpGI4!(Z!%seqv(DUxUtLnuD{Ufb4e<
zXl{4VWIudYD(nZE?6(SQ(R)+@&O_tZ1T%H$=+Daj(w3I`+Xvc;JMHU<{v!A<;I8WL
zfmx5~=)V9xsiXf2X13~Rh!IKZkMGVL+|N)z`u`MPX>$h9<R5QO)Bk<ODt8it&|ia3
zS6<f9R>G8oe9eV&2S|tH-;Dkr1l=s@1B}iZfgRBv{7L&E#{VVI)L;0EhW2r;2j+q(
zHy}Ra43d;R3}j=TM0*B|>75Q_Tom#R6>uvnw6#kbU!~!E7-r~@v=?qOfp)4T{VBN3
zHPl}#>BrzUb{+jR=%|i<0rW{7eTp%hC&P@FWc^oBeoa^Y3t*n4zQ4m6A4SN(CY`@u
zKnz%D1?`qJe0pII=$NF-Ku_t)F<6Vx#}t1(=m_Y9<o^t4UHeA#rv&<Gd9r+jpQ*;!
zOOk#D^mSeRBaAIcfIcb9U&ive7WBBJPlKKWt?K`GxO`N{kF^44s)_N!yf9t?J)xtM
zps7BMH_A;IPn;W<rg6?C?LC-9jK66a=u*%LN!vjm1ARr(F8GHHG#=(?zL@-=m+0tD
z(93mn2=r1Ny#qAaQ`N^8g<fh;(O(B$qN9%j^OPP>oJoU*rF}47IIk>4o4yAc_E+U5
z_(z!ov>b2K>!8Qev=QTrv(nP#?=gmR#nS$81oVE;e$k!@V}~<qQvREj&lt`>W9)fR
zp0x<{YoMnjjm2a61ZX*)S(vXlJ1t|pafTcA8j`;qfA#q&=!1ebV*GJ78)K7_#`u@h
zdMEuQD~OP%8~-eP@3U$G<#N2U{si=7nl{28aHd<Tocsaj!=-8XgYy7roj>q%=MJa+
zq0S5cz9i@@8ZWZ98b9)f)oD8G1<>GE<yqeWjX9K}{|a=ijz)a)y3@3Y{O6N8n*66O
zO=rCdx>85~6g2sR)F<mL&@`VE{VUK89sRGsJPH5G##mHLAmf;@clMp26QE_h%BHq>
z68wsS0r`5BU61&BigIBe)Xjbr^a)8L-e&iJCVNpi(Rhd8z!-2E_v|Os`#zKxf_{q1
zC~+p1{WU?Q=ocZ6k1re%>wEU!t8xT;r0lm9ZRH^QpEK#4Y()$CIg21~3VHGz+?)py
zFE|V2VgHkZ_^v;<H;4N7BQVHwcyr>QX}wbPH+g0JuyT;|Lq*H>Qu@mB_fY>lcw~L^
z$3RCw%X50o^Fh;iDjM@&Bq7gSgYt{WQS}j@Gs?SBjy0CsuL#TD5d6U>X~Z-0u;5mk
zFY_+&zlJ;|@7t<ewukvClB5w|GH9|TPqO^FqQ&^kv*`4}_|3y5lHi}WSkVhPzz0Jz
z$#TD<rMxXz|0%xEVm}Z6_p5Tr{{^&n33;+V^S%oDLW;&4yl`ZA^JZHY4rt}4^)@%Q
z`RRn?fSW!tOi@j)6p=pbI1uR%bkS+Y>agNqNSB3oMniqUNU+=XU`2Hmqc>22-tH(-
zt02F7FtDX>a8qYrfWMmxbPh*ZS7%>eVCEw6a;tl|zkj=6(`QKC@fjIcy}lLSMg|l`
zsw<psl)o37xzTjd+~0`Vx`u}2Db2yq%?I$h&>1?rnFSh}H`F<s1A*}Hra&W|x;w|Q
zy<BMEGtE_1A$cD3&5}u~JGhw<TgB{b&d`?dZSYhOPjxqjk$GC$<)O}P@Q9ng?#=kN
zSNCCW>bqX0j5v?_W&xSy8R9aFbiy+WQcXz?`TcMvQ)U_UiatJdc|ERm{HsuOt|2gl
zQ=`Q}-tGWC;tf>bbmH{qx++h6%Bv{#fv=+Z`&iEm)ib^lZsj9M2S+PbA=N1>W>R`B
z6o+b8(HZTkLM2=jw#=ZFM`el@Q)EhlD(4~^=(y%cFc1#n8&D9i5zio^OPrS-zWKA|
zjBk-MK5C{9jrCs<D@<PrPyZU2E68i32|0fBNojySF2(Sv0Z?D+Dq4N9tLXGsy~;X@
zL-+0P&Eu1<rYx?iDOxqG=yVO$km5*LS&2wx+{BR<qWh9K{gJTx1ejE(&wHsve!@#%
z<I1mf3Buj^hq=TlKETy|T1)m6pVbEH8=F0_rkpSGTiY4ulJ3m$hs7@}#4jIFTg5kg
zDUVOZ>1cVJ4UY(qqwv##H#``C%XHJB_+n|1A=&+De8}GDns!<_9SuM2==SuX>@(^o
z;{ZP(-{DY)izBv8JGp;`gZAe<Z=RpkKJBD*aq$1#aa?yUe5Sss0CtNGNrTVz&kK;1
zrk!Tb*;RuX{}#b5nxoVHbyH&6pE*oFu|6$qmOw|U@ss{B0MibBr&Id%Bb1h<^cJf}
z#_Et#KzEG(Oyj2hDFA->eXCqSXa1)Y<e~d|RpeRqDdijaKl70BPc@|3>9~410{VYE
kK%U{B=Bt+fT!i4If0!WMW1Yo?vb0E~i!%*!^K$xs0Ogaec>n+a

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_Common/emu_subRecordFunctions.dbd b/builddir/O.3.15.2_Common/emu_subRecordFunctions.dbd
new file mode 100644
index 0000000..25aa99a
--- /dev/null
+++ b/builddir/O.3.15.2_Common/emu_subRecordFunctions.dbd
@@ -0,0 +1,6 @@
+function (FACTOR_CONVERSION)
+function (ANGLE_CALCUL)
+function (CREATE_TAB)
+function (INIT_TAB)
+function (CREATE_PROJXY)
+function (CREATE_REPORT)
diff --git a/builddir/O.3.15.2_centos7-x86_64/.dependencies_includes b/builddir/O.3.15.2_centos7-x86_64/.dependencies_includes
new file mode 100644
index 0000000..28a7f21
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/.dependencies_includes
@@ -0,0 +1 @@
+DEPENDENCIES_INCLUDES = -I/opt/epics/modules/scanning/2.0.5/3.15.2/include -I/opt/epics/modules/scanning/2.0.5/3.15.2/include/os/Linux -I/opt/epics/modules/scanning/2.0.5/3.15.2/include/os/default -I/opt/epics/modules/streamdevice/2.7.1/3.15.2/include -I/opt/epics/modules/streamdevice/2.7.1/3.15.2/include/os/Linux -I/opt/epics/modules/streamdevice/2.7.1/3.15.2/include/os/default -I/opt/epics/modules/asyn/4.27.0/3.15.2/include -I/opt/epics/modules/asyn/4.27.0/3.15.2/include/os/Linux -I/opt/epics/modules/asyn/4.27.0/3.15.2/include/os/default -I/opt/epics/modules/ecat2db/0.3.1/3.15.2/include -I/opt/epics/modules/ecat2db/0.3.1/3.15.2/include/os/Linux -I/opt/epics/modules/ecat2db/0.3.1/3.15.2/include/os/default -I/opt/epics/modules/sscan/2.10.1/3.15.2/include -I/opt/epics/modules/sscan/2.10.1/3.15.2/include/os/Linux -I/opt/epics/modules/sscan/2.10.1/3.15.2/include/os/default -I/opt/epics/modules/busy/1.6.0/3.15.2/include -I/opt/epics/modules/busy/1.6.0/3.15.2/include/os/Linux -I/opt/epics/modules/busy/1.6.0/3.15.2/include/os/default -I/opt/epics/modules/calc/3.6.1/3.15.2/include -I/opt/epics/modules/calc/3.6.1/3.15.2/include/os/Linux -I/opt/epics/modules/calc/3.6.1/3.15.2/include/os/default -I/opt/epics/modules/pcre/8.36.0/3.15.2/include -I/opt/epics/modules/pcre/8.36.0/3.15.2/include/os/Linux -I/opt/epics/modules/pcre/8.36.0/3.15.2/include/os/default -I/opt/epics/modules/seq/2.1.10/3.15.2/include -I/opt/epics/modules/seq/2.1.10/3.15.2/include/os/Linux -I/opt/epics/modules/seq/2.1.10/3.15.2/include/os/default -I/opt/epics/modules/dataacquisition/1.0.1/3.15.2/include -I/opt/epics/modules/dataacquisition/1.0.1/3.15.2/include/os/Linux -I/opt/epics/modules/dataacquisition/1.0.1/3.15.2/include/os/default -I/opt/epics/modules/fastacquisition/1.1.0/3.15.2/include -I/opt/epics/modules/fastacquisition/1.1.0/3.15.2/include/os/Linux -I/opt/epics/modules/fastacquisition/1.1.0/3.15.2/include/os/default 
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.d b/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.d
new file mode 100644
index 0000000..e3a9c42
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.d
@@ -0,0 +1,17 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.dc b/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.dc
new file mode 100644
index 0000000..be9a4f9
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.dc
@@ -0,0 +1,27 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c /usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h /usr/include/time.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h /usr/include/bits/time.h \
+ /usr/include/bits/types.h /usr/include/bits/typesizes.h \
+ /usr/include/bits/timex.h /usr/include/xlocale.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.o b/builddir/O.3.15.2_centos7-x86_64/EMU_CALCULS.o
new file mode 100644
index 0000000000000000000000000000000000000000..47f8a6dbac3c2d1de705f1b5c075603bd26ac436
GIT binary patch
literal 39936
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.c b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.c
new file mode 100644
index 0000000..61f7985
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.c
@@ -0,0 +1,339 @@
+/* Generated with snc from EMU_MTR-CHECKBRAKE.i */
+
+/* Program "checkMTRBrake" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrGet = 0;
+# line 19 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short statusMTRMov = 0;
+# line 23 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrSet = 0;
+# line 27 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrCMD = 0;
+# line 31 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrGET = 0;
+# line 37 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short AbortscanMtrCMD = 0;
+# line 41 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short countErrors = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 48 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nWAIT\n");
+# line 49 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 50 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (0.1));
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_efTestAndClear(ssId, 1/*ErrorBrakeMtrEvent*/) && (ErrorBrakeMtrGet == 1) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 58 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : BRAKE OFF \n");
+# line 59 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			brakeMtrCMD = 1;
+# line 60 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 3/*brakeMtrCMD*/, 0);
+# line 61 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_delay(ssId, 0);
+# line 62 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 63 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "count" in state set "ss1" ******/
+
+/* Delay function for state "count" in state set "ss1" */
+static void D_ss1_0_count(SS_ID ssId, struct UserVar *pVar)
+{
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 1, (1.0));
+}
+
+/* Event function for state "count" in state set "ss1" */
+static seqBool E_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 69 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (countErrors > 3)
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 0)) && (statusMTRMov == 1))
+	{
+		*pNextState = 1;
+		*pTransNum = 1;
+		return TRUE;
+	}
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 1)) && (statusMTRMov == 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 2;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "count" in state set "ss1" */
+static void A_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 71 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : STOP MEASURE \n");
+		}
+		return;
+	case 1:
+		{
+# line 76 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+# line 77 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	case 2:
+		{
+# line 82 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = countErrors + 1;
+		}
+		return;
+	}
+}
+
+/****** Code for state "stopMeasure" in state set "ss1" ******/
+
+/* Delay function for state "stopMeasure" in state set "ss1" */
+static void D_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "stopMeasure" in state set "ss1" */
+static seqBool E_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "stopMeasure" in state set "ss1" */
+static void A_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 90 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\n ABORT\n");
+# line 91 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			AbortscanMtrCMD = 1;
+# line 92 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 5/*AbortscanMtrCMD*/, 0);
+# line 93 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_GET", (size_t)&ErrorBrakeMtrGet, "ErrorBrakeMtrGet", "short", 1, 3, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 4, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_SET", (size_t)&ErrorBrakeMtrSet, "ErrorBrakeMtrSet", "short", 1, 5, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 6, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 7, 2, 1, 0, 0},
+	{"{DEVICE}:MTR-ABORT.PROC", (size_t)&AbortscanMtrCMD, "AbortscanMtrCMD", "short", 1, 8, 0, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x0000000a,
+};
+static const seqMask	EM_ss1_0_count[] = {
+	0x00000010,
+};
+static const seqMask	EM_ss1_0_stopMeasure[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "count",
+	/* action function */   A_ss1_0_count,
+	/* event function */    E_ss1_0_count,
+	/* delay function */    D_ss1_0_count,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_count,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "stopMeasure",
+	/* action function */   A_ss1_0_stopMeasure,
+	/* event function */    E_ss1_0_stopMeasure,
+	/* delay function */    D_ss1_0_stopMeasure,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_stopMeasure,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  4,
+	/* number of delays */  2
+	},
+};
+
+/* Program table (global) */
+seqProgram checkMTRBrake = {
+	/* magic number */      2001010,
+	/* program name */      "checkMTRBrake",
+	/* channels */          G_channels,
+	/* num. channels */     6,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  2,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void checkMTRBrakeRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&checkMTRBrake);
+}
+epicsExportRegistrar(checkMTRBrakeRegistrar);
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.d b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.d
new file mode 100644
index 0000000..0b214ca
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.d
@@ -0,0 +1,19 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seqCom.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvType.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsThread.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdThread.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsEvent.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdEvent.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seq_release.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc
new file mode 100644
index 0000000..49b22c9
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.dc
@@ -0,0 +1,29 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c /usr/include/stdc-predef.h \
+ /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /usr/include/xlocale.h /usr/include/stdio.h /usr/include/bits/types.h \
+ /usr/include/bits/typesizes.h /usr/include/libio.h \
+ /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stdarg.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/syslimits.h \
+ /usr/include/limits.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ seqCom.h /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/bits/byteswap-16.h /usr/include/sys/types.h \
+ /usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
+ /usr/include/bits/sigset.h /usr/include/bits/time.h \
+ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
+ /usr/include/alloca.h /usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.i b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.i
new file mode 100644
index 0000000..1267f20
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.i
@@ -0,0 +1,103 @@
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+# 1 "<built-in>"
+# 1 "<command-line>"
+# 1 "/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+
+
+
+
+
+program checkMTRBrake
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short ErrorBrakeMtrGet;
+assign ErrorBrakeMtrGet to "{PREFIX}:PBI-EM:CURRENT_ERR_GET";
+monitor ErrorBrakeMtrGet;
+evflag ErrorBrakeMtrEvent;
+sync ErrorBrakeMtrGet ErrorBrakeMtrEvent;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short ErrorBrakeMtrSet;
+assign ErrorBrakeMtrSet to "{PREFIX}:PBI-EM:CURRENT_ERR_SET";
+monitor ErrorBrakeMtrSet;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+short AbortscanMtrCMD;
+assign AbortscanMtrCMD to "{DEVICE}:MTR-ABORT.PROC";
+monitor AbortscanMtrCMD;
+
+short countErrors=0;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     printf("\nWAIT\n");
+     ErrorBrakeMtrSet=0;
+           pvPut(ErrorBrakeMtrSet);
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(ErrorBrakeMtrEvent)&&(ErrorBrakeMtrGet==1)&&(delay(0.1)))
+       {
+       printf("\nERRROR CURRENT : BRAKE OFF \n");
+       brakeMtrCMD=1;
+       pvPut(brakeMtrCMD);
+       delay(1);
+       ErrorBrakeMtrSet=0;
+       pvPut(ErrorBrakeMtrSet);
+       }state count
+      }
+
+ state count
+        {
+        when(countErrors>3)
+       {
+       printf("\nERRROR CURRENT : STOP MEASURE \n");
+       }state stopMeasure
+
+   when((delay(1.0)) && (statusMTRMov==1))
+       {
+       printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+       countErrors=0;
+       }state waiting
+
+   when((delay(1.0)) && (statusMTRMov==0))
+       {
+       countErrors=countErrors+1;
+       }state waiting
+   }
+
+
+ state stopMeasure
+   {
+   when(delay(1.0)){
+   printf("\n ABORT\n");
+   AbortscanMtrCMD=1;
+   pvPut(AbortscanMtrCMD);
+   countErrors=0;
+   }state waiting
+   }
+
+}
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.o b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE.o
new file mode 100644
index 0000000000000000000000000000000000000000..eb90072e5e774e56d7dacbdcb2da1571a59de2d9
GIT binary patch
literal 28216
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd
new file mode 100644
index 0000000..d71c5ef
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-CHECKBRAKE_snl.dbd
@@ -0,0 +1 @@
+registrar (checkMTRBrakeRegistrar)
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.c b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.c
new file mode 100644
index 0000000..0b2209c
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.c
@@ -0,0 +1,394 @@
+/* Generated with snc from EMU_MTR-HOME_AUTO.i */
+
+/* Program "homeMtrAuto" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short HOMCPTFLAG = 0;
+# line 17 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short statusMTRMov = 0;
+# line 21 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPlaced = 0;
+# line 27 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrStop = 0;
+# line 31 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeCMD = 0;
+# line 35 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPosCons = 0;
+# line 39 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrCMD = 0;
+# line 43 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrGET = 0;
+# line 50 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanPS_Sts = 0;
+# line 55 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanMTR_Sts = 0;
+# line 61 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeSTART = 0;
+# line 68 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short plimSTATUS = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 79 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 80 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 81 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nWAIT\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 87 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 3/*homeSTARTEvent*/) && (homeSTART == 1) && (plimSTATUS == 0))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 89 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nSTART HOME PROCEDURE\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "startHOME" in state set "ss1" ******/
+
+/* Delay function for state "startHOME" in state set "ss1" */
+static void D_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "startHOME" in state set "ss1" */
+static seqBool E_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if ((scanPS_Sts == 0) && (scanMTR_Sts == 0) && (statusMTRMov == 0) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "startHOME" in state set "ss1" */
+static void A_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 97 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\n GO HOME\n");
+# line 98 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 1;
+# line 99 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+# line 100 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 101 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 1;
+# line 102 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 103 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 104 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 105 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "limitON" in state set "ss1" ******/
+
+/* Delay function for state "limitON" in state set "ss1" */
+static void D_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "limitON" in state set "ss1" */
+static seqBool E_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 111 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 4/*plimSTATUSEvent*/) && (plimSTATUS == 1))
+	{
+		*pNextState = 4;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "limitON" in state set "ss1" */
+static void A_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 113 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nLIMIT HIGH\n");
+# line 114 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 115 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "breakON" in state set "ss1" ******/
+
+/* Delay function for state "breakON" in state set "ss1" */
+static void D_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "breakON" in state set "ss1" */
+static seqBool E_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 0;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "breakON" in state set "ss1" */
+static void A_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 123 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nINIT POSITION\n");
+# line 124 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 125 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 126 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 127 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nBRAKE ON\n");
+# line 128 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 129 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+# line 130 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 131 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 132 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 0;
+# line 133 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG", (size_t)&HOMCPTFLAG, "HOMCPTFLAG", "short", 1, 5, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 6, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS", (size_t)&mtrPlaced, "mtrPlaced", "short", 1, 7, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.SPMG", (size_t)&mtrStop, "mtrStop", "short", 1, 8, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD", (size_t)&homeCMD, "homeCMD", "short", 1, 9, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}", (size_t)&mtrPosCons, "mtrPosCons", "short", 1, 10, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 11, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 12, 2, 1, 0, 0},
+	{"{DEVICE}:PS.BUSY", (size_t)&scanPS_Sts, "scanPS_Sts", "short", 1, 13, 0, 1, 0, 0},
+	{"{DEVICE}:MTR.BUSY", (size_t)&scanMTR_Sts, "scanMTR_Sts", "short", 1, 14, 0, 1, 0, 0},
+	{"{DEVICE}:PROC-AUTO-HOME", (size_t)&homeSTART, "homeSTART", "short", 1, 15, 3, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS", (size_t)&plimSTATUS, "plimSTATUS", "short", 1, 16, 4, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x00018008,
+};
+static const seqMask	EM_ss1_0_startHOME[] = {
+	0x00006040,
+};
+static const seqMask	EM_ss1_0_limitON[] = {
+	0x00010010,
+};
+static const seqMask	EM_ss1_0_breakON[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "startHOME",
+	/* action function */   A_ss1_0_startHOME,
+	/* event function */    E_ss1_0_startHOME,
+	/* delay function */    D_ss1_0_startHOME,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_startHOME,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "limitON",
+	/* action function */   A_ss1_0_limitON,
+	/* event function */    E_ss1_0_limitON,
+	/* delay function */    D_ss1_0_limitON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_limitON,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "breakON",
+	/* action function */   A_ss1_0_breakON,
+	/* event function */    E_ss1_0_breakON,
+	/* delay function */    D_ss1_0_breakON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_breakON,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  5,
+	/* number of delays */  1
+	},
+};
+
+/* Program table (global) */
+seqProgram homeMtrAuto = {
+	/* magic number */      2001010,
+	/* program name */      "homeMtrAuto",
+	/* channels */          G_channels,
+	/* num. channels */     12,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  4,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void homeMtrAutoRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&homeMtrAuto);
+}
+epicsExportRegistrar(homeMtrAutoRegistrar);
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.d b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.d
new file mode 100644
index 0000000..5374162
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.d
@@ -0,0 +1,19 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seqCom.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvType.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsThread.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdThread.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsEvent.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdEvent.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seq_release.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.dc b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.dc
new file mode 100644
index 0000000..3ffb6fe
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.dc
@@ -0,0 +1,29 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c /usr/include/stdc-predef.h \
+ /usr/include/string.h /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /usr/include/xlocale.h /usr/include/stdio.h /usr/include/bits/types.h \
+ /usr/include/bits/typesizes.h /usr/include/libio.h \
+ /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stdarg.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/limits.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/syslimits.h \
+ /usr/include/limits.h /usr/include/bits/posix1_lim.h \
+ /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
+ /usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ seqCom.h /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/bits/byteswap-16.h /usr/include/sys/types.h \
+ /usr/include/time.h /usr/include/sys/select.h /usr/include/bits/select.h \
+ /usr/include/bits/sigset.h /usr/include/bits/time.h \
+ /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h \
+ /usr/include/alloca.h /usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.i b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.i
new file mode 100644
index 0000000..1d5294f
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.i
@@ -0,0 +1,143 @@
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+# 1 "<built-in>"
+# 1 "<command-line>"
+# 1 "/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+
+
+
+
+
+program homeMtrAuto
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short HOMCPTFLAG;
+assign HOMCPTFLAG to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG";
+monitor HOMCPTFLAG;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short mtrPlaced;
+assign mtrPlaced to "{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS";
+monitor mtrPlaced;
+evflag mtrPlacedEvent;
+sync mtrPlaced mtrPlacedEvent;
+
+short mtrStop;
+assign mtrStop to "{PMACPREFIX}:{MOTOR_NAME1}.SPMG";
+monitor mtrStop;
+
+short homeCMD;
+assign homeCMD to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD";
+monitor homeCMD;
+
+short mtrPosCons;
+assign mtrPosCons to "{PMACPREFIX}:{MOTOR_NAME1}";
+monitor mtrPosCons;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+
+short scanPS_Sts;
+assign scanPS_Sts to "{DEVICE}:PS.BUSY";
+monitor scanPS_Sts;
+
+
+short scanMTR_Sts;
+assign scanMTR_Sts to "{DEVICE}:MTR.BUSY";
+monitor scanMTR_Sts;
+
+
+
+short homeSTART;
+assign homeSTART to "{DEVICE}:PROC-AUTO-HOME";
+monitor homeSTART;
+evflag homeSTARTEvent;
+sync homeSTART homeSTARTEvent;
+
+
+short plimSTATUS;
+assign plimSTATUS to "{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS";
+monitor plimSTATUS;
+evflag plimSTATUSEvent;
+sync plimSTATUS plimSTATUSEvent;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     homeSTART=0;
+        pvPut(homeSTART);
+     printf("\nWAIT\n");
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(homeSTARTEvent)&&(homeSTART==1)&&(plimSTATUS==0))
+       {
+       printf("\nSTART HOME PROCEDURE\n");
+       }state startHOME
+      }
+
+
+ state startHOME
+   {
+   when((scanPS_Sts==0) && (scanMTR_Sts==0) && (statusMTRMov==0) && (delay(1.0))){
+   printf("\n GO HOME\n");
+   brakeMtrCMD=1;
+   pvPut(brakeMtrCMD);
+   delay(1);
+   HOMCPTFLAG=1;
+   pvPut(HOMCPTFLAG);
+   delay(1);
+   homeCMD=1;
+   pvPut(homeCMD);
+   }state limitON
+   }
+
+ state limitON
+     {
+   when(efTestAndClear(plimSTATUSEvent)&&(plimSTATUS==1))
+    {
+    printf("\nLIMIT HIGH\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    }state breakON
+     }
+
+ state breakON
+     {
+   when(delay(1.0))
+    {
+    printf("\nINIT POSITION\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    delay(1);
+    printf("\nBRAKE ON\n");
+    homeCMD=1;
+    pvPut(homeCMD);
+    homeSTART=0;
+    pvPut(homeSTART);
+    brakeMtrCMD=0;
+    pvPut(brakeMtrCMD);
+    }state init
+           }
+
+}
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.o b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO.o
new file mode 100644
index 0000000000000000000000000000000000000000..9d8bf842e433255e88636f87f0fce78665a3a349
GIT binary patch
literal 33376
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
Ie7;WjzxnA}0RR91

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd
new file mode 100644
index 0000000..1386530
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_MTR-HOME_AUTO_snl.dbd
@@ -0,0 +1 @@
+registrar (homeMtrAutoRegistrar)
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.d b/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.d
new file mode 100644
index 0000000..0939ede
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.d
@@ -0,0 +1,17 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.dc b/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.dc
new file mode 100644
index 0000000..96272a4
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.dc
@@ -0,0 +1,39 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stddef.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h /usr/include/time.h \
+ /usr/include/features.h /usr/include/sys/cdefs.h \
+ /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
+ /usr/include/gnu/stubs-64.h /usr/include/bits/time.h \
+ /usr/include/bits/types.h /usr/include/bits/typesizes.h \
+ /usr/include/bits/timex.h /usr/include/xlocale.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h /usr/include/math.h \
+ /usr/include/bits/huge_val.h /usr/include/bits/huge_valf.h \
+ /usr/include/bits/huge_vall.h /usr/include/bits/inf.h \
+ /usr/include/bits/nan.h /usr/include/bits/mathdef.h \
+ /usr/include/bits/mathcalls.h /usr/include/string.h \
+ /usr/include/stdlib.h /usr/include/bits/waitflags.h \
+ /usr/include/bits/waitstatus.h /usr/include/endian.h \
+ /usr/include/bits/endian.h /usr/include/bits/byteswap.h \
+ /usr/include/bits/byteswap-16.h /usr/include/sys/types.h \
+ /usr/include/sys/select.h /usr/include/bits/select.h \
+ /usr/include/bits/sigset.h /usr/include/sys/sysmacros.h \
+ /usr/include/bits/pthreadtypes.h /usr/include/alloca.h \
+ /usr/include/bits/stdlib-float.h /usr/include/stdio.h \
+ /usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
+ /usr/lib/gcc/x86_64-redhat-linux/4.8.3/include/stdarg.h \
+ /usr/include/bits/stdio_lim.h /usr/include/bits/sys_errlist.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.o b/builddir/O.3.15.2_centos7-x86_64/EMU_REPORT_FILE.o
new file mode 100644
index 0000000000000000000000000000000000000000..d0bc26a605aed315b1e9c209ca70536560894d80
GIT binary patch
literal 24744
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.c b/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.c
new file mode 100644
index 0000000..a707bba
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.c
@@ -0,0 +1 @@
+char epics_emuLibRelease[] = "catane";
diff --git a/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.d b/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.d
new file mode 100644
index 0000000..28b2801
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.d
@@ -0,0 +1 @@
+emu_Versioncatane.o: emu_Versioncatane.c
diff --git a/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.o b/builddir/O.3.15.2_centos7-x86_64/emu_Versioncatane.o
new file mode 100644
index 0000000000000000000000000000000000000000..bd59d49936246b7bd374f82a9cb4ae2bc647d6a6
GIT binary patch
literal 2328
zcmbVO&2G~`5FW>&w1kFM0YO!eTnR*5u-&wwe~=O>f;OViQVFh+<7^X)#I9_ov|RcK
zoOzqR02eOs8k|5v2xjcvX1le7#7N$m{bs(|S!Z^glV{t{bD9Q1G}wUQOrQX#xuIQ4
z%o<F<IJi#i_zd7BV)+CgP3Y%x<SOVf@zH4*f&A!Y3e9UHq%P5*X?JiO)5%Umo7C<V
zO9j0+U7WZHfHgKsS_xCkK%-<AkbM^lg$)eA3>DCe>xIXKM(OEP?iTWI<C9iAnx<36
zg~UIPqo(~Tj^miT1FTvD)*m$AvM}-jKi!?>CTw=#xlt3n+g@vr^_UYeh`bLhK0aWX
zB)c2*nVsga+w73_f`dNuW4muAxlGJuw+3FX-S$Fz$6B(=kF3R}iy=X@Vjit7H<v50
z`Ra{PH!9YuwPY+Vlq(Bs<+3rm$J)l06Q{VjHfNaqc;K^Yhxsh@T%0afaBxDmTg5~s
z%{qp;vt*e2yNx=yT_*(Ctk>6#SzKZ6p9=t3(Q!X^TBzeN)m>r5>?j7SjlBR?D~iAh
zS<kWBtTpH~J%2wyUt&A0R>%&|xt-AQI}9mlM9;%+;x=Xn%MJSU&cO16m|0k=8O4tK
zPWe6mdpb=mfKSqiQkI%z%Vyf+Lu3X`;tv})_0>`ZNuzU{l*+%47`3R%-=g3QQTb(z
zq4iY}{MU*@jeUrIH78MK`MLSV`FP5bI1U3HGLkAjYEHsG(SWj%s<Tmz-9?XzQSevJ
zFt`><jeUWRtomUrWr#Yde)=uc`kRQUIf?m$1{AuvWKm<O5ecIUMV1FV@QVzhE%-to
za!lp_<^gnJ$|86|pP*CNa@@RhU(2`}JBd!U_b6WQKgwjZRX)wLmOAAJYLyeNVcb=G
z)b~$6Q`Y)F`N5e(zbxwdvQM@tE)U=T$e6J83%f`?dge~3zN`uf&+I(J)!RhmS8oG>
z^JWzVa;?J^1rhP|CNGK(_*qos2F@p?eVtX1^_9!|!ts1!M^urp$t5ZwoObb^KosgL
z5`oj#orLNk5jfpnBvYwMaM2?KiE|<1uk*MSDW2B-%;!%OoKInk8`Kw~W`e|CD1Y)t
Hgg}(PUuw0i

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp b/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp
new file mode 100644
index 0000000..6efb851
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp
@@ -0,0 +1,68 @@
+/* THIS IS A GENERATED FILE. DO NOT EDIT! */
+/* Generated from ../../builddir/3.15.2/dbd/emu.dbd */
+
+#include <string.h>
+
+#include "epicsStdlib.h"
+#include "iocsh.h"
+#include "registryCommon.h"
+
+#define epicsExportSharedSymbols
+#include "shareLib.h"
+
+extern "C" {
+
+typedef void (*reg_func)(void);
+epicsShareExtern reg_func pvar_func_checkMTRBrakeRegistrar,
+    pvar_func_homeMtrAutoRegistrar, pvar_func_register_func_ANGLE_CALCUL,
+    pvar_func_register_func_CREATE_PROJXY,
+    pvar_func_register_func_CREATE_REPORT,
+    pvar_func_register_func_CREATE_TAB,
+    pvar_func_register_func_FACTOR_CONVERSION,
+    pvar_func_register_func_INIT_TAB;
+
+int emu_registerRecordDeviceDriver(DBBASE *pbase)
+{
+    static int executed = 0;
+    if (!pbase) {
+        printf("pdbbase is NULL; you must load a DBD file first.\n");
+        return -1;
+    }
+
+    if (executed) {
+        printf("Warning: Registration already done.\n");
+    }
+    executed = 1;
+
+    pvar_func_checkMTRBrakeRegistrar();
+    pvar_func_homeMtrAutoRegistrar();
+    pvar_func_register_func_ANGLE_CALCUL();
+    pvar_func_register_func_CREATE_PROJXY();
+    pvar_func_register_func_CREATE_REPORT();
+    pvar_func_register_func_CREATE_TAB();
+    pvar_func_register_func_FACTOR_CONVERSION();
+    pvar_func_register_func_INIT_TAB();
+    return 0;
+}
+
+/* emu_registerRecordDeviceDriver */
+static const iocshArg rrddArg0 = {"pdbbase", iocshArgPdbbase};
+static const iocshArg *rrddArgs[] = {&rrddArg0};
+static const iocshFuncDef rrddFuncDef =
+    {"emu_registerRecordDeviceDriver", 1, rrddArgs};
+static void rrddCallFunc(const iocshArgBuf *)
+{
+    emu_registerRecordDeviceDriver(*iocshPpdbbase);
+}
+
+} // extern "C"
+
+/*
+ * Register commands on application startup
+ */
+static int Registration() {
+    iocshRegister(&rrddFuncDef, rrddCallFunc);
+    return 0;
+}
+
+static int done = Registration();
diff --git a/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp.tmp b/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp.tmp
new file mode 100644
index 0000000..34dc9a5
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.cpp.tmp
@@ -0,0 +1,70 @@
+/* THIS IS A GENERATED FILE. DO NOT EDIT! */
+/* Generated from ../../builddir/3.15.2/dbd/emu.dbd */
+
+#include <string.h>
+
+#include "epicsStdlib.h"
+#include "iocsh.h"
+#include "iocshRegisterCommon.h"
+#include "registryCommon.h"
+
+#define epicsExportSharedSymbols
+#include "shareLib.h"
+
+extern "C" {
+
+typedef void (*reg_func)(void);
+epicsShareExtern reg_func pvar_func_checkMTRBrakeRegistrar,
+    pvar_func_homeMtrAutoRegistrar, pvar_func_register_func_ANGLE_CALCUL,
+    pvar_func_register_func_CREATE_PROJXY,
+    pvar_func_register_func_CREATE_REPORT,
+    pvar_func_register_func_CREATE_TAB,
+    pvar_func_register_func_FACTOR_CONVERSION,
+    pvar_func_register_func_INIT_TAB;
+
+int emu_registerRecordDeviceDriver(DBBASE *pbase)
+{
+    static int executed = 0;
+    if (!pbase) {
+        printf("pdbbase is NULL; you must load a DBD file first.\n");
+        return -1;
+    }
+
+    if (executed) {
+        printf("Warning: Registration already done.\n");
+    }
+    executed = 1;
+
+    pvar_func_checkMTRBrakeRegistrar();
+    pvar_func_homeMtrAutoRegistrar();
+    pvar_func_register_func_ANGLE_CALCUL();
+    pvar_func_register_func_CREATE_PROJXY();
+    pvar_func_register_func_CREATE_REPORT();
+    pvar_func_register_func_CREATE_TAB();
+    pvar_func_register_func_FACTOR_CONVERSION();
+    pvar_func_register_func_INIT_TAB();
+    return 0;
+}
+
+/* emu_registerRecordDeviceDriver */
+static const iocshArg rrddArg0 = {"pdbbase", iocshArgPdbbase};
+static const iocshArg *rrddArgs[] = {&rrddArg0};
+static const iocshFuncDef rrddFuncDef =
+    {"emu_registerRecordDeviceDriver", 1, rrddArgs};
+static void rrddCallFunc(const iocshArgBuf *)
+{
+    emu_registerRecordDeviceDriver(*iocshPpdbbase);
+}
+
+} // extern "C"
+
+/*
+ * Register commands on application startup
+ */
+static int Registration() {
+    iocshRegisterCommon();
+    iocshRegister(&rrddFuncDef, rrddCallFunc);
+    return 0;
+}
+
+static int done = Registration();
diff --git a/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.d b/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.d
new file mode 100644
index 0000000..0b6bdca
--- /dev/null
+++ b/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.d
@@ -0,0 +1,21 @@
+emu_registerRecordDeviceDriver.o: emu_registerRecordDeviceDriver.cpp \
+ /opt/epics/bases/base-3.15.2/include/epicsStdlib.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdStrtod.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/errMdef.h \
+ /opt/epics/bases/base-3.15.2/include/iocsh.h \
+ /opt/epics/bases/base-3.15.2/include/registryCommon.h \
+ /opt/epics/bases/base-3.15.2/include/dbStaticLib.h \
+ /opt/epics/bases/base-3.15.2/include/dbFldTypes.h \
+ /opt/epics/bases/base-3.15.2/include/dbBase.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/cantProceed.h \
+ /opt/epics/bases/base-3.15.2/include/devSup.h \
+ /opt/epics/bases/base-3.15.2/include/registryRecordType.h \
+ /opt/epics/bases/base-3.15.2/include/recSup.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.o b/builddir/O.3.15.2_centos7-x86_64/emu_registerRecordDeviceDriver.o
new file mode 100644
index 0000000000000000000000000000000000000000..1fcd8c19be2496c0c1352c6526b8fb41c2f8c459
GIT binary patch
literal 15600
zcmdU0eQ;dWb-zz5t=0(3vW2l^WBmLjB#d??SvJBLqfc8(gr&%mW1wWc+I^B1uXeX@
z-wK;jAf_-7;?zt7Wq=fcff$kyl7WtC!h{ST$)qI>G;LklFqxFhxJ@U4DW%K+anHH;
zoZYv_E1Y)nPw&j$d(Q8kd(OG%e!O?@lWrLp-dSN;ij$>ws3OOxQU@D~bhjqE)jG9C
z4c_)2p~2fvd-=Po5WW4y{B?td{DB5g*XcTf{;x#)i-Whl9C~TVnr=0C<O;NN3bS9`
z>*r3KhV-j{n9?b{WX+$Th$72_cLUY+ZyGAevWdybSkAGNIeYiS@bKmKp-kSM&F4Hj
zm5C+nnBCvoZ%-vt4rFf53v=Vo#@uu=J-y8ybEcCy&y9J>Oxlj6Tql+|WG6Cd$A~(!
z`KYT!9Cyr#XWT@;Gnb4z{cdv3alyYMTTmr+1f!|DW`d_{u;*;GSe6^3Vy#jEVyJ(G
zs!KvjRcbDzRT#QZT_h@ytoUgs<bhB%GF((>uClT!nf6pwXfIR+uf=*RsKqQW0bHeN
zL|}!U4S|p@wC=zcZw4_#9zn7?R29;Cj1Zfv)Gh`>x(HQPPNMc&aDEXICbu+Qq4R*w
zD|KF_^PtYFbsp0BBAuUOtXHPL2YSvyWhblNe*iqHLAvU{hp;g8M_&OlWay8Pt~2y+
zk!~>bX{7CQAyZY#LZ;a;mS)-vQ=yqI!vr+bZI~*}3>qe=nNh=3Yi6He7FlnAi~9{z
zW1R$M#xRR5^f+snrJC^!Q*Yf4H3to|!s-R)R>L${SzrzurqOx}wB2Ty)z+_pxzjLB
z)=>~UYM6-iATakErcE>RhH2N#al>?I<{86mwpyUg3BzpBzP)IeORe|7&dX{s)T^oo
z^*A(CJ%XJyaeWj?qK{#BX&k<ay{&^8_y}NCp+=YzwK#v!?Io83fhZ2AMk`@OXtZ91
zDuXMqb_+m@kT}aEGSeh@A*!fD@w%XW4CtkG!Hox?To#L~U=w-+<eUm#gq0yxk3euO
z;)YyzqCl?4>0!_f7)(Pp4?{z68Y{tXXx-8chz?0zu>GHa)*%UYjAE^!H)A(KB;WZg
z%QpnKE{7#!WG?l|ccDX}WifYJ1usJp4B;v$gEnMUp(Z5Jl<{EO+XZraj~3Vk`FUfI
zEyoO6?1LisBpa@)Za55pHeB6^B+)C84uSl2P-^AXtB^D!UcKf7(597rCy+$z_|=j8
zx<6z2pNHmCu$O50&?DHC=tq$@D>8Hp={6(t7}A4=ejMrjhJFI+gNFVp(nk$_9O>hR
zeiDc1MMFRJhhX-HhW^@3K>x(hU%vrlP8#|fNWZDhha9?#eiC^Dkh<rgr(Xi~nq1U&
z7|^QF5w5eAJgI?iLcT&jcC9OM%&bP#XZ;M|m73~D)JLjS8g4+C(>+9355-}3z5qF^
z;eJqoX*FgSVrH$xMvGt!O<KdmN3e_UgqF57QLI&K{ne#a3SJ8!S^BYt)H2K<Sr6R{
zde-Bdu_iVcOeyS*+Q=N1O~hCa)q?G&?~<=9V)bA2IzXpSH@^yn)%466^#$kZ;Xzd5
zoNbN!IsqD6Q0qCzaZ@qmlLaz38UgcFp)ESc(b5uD-Cuw~LoO{#E-Rw-Me@8Nxx7f8
zkE9uZc3gKw?`m-|o&ejllNq6o<A4-}47m9hC17w9v@|t(f)vFs<`@nEfx%g>w}njz
z2Y0j}ptG%@0D6vUm9^B`SX*Bcs9jY%v0|xJ2ODR_`6^Jmt>*HYA=tG78&plr4ycFM
z3L-&I)e=ClI@qMJs74+Zf2CDZgDumw7NCooLD2=U@1Ij|1!_$V;x&s42D+ftxx`it
z)g!x@&Es2uHB^r+maGLc5vZ(NQKD&SJsCuyWuPZy{6;<XMJuqMEw@l)d6jne{CaR;
zJ1n;q%OL~};etChv}+85iOxp51{<ubD%2^pDr{ZZ$e~$kEvxQsxUaVn#V#m{RX_w+
z*H{x!T-aG?TmkER&0U8r2zR^gk^P0kma1sDrxz;Las{j{G>&~R>i^uRUyp91iVYyC
zmRk4rHnxM+jmFaw(Wcd4U<}OftGOCFb5WIQuLti`vnBv(DLQp!BgWuj)2nptP<<x=
z*qu$qjv4@>RGKU`Q3~K&=YLug4@>m-FSs2{=#3SgHU9K%KLa%HGXnm9&rZR6P=#6z
zxn+G=yBKnPyhA>c&$*FQaxyX<k4Fx6ZH;d2Y;~Q)Ow4OdCDZwXk<M^ecylC~j;Hbo
zM`>|lB9lokry`lG7jd%5crJpcCX=^r4!3U!ca&|W)F&T+!trbtBcAgT31=!igJ)0g
zP}a!-34^FjjS~+KC-6O)fhyRbl9_mJ21r1iRBAXmY3RgcFF3~Z9uLlC@j@k7;pVXW
zm`MW00}a;jb;sQK$UP=S0=c8Fe<#ow+E-t(4C3b(eMwohZ|?kqiY0)XbDbM=hv5XM
zqPdxj>rLjTRCH)0n##lvL;;LW=94KenT}@j5I?K|iKvrKn7-}tTsTFJD>z|#j?tt0
zJTa8^Hg}AxtP7{bOg?A2+v866g8u&A-kv=JTG<V5(sQ)Bd^(q$PCE%3Pi1N6pr>+k
zv6PBVrDD_6+#FTm)TvE?g|2ZG-8DSY+cO-E=JJ!#q3G{0S|-9OIvaBjIBrhO#oT0U
zGUezX;Gww>MiRQ3&E#-cGkH(B`rwP>Xd(qs$i?Q2--*f5xrCa6hMtON^5A@XhaOw#
zEVfXoOnMp)<B*kfQHL@XKakHxaVn~4W@;+ucq-w}X(J^%vfyNNDxZ!Q&f<m}+C4NL
z9q;LdFu@T&ohgL5Ka+<p!SE&1NiP{oC2w@1S*6D?hqPCa95ojRdNlCxPu@hcZZZRd
za|mOQOsiQZoj0A=V>2*3ynCeIjG+mnQMeO)?02Tj2;n4vA>y8lLbPF`Icd+#nnDGL
zsrXFHRSR{qXZNn*foNaPaNoo*3|t1*b`mEC&jXxkn%;@SfE-3w_a^JPYC1bJI_Ifu
z76uCDSjKg(O6GDfZ?A$*(cJ2brBdj;(KC?F&$e$hYRnYXV^kbUoTRRsNWdVsX=8dm
zXrbR>3Ko_K+9-B<CNt|?<+(k1FT=Mou1a7>BUlxQ$GlkDi6opkCzZ*<h<K6NR;{ZQ
zj7D&!CK5?EG7>gBS~LzKncStVW~<Z=^8jVdq>E-_iFTMKP;{7Lvne`Fu|=^bct2!<
zGm=X1vX9PrxO5707p{$b{W1HCLo>H;Y@la+AUZZMIx+^4jpp>;R-B;v1}Yj$C!z@l
zE~N5tv>0vUFz3{+-4k}-rcJiq<n4~O_RhA;+S~2sG1xQ)W1hiVFKe+|XT5ydxnkN$
zJ8m)#?AA`mVs3oq3W!82a?^I}$Y#5BYILZtI9G62OT)Pm);(^8dMBF9dbBaX0>)A2
z*{sqy4U2<UwzH#SBcIxLwP`cTS6K_S+1b-KJ~9^V8`-^gU~JFO$Zp@9-r6}1uFX2?
zGCkgUW6^uG!sYDYKEsaD;wrP_WKszpDO?{rhlU4K45!x|W?BiX>*1k2<EpS#>2(>+
z@ngX(23%Cxn5S2jbI^(BJ%^qLu$1+>K|8R?;Fg8Ms6$BmyVhs|T(E+HEq1IJp!kdv
zKXBFfSg#v9;P6az^^_<qSlFR)tIJMj2V=Pz*sG`Y-l(Er2sW-yUXJv9fw>>gyU}<i
zm7h%)A_<Fo?rbBhH(%`S)=qp}=3zr|a4FG)Qm-<#tFLdH-3;@$<*bvJU*FCn!n$!x
zSqJN^Rp(ZRj>5|Yo~QLG7)pIM?ys$@m_DaAG*F}OcDkq?pITARFk$+Qajdp(Pc6Jz
zhI5BzVevxgxu%?9%5_q)u!oP}a00d*6`suHRM^cRgW~PsE?`**keKV`vjpJ-CmM6z
z*dYRRE06{SVR);6nO35zU5c>`>Q6Y6`Dxf9rZV7)rel+n@JhjLGz1Mw_?R0@Pdn&w
zQAHUD-WVO$3Y}8ncxD#&R25EVJSPmJ)e1d}A0R!>Omxb{75Mu}HmHH&RB)wGlDdhL
zZ~Jv6QgBuS9*?;)4PIoBTTwYA8-7UgSpw$|CY%e17j8@tg!G;%&d8;$OF#m3%Jy0*
z)%lf3|J$Jw?RWTvkVX*FEv6{s>_1hj0jNP*#_v`V&~v@en(jS)d^gatPgwoKX3XJs
zP3KD4P@)aC&+*#_7~C10(f{LQpXEVBC&}*tw4D8BeKlj&IX1N6hi$n%+fM?9reyq|
zA^UAm=T9>J38*Y*znkn2QezuRyx^4fZvqTW$?^L+*=KnW(TQN)27#mSLrnUAYJv7r
z-`&u*od0*0i67p~b9;{8<76L-lJpMQZ{r43%l@<QJP_sV&y)RkmKaGJ3M5$_+y53|
zQYS#l*0;%Uu~9hPA$q3l%VjW>+oeBBD24IyCus{m8I|+@=w+srO$}^d@mV7M|0!Tn
zCqU{Avfqu2FG<<Ig}QR~pV?*_4N_YhN_>V%`=<btIsw8<GM!#DMIo26{|Ytb?0-P^
zZ>0t{$l>L;wErPsQYS#_4YGf|s1&SvA7snfKZw^qka+#tK;xW|_Nzf5>SQ?}b=pqz
zZU!$ueTnUJxom;<kLjC!rCNP$k>qw<uA=rrOubI+CC=>_Z=?2NnyZu4em@IR$^B<|
z6SOZEzvC3YK@zl~#LooWp4Z<}z~tTokm`baO-$Q_!-CcEkiKKP4{XfA9yzxbXuQmp
z_7?$G&OU!j=oiYReP~`bp<JbU_jI|+Kw%V1YXjvy0km9%(QmkL6=?(TmQS8rjsac)
zHS;8odkLq&8BcGeqEK1k!}&Rm@4A-x)TW#BI6kWJ%7SIKi$Z}y)OC|W7Vzm|@M}O=
z<{Petc)XAaDB9F?jmb_xf&SQp`Jb-=pB}2#ML<6Z{D`3g3TNY)DNy+KR9Y9%J7Ot@
zT)=#$JEJ0?caSq+kk=pI&Zr0!P8g+C0rSDF1bjtvRjR85Rq98C3s|!O^P#V#3ZDmX
zS6RStyfOV6e*V~M5VA@TEr)Mh0PkM_PcDG}=>qt33*aXgz$;)Km-BP|0(kQR_|^sR
zvz%}B{dDx2Yc{ui@;P{*t8k9TYpufJ`hS1D8og$?y&ZM%O%ni}`1eE#h%UM_gX`5I
z)2711eQ*pM?rS?sZwj})BRhBQ8PGSMa4+aPqAze?P`pqmd&O3)F1^GlxprJgh_1Eh
zrsphDboq4_DZEoyNaV~*qJ<<2cf<PDSKkg5uAnq$?o;rOxFEroGo4_X>AmzL{A)Bw
z{5Z$wl?^|}`3{2RKQQ8_>GfCtMao*Ad<W2&P|rH}v7XBjgoOBd_%Ys(ASA@`*~0i$
z2tq=9Bm5ZOiy$P#@tMImK2I<qjz?q0a|l90|M4u%_(23A;d7)JevE$}K}aZ%eP{d*
z1R+WJV+PiCTYzTyrwK=Sd@o>}-vv-V{vLuKCOQsi3|}o-9=>AggnBN9ALH=BQzz7c
zb&MMnpIOCs5yr4Y9G~j@;fIO$EX4g!CmSmvAx^KFn&%90^wTB)&(4^zAM7*o{6s|@
zpXJ{~XCbjI#`jWS@Iy8x#-Adb`-?cv)uSi`3FihT#Oakz^B3#9sONoj7}BMtDCpOJ
z*8$iLfxm)5f;3=?g8Uy*M?WX<FXBKza!gT>Uq$jMfgd5B=O_0!L-IEYdH8^@)8_?#
z3E_7L{2J23&sWwzNauwognT>2`5OYque6w+HASIcpC<e}0)Lh4z9jHx$<MzL`18cS
zA@FM{o+kyqoAkdW@I&PP+X7!s_`eJM`=tLJf%E?IzQA82`Huwt2=%Li;=ys|`DFfj
zwKxwuX#Ot|@?WBUtrYl&q`yhvkC7i80{>_7bBDmINzbPQzL@0q3Va>KZBpP7@-rjw
zTgacA1b!{ex4Q(+&x!j4K1g<t3H*<V=X)=Xa~I(+2>Fl6pC1YQE%N^#1^(B>zb$a{
z*TG7?EAZb?Jbx?jbE&^I6j%1Mm&Uz8;CQ!)X`{fuNBTPieuV5@Dewx?KP>P?gkLT2
zI>M&}zJl<az%L~HR)PN|@kazcMsavh;P?!{^r*o5h<{q(TZsQFfw#~&zAAA1dlF0`
znnxV}&l0{=;M|`T0{=UbUoG$-)3~e`_{SvQBJc)^Lqy=y<o8yAe}(k)2%MiEDS>~N
z^xPou$B92I@P|!!)DeL%qIljf@Jhn@In427f1VTaTPQx?7dZZrD5lp0UQ7Dl6gcbo
zrNDPnf8P~2>;G8b=aJn@X#TSQtmjgJS5y1X3H)-hd%eIPFx^sf0*@1Zm%v%imjzx=
zahMnQ4)Xu&0{;xnljjA_dR`VdKhJ(5@Jpy)|03`f(tk?e_Y(e|z^S|D<q{Z<^Cb1_
zT<QnoLDJJ8@D0Rs$?~5j18qY73evw_;J=}M4GR1<k{=g1{%t>|{Q|EiKW7C#K=?s{
zpCUcC37q5qC4uuf<Y9sTJ^A@9fp4U^zaa3N2>*e=e?fk}A@Eh?=UW2*CD}biI5sCy
z9iP)e{v%p1yno<$;XOVlUf+nH&mfdMPkDR?$nF{{(JpmKw`%s`=+8|WRf@+S<<Ye+
z!gmSzFA%=Zhf`N{O@eUt=Xv6<_sOH(dD3&Iz`srSeL~O6gg@Yu_un}_w*dZvPY=ee
zjr8!m!2bI6{7lI2C;7L9em*1pmk-Bt94GTnQ|8>~@9z?Nj&XdNXi}^c_&Rh9(nf(N
zDcIWuen0uKOW=3VyyEu=wtElRy-vvYk$(Oj!t#4*66J(E`**Xz@jo9h-6im+s9#?e
z_?6`6JmDzjKNmkQ<ewmaUh&EESs3m9SjfLa`rq`)`^W2)kpB$nf6ph65W(tWA-^7t
zLNfmhSKPPxefK<?WE@YtKldl>FAa%?c}_CUcL7{V9PeZ>G0yK5c$b1n;_U`5;5QJz
zeF3~*;5QRLwg7&Oz;7qsSpc6EIG?v^TI=WFGLpf<f8XMdn@uv<UydO`y5KnQII;}m
z(<ChQX9?%`ZkA_1d0&xsc^_q*&nexck8$qXpupD>zhB_Qsu_W^e)d=D=jSBjypJ9A
z>G8+&eu4A;JnzFfh6o)OcoXp#qd`bm`1MctaK9cKg(0D=U!LbD<MSv4Y19;2*01M(
E06R)Gl>h($

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_centos7-x86_64/libemu.so b/builddir/O.3.15.2_centos7-x86_64/libemu.so
new file mode 100755
index 0000000000000000000000000000000000000000..1ab359bac40cdee69a7f6b5e0220887f7f4277c7
GIT binary patch
literal 83617
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
ANB{r;

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_eldk56-e500v2/.dependencies_includes b/builddir/O.3.15.2_eldk56-e500v2/.dependencies_includes
new file mode 100644
index 0000000..28a7f21
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/.dependencies_includes
@@ -0,0 +1 @@
+DEPENDENCIES_INCLUDES = -I/opt/epics/modules/scanning/2.0.5/3.15.2/include -I/opt/epics/modules/scanning/2.0.5/3.15.2/include/os/Linux -I/opt/epics/modules/scanning/2.0.5/3.15.2/include/os/default -I/opt/epics/modules/streamdevice/2.7.1/3.15.2/include -I/opt/epics/modules/streamdevice/2.7.1/3.15.2/include/os/Linux -I/opt/epics/modules/streamdevice/2.7.1/3.15.2/include/os/default -I/opt/epics/modules/asyn/4.27.0/3.15.2/include -I/opt/epics/modules/asyn/4.27.0/3.15.2/include/os/Linux -I/opt/epics/modules/asyn/4.27.0/3.15.2/include/os/default -I/opt/epics/modules/ecat2db/0.3.1/3.15.2/include -I/opt/epics/modules/ecat2db/0.3.1/3.15.2/include/os/Linux -I/opt/epics/modules/ecat2db/0.3.1/3.15.2/include/os/default -I/opt/epics/modules/sscan/2.10.1/3.15.2/include -I/opt/epics/modules/sscan/2.10.1/3.15.2/include/os/Linux -I/opt/epics/modules/sscan/2.10.1/3.15.2/include/os/default -I/opt/epics/modules/busy/1.6.0/3.15.2/include -I/opt/epics/modules/busy/1.6.0/3.15.2/include/os/Linux -I/opt/epics/modules/busy/1.6.0/3.15.2/include/os/default -I/opt/epics/modules/calc/3.6.1/3.15.2/include -I/opt/epics/modules/calc/3.6.1/3.15.2/include/os/Linux -I/opt/epics/modules/calc/3.6.1/3.15.2/include/os/default -I/opt/epics/modules/pcre/8.36.0/3.15.2/include -I/opt/epics/modules/pcre/8.36.0/3.15.2/include/os/Linux -I/opt/epics/modules/pcre/8.36.0/3.15.2/include/os/default -I/opt/epics/modules/seq/2.1.10/3.15.2/include -I/opt/epics/modules/seq/2.1.10/3.15.2/include/os/Linux -I/opt/epics/modules/seq/2.1.10/3.15.2/include/os/default -I/opt/epics/modules/dataacquisition/1.0.1/3.15.2/include -I/opt/epics/modules/dataacquisition/1.0.1/3.15.2/include/os/Linux -I/opt/epics/modules/dataacquisition/1.0.1/3.15.2/include/os/default -I/opt/epics/modules/fastacquisition/1.1.0/3.15.2/include -I/opt/epics/modules/fastacquisition/1.1.0/3.15.2/include/os/Linux -I/opt/epics/modules/fastacquisition/1.1.0/3.15.2/include/os/default 
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.d b/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.d
new file mode 100644
index 0000000..e3a9c42
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.d
@@ -0,0 +1,17 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.dc b/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.dc
new file mode 100644
index 0000000..45a1cb2
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.dc
@@ -0,0 +1,38 @@
+EMU_CALCULS.o: ../.././src/EMU_CALCULS.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/timex.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/math.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_val.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_valf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_vall.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/inf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/nan.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathdef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathcalls.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.o b/builddir/O.3.15.2_eldk56-e500v2/EMU_CALCULS.o
new file mode 100644
index 0000000000000000000000000000000000000000..851b58d8bdfca95f19095a43612c18b75fdbe72b
GIT binary patch
literal 5744
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
KXYfmhU;8hO=p`)x

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c
new file mode 100644
index 0000000..61f7985
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.c
@@ -0,0 +1,339 @@
+/* Generated with snc from EMU_MTR-CHECKBRAKE.i */
+
+/* Program "checkMTRBrake" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrGet = 0;
+# line 19 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short statusMTRMov = 0;
+# line 23 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short ErrorBrakeMtrSet = 0;
+# line 27 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrCMD = 0;
+# line 31 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short brakeMtrGET = 0;
+# line 37 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short AbortscanMtrCMD = 0;
+# line 41 "../.././src/EMU_MTR-CHECKBRAKE.st"
+static	short countErrors = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-CHECKBRAKE.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 46 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 48 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nWAIT\n");
+# line 49 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 50 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (0.1));
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 56 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_efTestAndClear(ssId, 1/*ErrorBrakeMtrEvent*/) && (ErrorBrakeMtrGet == 1) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 58 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : BRAKE OFF \n");
+# line 59 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			brakeMtrCMD = 1;
+# line 60 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 3/*brakeMtrCMD*/, 0);
+# line 61 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_delay(ssId, 0);
+# line 62 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			ErrorBrakeMtrSet = 0;
+# line 63 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 2/*ErrorBrakeMtrSet*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "count" in state set "ss1" ******/
+
+/* Delay function for state "count" in state set "ss1" */
+static void D_ss1_0_count(SS_ID ssId, struct UserVar *pVar)
+{
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 1, (1.0));
+}
+
+/* Event function for state "count" in state set "ss1" */
+static seqBool E_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 69 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (countErrors > 3)
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+# line 74 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 0)) && (statusMTRMov == 1))
+	{
+		*pNextState = 1;
+		*pTransNum = 1;
+		return TRUE;
+	}
+# line 80 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if ((seq_delay(ssId, 1)) && (statusMTRMov == 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 2;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "count" in state set "ss1" */
+static void A_ss1_0_count(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 71 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : STOP MEASURE \n");
+		}
+		return;
+	case 1:
+		{
+# line 76 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+# line 77 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	case 2:
+		{
+# line 82 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = countErrors + 1;
+		}
+		return;
+	}
+}
+
+/****** Code for state "stopMeasure" in state set "ss1" ******/
+
+/* Delay function for state "stopMeasure" in state set "ss1" */
+static void D_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "stopMeasure" in state set "ss1" */
+static seqBool E_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 89 "../.././src/EMU_MTR-CHECKBRAKE.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "stopMeasure" in state set "ss1" */
+static void A_ss1_0_stopMeasure(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 90 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			printf("\n ABORT\n");
+# line 91 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			AbortscanMtrCMD = 1;
+# line 92 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			seq_pvPut(ssId, 5/*AbortscanMtrCMD*/, 0);
+# line 93 "../.././src/EMU_MTR-CHECKBRAKE.st"
+			countErrors = 0;
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_GET", (size_t)&ErrorBrakeMtrGet, "ErrorBrakeMtrGet", "short", 1, 3, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 4, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:CURRENT_ERR_SET", (size_t)&ErrorBrakeMtrSet, "ErrorBrakeMtrSet", "short", 1, 5, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 6, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 7, 2, 1, 0, 0},
+	{"{DEVICE}:MTR-ABORT.PROC", (size_t)&AbortscanMtrCMD, "AbortscanMtrCMD", "short", 1, 8, 0, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x0000000a,
+};
+static const seqMask	EM_ss1_0_count[] = {
+	0x00000010,
+};
+static const seqMask	EM_ss1_0_stopMeasure[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "count",
+	/* action function */   A_ss1_0_count,
+	/* event function */    E_ss1_0_count,
+	/* delay function */    D_ss1_0_count,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_count,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "stopMeasure",
+	/* action function */   A_ss1_0_stopMeasure,
+	/* event function */    E_ss1_0_stopMeasure,
+	/* delay function */    D_ss1_0_stopMeasure,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_stopMeasure,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  4,
+	/* number of delays */  2
+	},
+};
+
+/* Program table (global) */
+seqProgram checkMTRBrake = {
+	/* magic number */      2001010,
+	/* program name */      "checkMTRBrake",
+	/* channels */          G_channels,
+	/* num. channels */     6,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  2,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void checkMTRBrakeRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&checkMTRBrake);
+}
+epicsExportRegistrar(checkMTRBrakeRegistrar);
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d
new file mode 100644
index 0000000..0b214ca
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.d
@@ -0,0 +1,19 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seqCom.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvType.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsThread.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdThread.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsEvent.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdEvent.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seq_release.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc
new file mode 100644
index 0000000..25e5619
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.dc
@@ -0,0 +1,51 @@
+EMU_MTR-CHECKBRAKE.o: EMU_MTR-CHECKBRAKE.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/string.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/libio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/_G_config.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/wchar.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stdarg.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdio_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sys_errlist.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/syslimits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix1_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/local_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/linux/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix2_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ seqCom.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdlib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitflags.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitstatus.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap-16.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sigset.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/sysmacros.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/pthreadtypes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/alloca.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i
new file mode 100644
index 0000000..3ec36e0
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.i
@@ -0,0 +1,102 @@
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+# 1 "<command-line>"
+# 1 "/opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-CHECKBRAKE.st"
+
+
+
+
+
+program checkMTRBrake
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short ErrorBrakeMtrGet;
+assign ErrorBrakeMtrGet to "{PREFIX}:PBI-EM:CURRENT_ERR_GET";
+monitor ErrorBrakeMtrGet;
+evflag ErrorBrakeMtrEvent;
+sync ErrorBrakeMtrGet ErrorBrakeMtrEvent;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short ErrorBrakeMtrSet;
+assign ErrorBrakeMtrSet to "{PREFIX}:PBI-EM:CURRENT_ERR_SET";
+monitor ErrorBrakeMtrSet;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+short AbortscanMtrCMD;
+assign AbortscanMtrCMD to "{DEVICE}:MTR-ABORT.PROC";
+monitor AbortscanMtrCMD;
+
+short countErrors=0;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     printf("\nWAIT\n");
+     ErrorBrakeMtrSet=0;
+           pvPut(ErrorBrakeMtrSet);
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(ErrorBrakeMtrEvent)&&(ErrorBrakeMtrGet==1)&&(delay(0.1)))
+       {
+       printf("\nERRROR CURRENT : BRAKE OFF \n");
+       brakeMtrCMD=1;
+       pvPut(brakeMtrCMD);
+       delay(1);
+       ErrorBrakeMtrSet=0;
+       pvPut(ErrorBrakeMtrSet);
+       }state count
+      }
+
+ state count
+        {
+        when(countErrors>3)
+       {
+       printf("\nERRROR CURRENT : STOP MEASURE \n");
+       }state stopMeasure
+
+   when((delay(1.0)) && (statusMTRMov==1))
+       {
+       printf("\nERRROR CURRENT : PROBLEM SOLVED \n");
+       countErrors=0;
+       }state waiting
+
+   when((delay(1.0)) && (statusMTRMov==0))
+       {
+       countErrors=countErrors+1;
+       }state waiting
+   }
+
+
+ state stopMeasure
+   {
+   when(delay(1.0)){
+   printf("\n ABORT\n");
+   AbortscanMtrCMD=1;
+   pvPut(AbortscanMtrCMD);
+   countErrors=0;
+   }state waiting
+   }
+
+}
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.o b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE.o
new file mode 100644
index 0000000000000000000000000000000000000000..66aec5b2d7560113d9321a05843e9a9203884340
GIT binary patch
literal 6752
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

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd
new file mode 100644
index 0000000..d71c5ef
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-CHECKBRAKE_snl.dbd
@@ -0,0 +1 @@
+registrar (checkMTRBrakeRegistrar)
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.c b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.c
new file mode 100644
index 0000000..0b2209c
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.c
@@ -0,0 +1,394 @@
+/* Generated with snc from EMU_MTR-HOME_AUTO.i */
+
+/* Program "homeMtrAuto" */
+#include <string.h>
+#include <stddef.h>
+#include <stdio.h>
+#include <limits.h>
+#include "epicsTypes.h"
+#include "seqCom.h"
+
+/* Variable declarations */
+# line 13 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short HOMCPTFLAG = 0;
+# line 17 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short statusMTRMov = 0;
+# line 21 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPlaced = 0;
+# line 27 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrStop = 0;
+# line 31 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeCMD = 0;
+# line 35 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short mtrPosCons = 0;
+# line 39 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrCMD = 0;
+# line 43 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short brakeMtrGET = 0;
+# line 50 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanPS_Sts = 0;
+# line 55 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short scanMTR_Sts = 0;
+# line 61 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short homeSTART = 0;
+# line 68 "../.././src/EMU_MTR-HOME_AUTO.st"
+static	short plimSTATUS = 0;
+
+/* C code definitions */
+# line 8 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdio.h>
+# line 9 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <string.h>
+# line 10 "../.././src/EMU_MTR-HOME_AUTO.st"
+#include <stdlib.h>
+
+/* Program init func */
+static void G_prog_init(struct UserVar *pVar)
+{
+}
+
+/****** Code for state "init" in state set "ss1" ******/
+
+/* Delay function for state "init" in state set "ss1" */
+static void D_ss1_0_init(SS_ID ssId, struct UserVar *pVar)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "init" in state set "ss1" */
+static seqBool E_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 77 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0) && (seq_pvConnectCount(ssId) == seq_pvChannelCount(ssId)))
+	{
+		*pNextState = 1;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "init" in state set "ss1" */
+static void A_ss1_0_init(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 79 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 80 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 81 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nWAIT\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "waiting" in state set "ss1" ******/
+
+/* Delay function for state "waiting" in state set "ss1" */
+static void D_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "waiting" in state set "ss1" */
+static seqBool E_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 87 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 3/*homeSTARTEvent*/) && (homeSTART == 1) && (plimSTATUS == 0))
+	{
+		*pNextState = 2;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "waiting" in state set "ss1" */
+static void A_ss1_0_waiting(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 89 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nSTART HOME PROCEDURE\n");
+		}
+		return;
+	}
+}
+
+/****** Code for state "startHOME" in state set "ss1" ******/
+
+/* Delay function for state "startHOME" in state set "ss1" */
+static void D_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "startHOME" in state set "ss1" */
+static seqBool E_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 96 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if ((scanPS_Sts == 0) && (scanMTR_Sts == 0) && (statusMTRMov == 0) && (seq_delay(ssId, 0)))
+	{
+		*pNextState = 3;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "startHOME" in state set "ss1" */
+static void A_ss1_0_startHOME(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 97 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\n GO HOME\n");
+# line 98 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 1;
+# line 99 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+# line 100 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 101 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 1;
+# line 102 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 103 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 104 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 105 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "limitON" in state set "ss1" ******/
+
+/* Delay function for state "limitON" in state set "ss1" */
+static void D_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar)
+{
+}
+
+/* Event function for state "limitON" in state set "ss1" */
+static seqBool E_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 111 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_efTestAndClear(ssId, 4/*plimSTATUSEvent*/) && (plimSTATUS == 1))
+	{
+		*pNextState = 4;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "limitON" in state set "ss1" */
+static void A_ss1_0_limitON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 113 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nLIMIT HIGH\n");
+# line 114 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 115 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+		}
+		return;
+	}
+}
+
+/****** Code for state "breakON" in state set "ss1" ******/
+
+/* Delay function for state "breakON" in state set "ss1" */
+static void D_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	seq_delayInit(ssId, 0, (1.0));
+}
+
+/* Event function for state "breakON" in state set "ss1" */
+static seqBool E_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int *pTransNum, int *pNextState)
+{
+# line 121 "../.././src/EMU_MTR-HOME_AUTO.st"
+	if (seq_delay(ssId, 0))
+	{
+		*pNextState = 0;
+		*pTransNum = 0;
+		return TRUE;
+	}
+	return FALSE;
+}
+
+/* Action function for state "breakON" in state set "ss1" */
+static void A_ss1_0_breakON(SS_ID ssId, struct UserVar *pVar, int transNum, int *pNextState)
+{
+	switch(transNum)
+	{
+	case 0:
+		{
+# line 123 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nINIT POSITION\n");
+# line 124 "../.././src/EMU_MTR-HOME_AUTO.st"
+			HOMCPTFLAG = 0;
+# line 125 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 0/*HOMCPTFLAG*/, 0);
+# line 126 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_delay(ssId, 0);
+# line 127 "../.././src/EMU_MTR-HOME_AUTO.st"
+			printf("\nBRAKE ON\n");
+# line 128 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeCMD = 1;
+# line 129 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 4/*homeCMD*/, 0);
+# line 130 "../.././src/EMU_MTR-HOME_AUTO.st"
+			homeSTART = 0;
+# line 131 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 10/*homeSTART*/, 0);
+# line 132 "../.././src/EMU_MTR-HOME_AUTO.st"
+			brakeMtrCMD = 0;
+# line 133 "../.././src/EMU_MTR-HOME_AUTO.st"
+			seq_pvPut(ssId, 6/*brakeMtrCMD*/, 0);
+		}
+		return;
+	}
+}
+
+/************************ Tables ************************/
+
+/* Channel table */
+static seqChan G_channels[] = {
+	/* chName, offset, varName, varType, count, eventNum, efId, monitored, queueSize, queueIndex */
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG", (size_t)&HOMCPTFLAG, "HOMCPTFLAG", "short", 1, 5, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.MOVN", (size_t)&statusMTRMov, "statusMTRMov", "short", 1, 6, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS", (size_t)&mtrPlaced, "mtrPlaced", "short", 1, 7, 1, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}.SPMG", (size_t)&mtrStop, "mtrStop", "short", 1, 8, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD", (size_t)&homeCMD, "homeCMD", "short", 1, 9, 0, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}", (size_t)&mtrPosCons, "mtrPosCons", "short", 1, 10, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_SET", (size_t)&brakeMtrCMD, "brakeMtrCMD", "short", 1, 11, 0, 1, 0, 0},
+	{"{PREFIX}:PBI-EM:VER-BRAKE_GET", (size_t)&brakeMtrGET, "brakeMtrGET", "short", 1, 12, 2, 1, 0, 0},
+	{"{DEVICE}:PS.BUSY", (size_t)&scanPS_Sts, "scanPS_Sts", "short", 1, 13, 0, 1, 0, 0},
+	{"{DEVICE}:MTR.BUSY", (size_t)&scanMTR_Sts, "scanMTR_Sts", "short", 1, 14, 0, 1, 0, 0},
+	{"{DEVICE}:PROC-AUTO-HOME", (size_t)&homeSTART, "homeSTART", "short", 1, 15, 3, 1, 0, 0},
+	{"{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS", (size_t)&plimSTATUS, "plimSTATUS", "short", 1, 16, 4, 1, 0, 0}
+};
+
+/* Event masks for state set "ss1" */
+static const seqMask	EM_ss1_0_init[] = {
+	0x00000000,
+};
+static const seqMask	EM_ss1_0_waiting[] = {
+	0x00018008,
+};
+static const seqMask	EM_ss1_0_startHOME[] = {
+	0x00006040,
+};
+static const seqMask	EM_ss1_0_limitON[] = {
+	0x00010010,
+};
+static const seqMask	EM_ss1_0_breakON[] = {
+	0x00000000,
+};
+
+/* State table for state set "ss1" */
+static seqState G_ss1_states[] = {
+	{
+	/* state name */        "init",
+	/* action function */   A_ss1_0_init,
+	/* event function */    E_ss1_0_init,
+	/* delay function */    D_ss1_0_init,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_init,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "waiting",
+	/* action function */   A_ss1_0_waiting,
+	/* event function */    E_ss1_0_waiting,
+	/* delay function */    D_ss1_0_waiting,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_waiting,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "startHOME",
+	/* action function */   A_ss1_0_startHOME,
+	/* event function */    E_ss1_0_startHOME,
+	/* delay function */    D_ss1_0_startHOME,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_startHOME,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "limitON",
+	/* action function */   A_ss1_0_limitON,
+	/* event function */    E_ss1_0_limitON,
+	/* delay function */    D_ss1_0_limitON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_limitON,
+	/* state options */     (0)
+	},
+	{
+	/* state name */        "breakON",
+	/* action function */   A_ss1_0_breakON,
+	/* event function */    E_ss1_0_breakON,
+	/* delay function */    D_ss1_0_breakON,
+	/* entry function */    0,
+	/* exit function */     0,
+	/* event mask array */  EM_ss1_0_breakON,
+	/* state options */     (0)
+	},
+};
+
+/* State set table */
+static seqSS G_state_sets[] = {
+	{
+	/* state set name */    "ss1",
+	/* states */            G_ss1_states,
+	/* number of states */  5,
+	/* number of delays */  1
+	},
+};
+
+/* Program table (global) */
+seqProgram homeMtrAuto = {
+	/* magic number */      2001010,
+	/* program name */      "homeMtrAuto",
+	/* channels */          G_channels,
+	/* num. channels */     12,
+	/* state sets */        G_state_sets,
+	/* num. state sets */   1,
+	/* user var size */     0,
+	/* param */             "",
+	/* num. event flags */  4,
+	/* encoded options */   (0 | OPT_CONN | OPT_NEWEF),
+	/* init func */         G_prog_init,
+	/* entry func */        NULL,
+	/* exit func */         NULL,
+	/* num. queues */       0
+};
+
+/* Register sequencer commands and program */
+#include "epicsExport.h"
+static void homeMtrAutoRegistrar (void) {
+    seqRegisterSequencerCommands();
+    seqRegisterSequencerProgram (&homeMtrAuto);
+}
+epicsExportRegistrar(homeMtrAutoRegistrar);
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.d b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.d
new file mode 100644
index 0000000..5374162
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.d
@@ -0,0 +1,19 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seqCom.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvAlarm.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/pvType.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/epicsThread.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdThread.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsEvent.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdEvent.h \
+ /opt/epics/modules/seq/2.1.10/3.15.2/include/seq_release.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc
new file mode 100644
index 0000000..75e936a
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.dc
@@ -0,0 +1,51 @@
+EMU_MTR-HOME_AUTO.o: EMU_MTR-HOME_AUTO.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/string.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/libio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/_G_config.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/wchar.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stdarg.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdio_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sys_errlist.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include-fixed/syslimits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix1_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/local_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/linux/limits.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/posix2_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/xopen_lim.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ seqCom.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdlib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitflags.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitstatus.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap-16.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sigset.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/sysmacros.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/pthreadtypes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/alloca.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdlib-float.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.i b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.i
new file mode 100644
index 0000000..79348df
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.i
@@ -0,0 +1,142 @@
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+# 1 "<command-line>"
+# 1 "/opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h" 1 3 4
+# 1 "<command-line>" 2
+# 1 "../.././src/EMU_MTR-HOME_AUTO.st"
+
+
+
+
+
+program homeMtrAuto
+
+%%#include <stdio.h>
+%%#include <string.h>
+%%#include <stdlib.h>
+
+
+short HOMCPTFLAG;
+assign HOMCPTFLAG to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCPTFLAG";
+monitor HOMCPTFLAG;
+
+short statusMTRMov;
+assign statusMTRMov to "{PMACPREFIX}:{MOTOR_NAME1}.MOVN";
+monitor statusMTRMov;
+
+short mtrPlaced;
+assign mtrPlaced to "{PMACPREFIX}:{MOTOR_NAME1}-AXISSTS";
+monitor mtrPlaced;
+evflag mtrPlacedEvent;
+sync mtrPlaced mtrPlacedEvent;
+
+short mtrStop;
+assign mtrStop to "{PMACPREFIX}:{MOTOR_NAME1}.SPMG";
+monitor mtrStop;
+
+short homeCMD;
+assign homeCMD to "{PMACPREFIX}:{MOTOR_NAME1}-HOMCMD";
+monitor homeCMD;
+
+short mtrPosCons;
+assign mtrPosCons to "{PMACPREFIX}:{MOTOR_NAME1}";
+monitor mtrPosCons;
+
+short brakeMtrCMD;
+assign brakeMtrCMD to "{PREFIX}:PBI-EM:VER-BRAKE_SET";
+monitor brakeMtrCMD;
+
+short brakeMtrGET;
+assign brakeMtrGET to "{PREFIX}:PBI-EM:VER-BRAKE_GET";
+monitor brakeMtrGET;
+evflag brakeMtrGETEvent;
+sync brakeMtrGET brakeMtrGETEvent;
+
+
+short scanPS_Sts;
+assign scanPS_Sts to "{DEVICE}:PS.BUSY";
+monitor scanPS_Sts;
+
+
+short scanMTR_Sts;
+assign scanMTR_Sts to "{DEVICE}:MTR.BUSY";
+monitor scanMTR_Sts;
+
+
+
+short homeSTART;
+assign homeSTART to "{DEVICE}:PROC-AUTO-HOME";
+monitor homeSTART;
+evflag homeSTARTEvent;
+sync homeSTART homeSTARTEvent;
+
+
+short plimSTATUS;
+assign plimSTATUS to "{PMACPREFIX}:{MOTOR_NAME1}-PENDLSTS";
+monitor plimSTATUS;
+evflag plimSTATUSEvent;
+sync plimSTATUS plimSTATUSEvent;
+
+ss ss1
+{
+ state init {
+            when (delay(1.0) && (pvConnectCount() == pvChannelCount()))
+     {
+     homeSTART=0;
+        pvPut(homeSTART);
+     printf("\nWAIT\n");
+     } state waiting
+     }
+
+ state waiting
+     {
+      when(efTestAndClear(homeSTARTEvent)&&(homeSTART==1)&&(plimSTATUS==0))
+       {
+       printf("\nSTART HOME PROCEDURE\n");
+       }state startHOME
+      }
+
+
+ state startHOME
+   {
+   when((scanPS_Sts==0) && (scanMTR_Sts==0) && (statusMTRMov==0) && (delay(1.0))){
+   printf("\n GO HOME\n");
+   brakeMtrCMD=1;
+   pvPut(brakeMtrCMD);
+   delay(1);
+   HOMCPTFLAG=1;
+   pvPut(HOMCPTFLAG);
+   delay(1);
+   homeCMD=1;
+   pvPut(homeCMD);
+   }state limitON
+   }
+
+ state limitON
+     {
+   when(efTestAndClear(plimSTATUSEvent)&&(plimSTATUS==1))
+    {
+    printf("\nLIMIT HIGH\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    }state breakON
+     }
+
+ state breakON
+     {
+   when(delay(1.0))
+    {
+    printf("\nINIT POSITION\n");
+    HOMCPTFLAG=0;
+    pvPut(HOMCPTFLAG);
+    delay(1);
+    printf("\nBRAKE ON\n");
+    homeCMD=1;
+    pvPut(homeCMD);
+    homeSTART=0;
+    pvPut(homeSTART);
+    brakeMtrCMD=0;
+    pvPut(brakeMtrCMD);
+    }state init
+           }
+
+}
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.o b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO.o
new file mode 100644
index 0000000000000000000000000000000000000000..758fd68e93de489bf2f3b4fe122545edc96af3c8
GIT binary patch
literal 7928
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
boU#Wm0@rE`Slqw6f!Crv7lSUczpnfr+>{5!

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd
new file mode 100644
index 0000000..1386530
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_MTR-HOME_AUTO_snl.dbd
@@ -0,0 +1 @@
+registrar (homeMtrAutoRegistrar)
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.d b/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.d
new file mode 100644
index 0000000..0939ede
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.d
@@ -0,0 +1,17 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.dc b/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.dc
new file mode 100644
index 0000000..94ada79
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.dc
@@ -0,0 +1,61 @@
+EMU_REPORT_FILE.o: ../.././src/EMU_REPORT_FILE.c \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdc-predef.h \
+ /opt/epics/bases/base-3.15.2/include/aSubRecord.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stddef.h \
+ /opt/epics/bases/base-3.15.2/include/epicsMutex.h \
+ /opt/epics/bases/base-3.15.2/include/epicsAssert.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdMutex.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTime.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/features.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/cdefs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/wordsize.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/gnu/stubs-32.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/time.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/typesizes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/timex.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/xlocale.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdTime.h \
+ /opt/epics/bases/base-3.15.2/include/registryFunction.h \
+ /opt/epics/bases/base-3.15.2/include/epicsExport.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/math.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_val.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_valf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/huge_vall.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/inf.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/nan.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathdef.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/mathcalls.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/string.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdlib.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitflags.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/waitstatus.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/endian.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/byteswap-16.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/types.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/select.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sigset.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/sys/sysmacros.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/pthreadtypes.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/alloca.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdlib-float.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/stdio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/libio.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/_G_config.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/wchar.h \
+ /opt/eldk-5.6/ifc1210/sysroots/i686-eldk-linux/usr/lib/powerpc-linux-gnuspe/gcc/powerpc-linux-gnuspe/4.8.2/include/stdarg.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/stdio_lim.h \
+ /opt/eldk-5.6/ifc1210/sysroots/ppce500v2-linux-gnuspe/usr/include/bits/sys_errlist.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.o b/builddir/O.3.15.2_eldk56-e500v2/EMU_REPORT_FILE.o
new file mode 100644
index 0000000000000000000000000000000000000000..37fe2400c79153181212dd8aaa5ded12a847a698
GIT binary patch
literal 1784
zcma)7%}Z2K6hChqZ7Qv)BqAY3Xu>ETDiVVlq~oZOW0Q@v33MEvI^=xt-ZMrJ=a~=^
zE(BXwQiux|EnJ4!M(m#mBwE?R+P1LYxpVL9DN!9b_x#T1J@4E*cS^DT9?hqbOB&Sz
zdkns6B8R9|L^M#4Y8bt&KRlQX_}02!Q{~D>3Y2zzYs<)Wt{fhewtv(*jOQG3UOD~+
z_-6wZYms^i_K7kgKjFz=m-(BVzp_Ug?R&JivP$ntUw#(3Ui&I_BUg*e({kx6Y;X6A
ztUFsy0I`A6+I}(OP&>!7eZHQSI<}*A*uQ#Y=kvnsr>2XM6cso(xnpnj?=(LX`5J95
zV4uhc5&B%`J{Pb*dVN3OP)N4xis)dhGZ`Bmj3w?5CSeWFG={T{;jvJ-uPq#J3qNF=
zrH7}cWlC=}+7@c)9T>VEYSklp3!4LAKiJoq7|P_v^Q8GPaow89+Nn`U+bqjTg-l~A
zrQ1f)CVebrr$`^QEYgK_B5$_<=Go4f&3dc!Smn@kKASai$js$!Lq{WxmYqsJAw7|Z
z>alp2o+?a>Cb+Zzr4R!7j#SA6z8&8rX2D;_R0mcVuxb(ukL?VY^Vx^{Mc1TW0m(3g
z#Y^fw-h`2-_pi8Hh~XS>ToAe<Rj(NaZ+{=4H-WjoO6lYNI>4MGjt`JyZh#eW4fZFb
zRQo=L?y2wMdq?e6JUiZp_f@xp^+#Z?%lm<}5iI8!Nn#)Kh?Edanpu|a$}vm@@Ckv$
zBH}Ln)<rE=&w=GPu&TYlGS5hos>jl&jQG?g#B#4^!Te6}w+F!|!Jc}RJm(FtB2`c6
zO1gGG9e!6vmMG@>r0%IN{NA~9JfG(Ua5s1zO>=%dnBzL64p=6{d*&qS@wvDJ|7lkN
zfPU(j&gXYq*?0(`2W3$n3b1iZSFeT`8hmrd{LiKC#{mT>79Wx?(Qwb*{+OPoqtBCR
zOk^zEFo(ydbLrtf`OKLfxa>?m*Eu#uMj?~7l9{a0YuM3g)8uEvwI%bt@noFv#Ejbr
zA**0!a`reCo~Gmmf7`CycjaZG(g84jPc`Zu-@(x+dl5eYWnaWKQuqxfrtmJVr@|-|
cQ1<}mDE`R!d~sI7&SS?p2z(V7Bx3x(03><rU;qFB

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.c b/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.c
new file mode 100644
index 0000000..a707bba
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.c
@@ -0,0 +1 @@
+char epics_emuLibRelease[] = "catane";
diff --git a/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.d b/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.d
new file mode 100644
index 0000000..28b2801
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.d
@@ -0,0 +1 @@
+emu_Versioncatane.o: emu_Versioncatane.c
diff --git a/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.o b/builddir/O.3.15.2_eldk56-e500v2/emu_Versioncatane.o
new file mode 100644
index 0000000000000000000000000000000000000000..ab90c900b777038ffb35c1d7bf949d37e1d3c4c4
GIT binary patch
literal 801
zcma)4Jx{|x40S?F3oL+OVkr}?1SeE=;A5kLE`^~Ih^<P(2_i^>dWQrP{FMGhHa2*^
zoI|$OlJlPJcRt6u&&%;u5C&9PKs(^I1kH)Qhz3s4r44E)k&SXqG#U=iI^EIDZLc#>
zC#p}R%tvOU7-(lDJ_)n>-I991QBtunq#g^~hp@~fMV9Ftg1oR=q2-aWQS$8WT=ugE
zA<w<)50n%CpO$~x_qvq@x&zeP@I|`ACHrANZoYcI7II<@Pfme6>#>i|f!m%laE<-K
zBf#0U5Ra^3+k(rT9J6l1#GB|CLrH?(gU{jX@HIHkx9NGUU-*Mu4=yJCBo?gl4f_3-
zBqN$tH6PdJaP``KE|y)nHYhe7@gKzXy>fqk6T80L!a|y)v$yG;o|&}B%lE7j(ywV^
Prl^e5c%ol)WHkK&cF8*`

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp b/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp
new file mode 100644
index 0000000..6efb851
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp
@@ -0,0 +1,68 @@
+/* THIS IS A GENERATED FILE. DO NOT EDIT! */
+/* Generated from ../../builddir/3.15.2/dbd/emu.dbd */
+
+#include <string.h>
+
+#include "epicsStdlib.h"
+#include "iocsh.h"
+#include "registryCommon.h"
+
+#define epicsExportSharedSymbols
+#include "shareLib.h"
+
+extern "C" {
+
+typedef void (*reg_func)(void);
+epicsShareExtern reg_func pvar_func_checkMTRBrakeRegistrar,
+    pvar_func_homeMtrAutoRegistrar, pvar_func_register_func_ANGLE_CALCUL,
+    pvar_func_register_func_CREATE_PROJXY,
+    pvar_func_register_func_CREATE_REPORT,
+    pvar_func_register_func_CREATE_TAB,
+    pvar_func_register_func_FACTOR_CONVERSION,
+    pvar_func_register_func_INIT_TAB;
+
+int emu_registerRecordDeviceDriver(DBBASE *pbase)
+{
+    static int executed = 0;
+    if (!pbase) {
+        printf("pdbbase is NULL; you must load a DBD file first.\n");
+        return -1;
+    }
+
+    if (executed) {
+        printf("Warning: Registration already done.\n");
+    }
+    executed = 1;
+
+    pvar_func_checkMTRBrakeRegistrar();
+    pvar_func_homeMtrAutoRegistrar();
+    pvar_func_register_func_ANGLE_CALCUL();
+    pvar_func_register_func_CREATE_PROJXY();
+    pvar_func_register_func_CREATE_REPORT();
+    pvar_func_register_func_CREATE_TAB();
+    pvar_func_register_func_FACTOR_CONVERSION();
+    pvar_func_register_func_INIT_TAB();
+    return 0;
+}
+
+/* emu_registerRecordDeviceDriver */
+static const iocshArg rrddArg0 = {"pdbbase", iocshArgPdbbase};
+static const iocshArg *rrddArgs[] = {&rrddArg0};
+static const iocshFuncDef rrddFuncDef =
+    {"emu_registerRecordDeviceDriver", 1, rrddArgs};
+static void rrddCallFunc(const iocshArgBuf *)
+{
+    emu_registerRecordDeviceDriver(*iocshPpdbbase);
+}
+
+} // extern "C"
+
+/*
+ * Register commands on application startup
+ */
+static int Registration() {
+    iocshRegister(&rrddFuncDef, rrddCallFunc);
+    return 0;
+}
+
+static int done = Registration();
diff --git a/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp.tmp b/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp.tmp
new file mode 100644
index 0000000..34dc9a5
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.cpp.tmp
@@ -0,0 +1,70 @@
+/* THIS IS A GENERATED FILE. DO NOT EDIT! */
+/* Generated from ../../builddir/3.15.2/dbd/emu.dbd */
+
+#include <string.h>
+
+#include "epicsStdlib.h"
+#include "iocsh.h"
+#include "iocshRegisterCommon.h"
+#include "registryCommon.h"
+
+#define epicsExportSharedSymbols
+#include "shareLib.h"
+
+extern "C" {
+
+typedef void (*reg_func)(void);
+epicsShareExtern reg_func pvar_func_checkMTRBrakeRegistrar,
+    pvar_func_homeMtrAutoRegistrar, pvar_func_register_func_ANGLE_CALCUL,
+    pvar_func_register_func_CREATE_PROJXY,
+    pvar_func_register_func_CREATE_REPORT,
+    pvar_func_register_func_CREATE_TAB,
+    pvar_func_register_func_FACTOR_CONVERSION,
+    pvar_func_register_func_INIT_TAB;
+
+int emu_registerRecordDeviceDriver(DBBASE *pbase)
+{
+    static int executed = 0;
+    if (!pbase) {
+        printf("pdbbase is NULL; you must load a DBD file first.\n");
+        return -1;
+    }
+
+    if (executed) {
+        printf("Warning: Registration already done.\n");
+    }
+    executed = 1;
+
+    pvar_func_checkMTRBrakeRegistrar();
+    pvar_func_homeMtrAutoRegistrar();
+    pvar_func_register_func_ANGLE_CALCUL();
+    pvar_func_register_func_CREATE_PROJXY();
+    pvar_func_register_func_CREATE_REPORT();
+    pvar_func_register_func_CREATE_TAB();
+    pvar_func_register_func_FACTOR_CONVERSION();
+    pvar_func_register_func_INIT_TAB();
+    return 0;
+}
+
+/* emu_registerRecordDeviceDriver */
+static const iocshArg rrddArg0 = {"pdbbase", iocshArgPdbbase};
+static const iocshArg *rrddArgs[] = {&rrddArg0};
+static const iocshFuncDef rrddFuncDef =
+    {"emu_registerRecordDeviceDriver", 1, rrddArgs};
+static void rrddCallFunc(const iocshArgBuf *)
+{
+    emu_registerRecordDeviceDriver(*iocshPpdbbase);
+}
+
+} // extern "C"
+
+/*
+ * Register commands on application startup
+ */
+static int Registration() {
+    iocshRegisterCommon();
+    iocshRegister(&rrddFuncDef, rrddCallFunc);
+    return 0;
+}
+
+static int done = Registration();
diff --git a/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.d b/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.d
new file mode 100644
index 0000000..0b6bdca
--- /dev/null
+++ b/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.d
@@ -0,0 +1,21 @@
+emu_registerRecordDeviceDriver.o: emu_registerRecordDeviceDriver.cpp \
+ /opt/epics/bases/base-3.15.2/include/epicsStdlib.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h \
+ /opt/epics/bases/base-3.15.2/include/os/Linux/osdStrtod.h \
+ /opt/epics/bases/base-3.15.2/include/epicsTypes.h \
+ /opt/epics/bases/base-3.15.2/include/compilerDependencies.h \
+ /opt/epics/bases/base-3.15.2/include/compiler/gcc/compilerSpecific.h \
+ /opt/epics/bases/base-3.15.2/include/errMdef.h \
+ /opt/epics/bases/base-3.15.2/include/iocsh.h \
+ /opt/epics/bases/base-3.15.2/include/registryCommon.h \
+ /opt/epics/bases/base-3.15.2/include/dbStaticLib.h \
+ /opt/epics/bases/base-3.15.2/include/dbFldTypes.h \
+ /opt/epics/bases/base-3.15.2/include/dbBase.h \
+ /opt/epics/bases/base-3.15.2/include/ellLib.h \
+ /opt/epics/bases/base-3.15.2/include/dbDefs.h \
+ /opt/epics/bases/base-3.15.2/include/link.h \
+ /opt/epics/bases/base-3.15.2/include/cantProceed.h \
+ /opt/epics/bases/base-3.15.2/include/devSup.h \
+ /opt/epics/bases/base-3.15.2/include/registryRecordType.h \
+ /opt/epics/bases/base-3.15.2/include/recSup.h \
+ /opt/epics/bases/base-3.15.2/include/shareLib.h
diff --git a/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.o b/builddir/O.3.15.2_eldk56-e500v2/emu_registerRecordDeviceDriver.o
new file mode 100644
index 0000000000000000000000000000000000000000..237bba8277280903bc27e12a8e8d0468d64a9eac
GIT binary patch
literal 3468
zcmbtX-*4Mg6h2O~E*tIELD|MOhAUO5L&IxFg|dO5PMVgEEQvx2V<361<F?U~II^9p
zLt{<V7kEKTn}m>1$5XW@#2>%|6F;=a{RJQ-gm~a#ARZ^ecdmVdYwefBk&f^8opbIv
z=U!hs&RQ-%qa+mSi9*A`5kvAgQHN+!M2yivdYaMok?!5gsl-<12JJYpL3HgFrPgjI
zwm!xD&e87OYroLI+P8lV>znlb#y_3p`s+j|J|>#lq?@NyQm%rpzt$O8KSuQ7vA(TB
zCpiK>6yw7&elW(5#JC#cqcJ`f<>?Dp8T#Eo?;Gg%a;k4DJwii;4ym0hozxrHhc~<3
z3NSHFU+8wh@5I+1Upudx^I|>6IXCC!x}6#k=SQypCDFaVZ|y6c@y=#vl6wyONS>M^
zlD%A=qoiDCq>;!yr#`l~stXIIXR9?&EzIZhuc()tw%TZWzFK$8s%om!nQ3*gR=06+
zJzwKF@0f10)?7NRmhGjQ=ewp~bDFAIcWtwJNv%3fTO+&CHeBJh-Lh>tZgtvTsaf{4
zTU)W+UR|QuZ1%J|Hd~lKrcP>U?IagSL6gvgUYf5p7adZP6m&ksZsmhAB`@pB;Q?X9
z*~N(s<R0mJhV)%JWj7O<efnDVhEm_%uj@bmw1@O3f|yYZ^7c&0_)HK#)30X{Dum-&
z0i=8^?o7X)3F0*GQo}bFNW(@1<FZ7qT{kt~UiC?<n!ZWeg6EMYtV@o6GK3s}$)@YK
zTcOGF9al#3OrE2;j#hUpvmVCu?9%863u;ejlcZTrqhU8ux#{?}hV6Y3C9I32l}cGH
zcQ&J$t+v?OpdWkLSai*X9WM8=1{G0!1Ny^gygiiZ5c9xykmWE`V!(lMTwaClhw^;(
z4M3j{xj2__t%64-H~~a_zxjkj<Csg4wO)pS=S1VuGAQ&hoq)<YfCF`0ZbG@g9Z=by
z4$S$&^(tQjm!MK)4qltYfP?(5<@3q;c0y&o3UH*q1ZZ?#4;Q!F2YLOxUz~4O=wp5X
z8qLRbxV9A8(|a&T3^>SpG79B<{D`oR^YQ*i^YI!Y^Ta)XiM;Lh!S}&se}kcq`A1OB
zCmwM;+(&>rP$`_7{hx&+pA$&p3tXNQFt~6G>zCn(fhF-(F!rt-!@~E8_dOI5$7_)y
z<9>vJvA7W!ZUbMJK^W!QZ$&WR;4&_wP~N|%pd82R-3JZN9uW2MzT9CHimV%{$)25m
zptcHd0LnQz-w>4VbtK<z)JSk$DKekra_rfY)csQ$c|@|FFXWN@!q2sP0w+HYsEPM6
ze&(@J@%g;Z@_EX`AK7=2kJr!><m2;Zg$90`GxtND1n2X!4(0t!h5pbj^0B`s$hQ~d
zlhDBPxzBH)JW3wA#eBX;J;8jwe?0-`eeVf4pTi%dA$0z>oh!UYLIS_?LX4MUd?m&|
zkMZwf{8w;Z&pkAQB__~TAVIxED#rN?2@(E>|1fJ-t3|F`t!B-7eWu;C$e7I+GkV@I
zy!L`IXFSGq<9vQ%f^+cvX?u}iNHf>nB`-?GLC(K4{_vE!w7qIuZQri))Jgujpw^1%
z8jHwoSj)C`@oc4>am|ai{2Xy30n1LqKI^-B+js8gmY*m=HoY*L&ly=gpPkP~a%>OE
zmUDU~XOzmtGw0rYR8%=vDwZpcimK?D2Zqe(*-Ei&WQ&EjbLF?@iiHP8&K2e=2B&)X
zhEl8TdsK5QZ@CnH{RJ%8AO1KKvf~iZ+FiikiJp`1-@pIEIC>;wlqsU4G6wd&>}0_?
z<;PA4&ZV$Vg5i1IFYP#%2P7WGPo>0oM?WJmek%@1tm2bG;!&a_5|0r*EAeq6RpN1?
z-4dfV{}B@JFSH^1=WmLUNdG%Io}V#@==mG~`rjk-pnqXs6(K=>*a&?luy0~+KER@u
Jk5{3v{|oY`1r`7R

literal 0
HcmV?d00001

diff --git a/builddir/O.3.15.2_eldk56-e500v2/libemu.so b/builddir/O.3.15.2_eldk56-e500v2/libemu.so
new file mode 100755
index 0000000000000000000000000000000000000000..50a83f1fc870075ba3b60f7fa8e31393f29a187a
GIT binary patch
literal 26316
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

literal 0
HcmV?d00001

diff --git a/builddir/db/EMU.db b/builddir/db/EMU.db
new file mode 100644
index 0000000..a169ecb
--- /dev/null
+++ b/builddir/db/EMU.db
@@ -0,0 +1,5286 @@
+# File: scanBase.template
+# Author: Alexander Soderqvist <alexander.soderqvist@cosylab.com>
+#
+# Template containing the base for a scanning application.
+# This is not a scanning application by it self
+# and although it can be used as stand alone component, 
+# it is designed to be a part of scanning application implemented
+# within geenricScan.substitutions.
+
+
+# SSCAN record
+
+record(sscan, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)")
+{
+	field(DESC, "$(SCAN_SLIT,undefined)")
+	
+	field(MPTS,  "$(MAX_POINTS_SLIT,undefined)")
+	field(PASM,  "STAY")
+	field(NPTS,  "$(MAX_POINTS_SLIT,undefined)") 
+	field(FPTS,  "FREEZE")
+	field(ATIME, "0.1")
+	field(ACQT, "SCALAR")
+	field(ACQM, "NORMAL")
+
+	#Before scan start fields
+	field(BSPV,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BEFORE_SCAN")
+	field(BSCD,  "1")
+
+	#After scan start field-
+	field(ASPV,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFTER_SCAN")
+	field(ASCD,  "1")
+
+	#Detector triggers
+	field(T1PV,  "$(DEVICE,recursive):$(SCAN_EF,undefined).EXSC")
+	field(T2PV,  "")
+	field(T3PV,  "")
+	field(T4PV,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TRTRG.PROC")
+
+	#Detectors
+	field(D01PV, "")
+	field(D02PV, "")
+	field(D03PV, "")
+	field(D04PV, "")
+	field(D05PV, "")
+	field(D06PV, "")
+	field(D07PV, "")
+	field(D08PV, "")
+	field(D09PV, "")
+	field(D10PV, "")
+	field(D11PV, "")
+	field(D12PV, "")
+	field(D13PV, "")
+	field(D14PV, "")
+	field(D15PV, "")
+	field(D16PV, "")
+	field(D17PV, "")
+	field(D18PV, "")
+	field(D19PV, "")
+	field(D20PV, "")
+	field(D21PV, "")
+	field(D22PV, "")
+	field(D23PV, "")
+	field(D24PV, "")
+	field(D25PV, "")
+	field(D26PV, "")
+	field(D27PV, "")
+	field(D28PV, "")
+	field(D29PV, "")
+	field(D30PV, "")
+	field(D31PV, "")
+	field(D32PV, "")
+	field(D33PV, "")
+	field(D34PV, "")
+	field(D35PV, "")
+	field(D36PV, "")
+	field(D37PV, "")
+	field(D38PV, "")
+	field(D39PV, "")
+	field(D40PV, "")
+	field(D41PV, "")
+	field(D42PV, "")
+	field(D43PV, "")
+	field(D44PV, "")
+	field(D45PV, "")
+	field(D46PV, "")
+	field(D47PV, "")
+	field(D48PV, "")
+	field(D49PV, "")
+	field(D50PV, "")
+	field(D51PV, "")
+	field(D52PV, "")
+	field(D53PV, "")
+	field(D54PV, "")
+	field(D55PV, "")
+	field(D56PV, "")
+	field(D57PV, "")
+	field(D58PV, "")
+	field(D59PV, "")
+	field(D60PV, "")
+	field(D61PV, "")
+	field(D62PV, "")
+	field(D63PV, "")
+	field(D64PV, "")
+	field(D65PV, "")
+	field(D66PV, "")
+	field(D67PV, "")
+	field(D68PV, "")
+	field(D69PV, "")
+	field(D70PV, "")
+
+	#Positioner and step mode
+	field(P1PV,  "$(MTRREC,undefined).ACCL")
+	field(P1SM,  "FLY")
+	field(P2PV,  "$(MTRREC,undefined).VELO")
+	field(P2SM,  "FLY")
+	field(P3PV,  "")
+	field(P3SM,  "FLY")
+	field(P4PV,  "$(MTRREC,undefined).VAL")
+	field(P4SM,  "LINEAR")
+
+	#Start, end and diff limit
+	field(P1SP,  "")
+	field(P1EP,  "")
+	field(P2SP,  "")
+	field(P2EP,  "")
+	field(P3SP,  "")
+	field(P3EP,  "")
+	field(P4SP,  "")
+	field(P4EP,  "")
+	
+	# Freeze flags, start, increment and end
+	field(P1FS,  "FREEZE")
+	field(P1FI,  "")
+	field(P1FE,  "FREEZE")
+	field(P2FS,  "")
+	field(P2FI,  "")
+	field(P2FE,  "")
+	field(P3FS,  "")
+	field(P3FI,  "")
+	field(P3FE,  "")
+	field(P4FS,  "")
+	field(P4FI,  "")
+	field(P4FE,  "")
+
+	# Position readback PVs
+	field(R1PV, "")
+	field(R2PV, "")
+	field(R3PV, "")
+	field(R4PV, "")
+
+	field(A1PV, "")
+}
+# File  : scanGeneric.template
+# Author: Alexander Soderqvist <alexandersoderqvist@esss.lu.se>
+
+# Support database for one SSCAN record. The main responsibility of this template
+# is to handle before and after scan links and abort depending on mode (LINEAR, TABLE, FLY).
+# It also handles reconfiguration of sscan when changing mode.
+# 
+# All scanning logic and data collection are handled by SSCAN record, this template is an add-on 
+# to make it more flexible when designing applications.
+
+#### BEFORE AND AFTER SCAN LINKS ####
+
+
+# Processed after every scan, independent of the scan mode.
+# When processed, record defined by macro AS_LNK will be processed (optional).
+# Additional after scan link may be defined if necessary.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFTER_SCAN")
+{
+	field(DESC, "Links to after scan processing")
+	
+	
+	# Process internal records which will dispatch after scan notification
+	
+	field(DO1, "1")
+	field(LNK1, "$(MTRREC,undefined).SPMG")
+
+	# Process mode specific after scan links
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFTER_SCAN_")
+}
+
+# Select after scan links to process according to mode
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFTER_SCAN_")
+{
+	field(DESC, "Links to after scan processing")
+	
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-MODE_SEL PP")
+	
+	field(DO1, "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFSTEP PP")
+
+	field(DO2, "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFSTEP PP")
+	
+	field(DO3, "1")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFFLY PP")
+	
+}
+
+
+# Processed after scan finishes in LINEAR or TABLE mode.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFSTEP")
+{
+	
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TR_TLCTRL.VAL PP")
+
+
+	field(DO2, "1")
+	field(DO3, "")
+	field(DO4, "")
+
+	field(LNK2, "$(DEVICE,recursive):PROC-SLIT-AF.PROC PP")
+	field(LNK3, "")
+	field(LNK4, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed after scan is done (terminated) in FLY mode
+# Optional: Process any external records given in AF_FLY_FLNK
+ 
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AFFLY")
+{	
+	field(DO1, "")
+	field(DO2, "")
+	field(DO3, "")
+
+	field(LNK1, "")
+	field(LNK2, "")
+	field(LNK3, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed before every scan, independent of the mode.
+# When processed, record defined by BS_LNK will be processed.
+# If necessary more links can be added
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BEFORE_SCAN")
+{
+	field(DESC, "Links to before scan processing")
+
+	field(DO1, "3")
+	field(LNK1, "$(MTRREC,undefined).SPMG")
+
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BEFORE_SCAN_")
+}
+
+# Select before scan links to process according to mode
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BEFORE_SCAN_")
+{
+	field(DESC, "Links to before scan processing")
+	
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-MODE_SEL PP")
+
+	field(DO1,  "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BFSTEP PP")
+
+	field(DO2,  "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BFSTEP PP")
+
+	field(DO3,  "1")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BFFLY PP")
+
+}
+
+
+# Processed before scan is executed in FLY mode.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BFFLY")
+{
+	
+	field(DO1, "")
+	field(DO2, "")
+	field(DO3, "")
+
+	field(LNK1, "")
+	field(LNK2, "")
+	field(LNK3, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed before scan is executed in LINEAR or TABLE mode.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-BFSTEP")
+{
+	
+	field(DO1, "1")
+	field(LNK1, "$(DEVICE,recursive):PROC-SLIT-BF.PROC PP")
+
+	field(DO2, "")
+	field(LNK2, "")
+
+	field(DO3, "")	
+	field(LNK3, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed on scan abort when when in LINEAR mode.
+# Optional: Process any external records given in AB_STEP_FLNK
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABSTEP")
+{	
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TR_TLCTRL.VAL PP")	
+
+	field(DO2,  "0")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).EXSC PP")
+
+	field(DO3, "1")
+	field(LNK3, "$(DEVICE,recursive):PROC-SLIT-AB.PROC PP")
+
+	field(DO4, "")
+	field(LNK4, "")
+
+	field(DO5, "")	
+	field(LNK5, "")
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABORT")
+}
+
+
+# Processed on scan abort when in FLY mode.
+# Optional: Process any external records given in AB_FLY_FLNK
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABFLY")
+{
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TR_TLCTRL.VAL PP")	
+
+	field(DO2,  "0")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).EXSC PP")
+
+	field(DO3, "")
+	field(LNK3, "")
+
+	field(DO4, "")
+	field(LNK4, "")
+	
+	field(DO5, "")
+	field(LNK5, "")
+
+	field(FLNK, "")
+}
+
+
+
+
+### Command interface ###
+
+
+# Abort the scan, general links.
+
+record(seq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABORT")
+{	
+	field(DO1,  "1")
+	field(LNK1, "$(MTRREC,undefined).STOP PP")
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABORT_")
+}
+
+# Select STEP or FLY abort depending on mode
+
+record(seq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABORT_")
+{	
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-MODE_SEL")
+	
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABSTEP PP")
+	
+	field(DO2,  "0")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABSTEP PP")
+
+	field(DO3,  "0")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-ABFLY PP")
+	
+	field(FLNK, "")
+}
+
+
+### Auto configuration records ###
+# Record which handles reconfiguration of sscan due to change of mode.
+
+# Calcuclate mode for use with selection algoritm in seq records
+# Propagate execution to configuration for that specific mode.
+
+record(calcout, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-MODE_SEL")
+{
+	field(CALC, "A + 1")
+	field(INPA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).P4SM CP")
+
+# Only execute on change, execution everytime
+# also meant executin at end-of-scan when the field
+# updates. This caused problems when nesting scans
+	field(OOPT, "On Change")
+	field(OUT, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-CONFLNK.PROC PP")
+#	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-CONFLNK")
+}
+
+# Execute mode configuration links
+
+record(seq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-CONFLNK")
+{
+
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-MODE_SEL")
+
+	field(DO1, "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-STEPCONF.PROC PP")
+
+	field(DO2, "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-STEPCONF.PROC PP")
+
+	field(DO3, "1")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-FLYCONF.PROC PP")
+
+}
+
+# Configures the sscan record for on the fly: 
+#    1. prevent automatic recalculation of number of points
+#    2. sets number of points to scan to Macro(MAX_POINTS)
+#    3, 4. User defined links before setting fly mode
+#
+
+record(seq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-FLYCONF")
+{
+	field(DESC, "Sets SSCAN in OTF mode")
+	
+	field(DO1, "1")
+	field(DO2, "$(MAX_POINTS_SLIT,undefined)")
+	
+	field(DO3, "")
+	field(DO4, "")	
+	
+	
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).FPTS PP")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).NPTS PP")
+	
+	field(LNK3, "")
+	field(LNK4, "")
+
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-SET_POS_RBV")
+}
+
+
+# Configures the sscan record to: 
+#    - automatically recalculate number of points
+#    - sets mode of the positioner to "LINEAR"
+#
+# Changes input of the common positions waveform to get values
+# from sscan record (.PnCA) 
+
+record(seq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-STEPCONF")
+{
+	field(DESC, "Sets SSCAN in Step mode")
+	
+	field(DO1,  "0")
+
+	field(DO2, "")
+	field(DO3, "")
+	
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).FPTS PP")
+
+	field(LNK2, "")
+	field(LNK3, "")
+
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-SET_POS_RBV")
+}
+
+
+# Configure RBV PV depending on mode
+
+# Set read back pv for positioner.
+# Read back value for step mode are usually a scalar PV.
+# For example the .RBV field on the motor record.
+#
+# Read back value for fly scan is usually an array.
+# Due to that aggregation of positions often happens closer to the source
+# due to the timing critical nature of fly scans.
+# Sccan will however aggreage position from scalar also during fly scan,
+# If this want to be done simply specifiy  to a scalar instead.
+record(sseq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-SET_POS_RBV")
+{
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-MODE_SEL NPP")
+
+	field(STR1, "$(MTRREC,undefined).RBV")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).R4PV PP")
+
+	field(STR2, "$(MTRREC,undefined).RBV")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).R4PV PP")
+
+	field(STR3, "")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).R4PV PP")
+
+}
+
+
+# Common record for exposing number of read positions. This is used to expose
+# Number of positions collected from a separate component which aggregates positions for fly scans.
+# In step mode it will simply follow the .CPT field on sscan.
+# 
+# It updates on:
+#    1) change of .CPT if in LINEAR mode,
+#    2) by explicit update from external positioner control records when in FLY mode.
+# 		In this case, the positioner control logic is responsible to process this record!
+#
+# When in FLY mode, it is required to process this by external component
+# when provided position array is updated (Macro(POS_ARR_RBV_PV))
+
+record(calc, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-NORD_POS")
+{
+	field(CALC, "A = 2 ? B : C")
+	
+	field(INPA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).P4SM")
+	
+	field(INPB, "0")
+	field(INPC, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).CPT CP")
+
+}
+
+
+# File  : scanTRCtrl.template
+# Author: Rok Stefanic <rok.stefanic@cosylab.com>
+# Modified: Alexander Soderqvist <alexander.soderqvist@cosylab.com>
+
+# This template implements all necessary logic for acquiring timestamps on received
+# timing events which generate HW triggers used by the positioner and detector.
+#
+
+# Macro:
+#   TR_TLTSEL	Full name of the record which holds the time-stamp of the
+#               HW trigger generation on the timing receiver.
+#                   Example: DTL-Ctrl:TR-01:ACT-TL3-EV5-RBV.TIME
+
+# It also requires a forward link to signal when to store the timestamp.
+# The forward link should be direct to SAVE_TS record and is commonly set 
+# from DAQDetTrigger done signal for one dimensional scans. 
+# On two dimensional scan the outer scan's SAVE_TS record can be forward linked
+# from an after scan link on the inner scan. And TR_TLTSEL can be set to TS_START 
+# from the inner scan.
+
+# Record converts the time-stamp of HW trigger generation
+# on timing receiver trigger line output
+
+record(stringin, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS")
+{
+	field(DTYP, "Soft Timestamp" )
+   	field(TSEL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_START.TIME" )
+ 	field(INP,  "@%Y-%m-%d %H:%M:%S.%09f" )
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_ARRAY_CONCAT")
+}
+
+
+# aSub routine concatenates all incoming time-stamps to an array
+
+record(aSub, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_ARRAY_CONCAT")
+{
+	field(DESC, "Concatenate time-stamps")
+	field(INAM, "concatTSArrayInit")
+	field(SNAM, "concatTSArrayProcess")
+
+	field(FTA,  "STRING")
+	field(INPA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS.VAL NPP")
+	
+	field(FTB,  "LONG")
+	field(INPB, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).CPT NPP")
+
+	field(NOVA, "$(MAX_POINTS_SLIT,undefined)")
+	field(FTVA, "STRING")
+	field(OUTA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_ARR.VAL PP")	
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_START_")
+}
+
+
+# Internal record to determine if trigger is the first
+# trigger of the current scan. If so, then record
+# -TS_START will be processed which will holed
+# the time-stamp when the scan was started.
+# Time-stamp is obtained directly from the timing
+# receiver (time when the timing event was received
+# and HW trigger signal was generated)
+
+record(calcout, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_START_")
+{
+	field(DESC, "Process ts of first trigger")
+	field(CALC, "A = 0 ? 0 : 1")
+	
+	field(INPA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).CPT NPP")
+	
+	field(DOPT, "Use OCAL")
+	field(OOPT, "When Zero")
+	field(OCAL, "1")
+	
+	field(OUT,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_START.PROC PP")	
+}
+
+
+# Record is processed when the first timing event is
+# received - generating the first HW trigger signal 
+# in the timing receiver. This time-stamp is the actual 
+# time when scan started.
+
+record(longin, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_START")
+{
+	field(DESC, "TS of first trigger")
+	field(MDEL, "-1")
+	
+	field(TSEL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS.TIME")
+}
+
+
+# Array containing all time-stamps gathered during the scan
+
+record(waveform, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_ARR")
+{   
+	field(NELM, "$(MAX_POINTS_SLIT,undefined)")
+    	field(FTVL, "STRING")
+}
+
+
+# Trigger end of scan timestamp read-back array to be stored.
+record(bi, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-EOS_TS_RBV")
+{	
+	field(INP, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).DATA CP")
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_ARR_RBV")  
+}
+
+
+# Store acquired time-stamps when scan is finished
+# NOTE: this record will not be updated during the scan!
+
+record(waveform, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_ARR_RBV")
+{   
+	field(DISV, "0")
+	field(SDIS, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-EOS_TS NPP")    
+
+	field(NELM, "$(MAX_POINTS_SLIT,undefined)")
+    	field(FTVL, "STRING")
+
+	field(INP, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_ARR")
+    
+	# Set the time of the record to the beginning of the scan
+	# (time of the first timing trigger)
+	field(TSEL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS_START.TIME")
+}
+
+# Record that MUST be processed once acquisition on the detector is triggered 
+# acquisition ends. It is necessary that DAQ functions in blocking mode,
+# where this process is processed when DAQ finishes and unblocks.
+# The record will trigger saving the time-stamp into the internal time-stamp array.
+#
+# The record will not be processed when the scan is not active.
+# This enables the inner scan to be performed without affecting the outter scan
+# in a setup of 2D scan.
+
+record(fanout, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-SAVE_TS")
+{
+	field(DESC, "Save timestamp")
+	
+	# Disable record processing if the scan component is not active
+	# The case for this is in 2D scans and the inner scan is executed.
+	# Without this guard, time-stamps from the inner scan component would
+	# be appended to the array.
+		
+	field(DISV, "0")
+	field(SDIS, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).BUSY NPP")
+	
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TS")
+}
+# File  : scanTRDetTrig.template
+# Author: Alexander Soderqvist  <alexander.soderqvist@cosylab.com>
+
+# The purpose of this template is to provide an interface to the ESS timing receiver.
+# The actual timing receiver logic still has to be provided by an external component,
+# which can be found in the trAction.template of the timing receiver support.
+#
+# It also handles auto abort for fly scan which is related to turning of
+# trigger lines at the correct moment to assure conformity in positioner and data points.
+#
+# This template is not meant to be used as a stand-alone component but together with scanGeneric.template.
+
+# Controls trigger generation on trigger liens on the timing receiver.
+#
+#
+# MACRO:
+# 	TR_TL1		Record Name of the TR record responsible to control the output
+# 					Example: DTL-Ctrl:TR-01:ACT-TL3-EV5
+# And TR_TL2 and TR_TL3 for controlling more trigger lines.
+#
+#	TL_ENBL_VAL	Value written to enable reaction to events on triggler line.
+#	TL_DIS_VAL	Value written to disable reaction to events on triggler line.
+
+
+# INTERFACE SSCAN record detector trigger:
+# Detects the first detector trigger issued by SSCAN record (when <SSCAN>.CPT == 0)
+# And activate trigger lines
+record(calc, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TRTRG")
+{
+	field(DESC, "Detects first detector trigger")
+	field(CALC, "A = 0 ? 1 : 2")
+
+	field(INPA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).CPT NPP")
+	
+	field(FLNK,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-OPSEL")
+}
+
+record(seq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-OPSEL")
+{
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TRTRG")
+
+	# Enable trigger lines
+	field(DO1, "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TR_TLCTRL.VAL PP")
+	
+	# Else dact trigger lines
+	field(DO2, "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-DACT_TR.PROC PP")
+}
+
+# INTERNAL RECORD & INTERFACE SCAN GENERIC:
+# Control Trigger lines reaction to event
+# "Simultaneosly" enable/disable reaction to events on multiple trigger lines.
+# Note that this might be a hack. The timing receiver has to support doing this otherwise
+# we have a race condition, even though it seems unlikely to actually happen.
+# This will however only happen for fly scans.
+record(dfanout, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TR_TLCTRL")
+{
+	field(DESC, "Enable/disable TR output")
+	field(OMSL, "supervisory")
+
+	field(OUTA, "")
+	field(OUTB, "")
+	field(OUTC, "")
+}
+
+# INTERNAL RECORD:
+# Deactivate trigger lines for fly scans when number of points 
+# is reached or the positioner is done moving.
+record(calcout, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-DACT_TR")
+{
+	field(DESC, "Deactivate TR trigger lines")
+	field(CALC, "A = 2 && (B = 1 || C = D) ? 0 : 1")
+	field(INPA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).P4SM NPP")
+	field(INPB, "0")
+	field(INPC, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).CPT NPP")
+	field(INPD, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).NPTS NPP")
+	
+	field(OCAL, "0")
+	field(OOPT, "When Zero")
+	field(DOPT, "Use OCAL")
+	field(OUT,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-TR_TLCTRL PP")
+# Trigger Auto abort
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AUTOABORT")
+}
+
+# INTERNAL RECORD: 
+# If triggler lines were deactivated and positioner is done moving
+# trigger auto abort links to finish the scan. To avoid waiting for NPTS to be collected.
+record(calcout, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AUTOABORT")
+{
+	field(DESC, "Auto abort fly scans")
+	field(CALC, "A = 0 && B = 1 ? 0 : 1")	
+	field(INPA, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-DACT_TR NPP")
+	field(INPB, "0")
+	field(OOPT, "When Zero")
+
+	field(OUT,  "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AUTOABLNK.PROC PP")
+}
+
+# Auto abort links.
+# Abort scan and execute user defined links for any other things
+# that needs to be finsihsed or reset.
+record(seq, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-AUTOABLNK")
+{
+	field(DLY1, "0.1")
+	field(DO1, "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).EXSC NPP")
+	
+	field(DLY2, "0.1")
+	field(DO2, "")
+	field(LNK2, "")
+	
+	field(DLY3, "0.1")
+	field(DO3, "")
+	field(LNK3, "")
+
+}
+# File: scanBase.template
+# Author: Alexander Soderqvist <alexander.soderqvist@cosylab.com>
+#
+# Template containing the base for a scanning application.
+# This is not a scanning application by it self
+# and although it can be used as stand alone component, 
+# it is designed to be a part of scanning application implemented
+# within geenricScan.substitutions.
+
+
+# SSCAN record
+
+record(sscan, "$(DEVICE,recursive):$(SCAN_EF,undefined)")
+{
+	field(DESC, "$(SCAN_EF,undefined)")
+	
+	field(MPTS,  "$(MAX_POINTS_EF,undefined)")
+	field(PASM,  "STAY")
+	field(NPTS,  "$(MAX_POINTS_EF,undefined)") 
+	field(FPTS,  "FREEZE")
+	field(ATIME, "0.1")
+	field(ACQT, "SCALAR")
+	field(ACQM, "NORMAL")
+
+	#Before scan start fields
+	field(BSPV,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-BEFORE_SCAN")
+	field(BSCD,  "1")
+
+	#After scan start field-
+	field(ASPV,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFTER_SCAN")
+	field(ASCD,  "1")
+
+	#Detector triggers
+	field(T1PV,  "$(DEVICE,recursive):DAQTRG-TRG")
+	field(T2PV,  "")
+	field(T3PV,  "")
+	field(T4PV,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-TRTRG.PROC")
+
+	#Detectors
+	field(D01PV, "$(DEVICE,recursive):BUFF-DET1")
+	field(D02PV, "$(DEVICE,recursive):BUFF-DET23")
+	field(D03PV, "")
+	field(D04PV, "")
+	field(D05PV, "")
+	field(D06PV, "")
+	field(D07PV, "")
+	field(D08PV, "")
+	field(D09PV, "")
+	field(D10PV, "")
+	field(D11PV, "")
+	field(D12PV, "")
+	field(D13PV, "")
+	field(D14PV, "")
+	field(D15PV, "")
+	field(D16PV, "")
+	field(D17PV, "")
+	field(D18PV, "")
+	field(D19PV, "")
+	field(D20PV, "")
+	field(D21PV, "")
+	field(D22PV, "")
+	field(D23PV, "")
+	field(D24PV, "")
+	field(D25PV, "")
+	field(D26PV, "")
+	field(D27PV, "")
+	field(D28PV, "")
+	field(D29PV, "")
+	field(D30PV, "")
+	field(D31PV, "")
+	field(D32PV, "")
+	field(D33PV, "")
+	field(D34PV, "")
+	field(D35PV, "")
+	field(D36PV, "")
+	field(D37PV, "")
+	field(D38PV, "")
+	field(D39PV, "")
+	field(D40PV, "")
+	field(D41PV, "")
+	field(D42PV, "")
+	field(D43PV, "")
+	field(D44PV, "")
+	field(D45PV, "")
+	field(D46PV, "")
+	field(D47PV, "")
+	field(D48PV, "")
+	field(D49PV, "")
+	field(D50PV, "")
+	field(D51PV, "")
+	field(D52PV, "")
+	field(D53PV, "")
+	field(D54PV, "")
+	field(D55PV, "")
+	field(D56PV, "")
+	field(D57PV, "")
+	field(D58PV, "")
+	field(D59PV, "")
+	field(D60PV, "")
+	field(D61PV, "")
+	field(D62PV, "")
+	field(D63PV, "")
+	field(D64PV, "")
+	field(D65PV, "")
+	field(D66PV, "")
+	field(D67PV, "")
+	field(D68PV, "")
+	field(D69PV, "")
+	field(D70PV, "")
+
+	#Positioner and step mode
+	field(P1PV,  "$(PSU2_SP,undefined)")
+	field(P1SM,  "LINEAR")
+	field(P2PV,  "")
+	field(P2SM,  "FLY")
+	field(P3PV,  "")
+	field(P3SM,  "FLY")
+	field(P4PV,  "$(PSU_SP,undefined)")
+	field(P4SM,  "LINEAR")
+
+	#Start, end and diff limit
+	field(P1SP,  "")
+	field(P1EP,  "")
+	field(P2SP,  "")
+	field(P2EP,  "")
+	field(P3SP,  "")
+	field(P3EP,  "")
+	field(P4SP,  "")
+	field(P4EP,  "")
+	
+	# Freeze flags, start, increment and end
+	field(P1FS,  "FREEZE")
+	field(P1FI,  "")
+	field(P1FE,  "FREEZE")
+	field(P2FS,  "")
+	field(P2FI,  "")
+	field(P2FE,  "")
+	field(P3FS,  "")
+	field(P3FI,  "")
+	field(P3FE,  "")
+	field(P4FS,  "")
+	field(P4FI,  "")
+	field(P4FE,  "")
+
+	# Position readback PVs
+	field(R1PV, "$(PSU2_RBV,undefined)")
+	field(R2PV, "")
+	field(R3PV, "")
+	field(R4PV, "")
+
+	field(A1PV, "")
+}
+# File  : scanGeneric.template
+# Author: Alexander Soderqvist <alexandersoderqvist@esss.lu.se>
+
+# Support database for one SSCAN record. The main responsibility of this template
+# is to handle before and after scan links and abort depending on mode (LINEAR, TABLE, FLY).
+# It also handles reconfiguration of sscan when changing mode.
+# 
+# All scanning logic and data collection are handled by SSCAN record, this template is an add-on 
+# to make it more flexible when designing applications.
+
+#### BEFORE AND AFTER SCAN LINKS ####
+
+
+# Processed after every scan, independent of the scan mode.
+# When processed, record defined by macro AS_LNK will be processed (optional).
+# Additional after scan link may be defined if necessary.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFTER_SCAN")
+{
+	field(DESC, "Links to after scan processing")
+	
+	
+	# Process internal records which will dispatch after scan notification
+	
+	field(DO1, "")
+	field(LNK1, "")
+
+	# Process mode specific after scan links
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFTER_SCAN_")
+}
+
+# Select after scan links to process according to mode
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFTER_SCAN_")
+{
+	field(DESC, "Links to after scan processing")
+	
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-MODE_SEL PP")
+	
+	field(DO1, "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFSTEP PP")
+
+	field(DO2, "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFSTEP PP")
+	
+	field(DO3, "1")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFFLY PP")
+	
+}
+
+
+# Processed after scan finishes in LINEAR or TABLE mode.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFSTEP")
+{
+	
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TR_TLCTRL.VAL PP")
+
+
+	field(DO2, "")
+	field(DO3, "")
+	field(DO4, "")
+
+	field(LNK2, "$(DEVICE,recursive):PROC-PS-AF.PROC PP")
+	field(LNK3, "")
+	field(LNK4, "")
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_SLIT,undefined)-SAVE_TS")
+}
+
+
+# Processed after scan is done (terminated) in FLY mode
+# Optional: Process any external records given in AF_FLY_FLNK
+ 
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-AFFLY")
+{	
+	field(DO1, "")
+	field(DO2, "")
+	field(DO3, "")
+
+	field(LNK1, "")
+	field(LNK2, "")
+	field(LNK3, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed before every scan, independent of the mode.
+# When processed, record defined by BS_LNK will be processed.
+# If necessary more links can be added
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-BEFORE_SCAN")
+{
+	field(DESC, "Links to before scan processing")
+
+	field(DO1, "")
+	field(LNK1, "")
+
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-BEFORE_SCAN_")
+}
+
+# Select before scan links to process according to mode
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-BEFORE_SCAN_")
+{
+	field(DESC, "Links to before scan processing")
+	
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-MODE_SEL PP")
+
+	field(DO1,  "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-BFSTEP PP")
+
+	field(DO2,  "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined)-BFSTEP PP")
+
+	field(DO3,  "1")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_EF,undefined)-BFFLY PP")
+
+}
+
+
+# Processed before scan is executed in FLY mode.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-BFFLY")
+{
+	
+	field(DO1, "")
+	field(DO2, "")
+	field(DO3, "")
+
+	field(LNK1, "")
+	field(LNK2, "")
+	field(LNK3, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed before scan is executed in LINEAR or TABLE mode.
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-BFSTEP")
+{
+	
+	field(DO1, "")
+	field(LNK1, "$(DEVICE,recursive):PROC-PS-BF.PROC PP")
+
+	field(DO2, "")
+	field(LNK2, "")
+
+	field(DO3, "")	
+	field(LNK3, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed on scan abort when when in LINEAR mode.
+# Optional: Process any external records given in AB_STEP_FLNK
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABSTEP")
+{	
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TR_TLCTRL.VAL PP")	
+
+	field(DO2,  "0")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined).EXSC PP")
+
+	field(DO3, "")
+	field(LNK3, "$(DEVICE,recursive):DAQTRG-RST.PROC PP")
+
+	field(DO4, "")
+	field(LNK4, "")
+
+	field(DO5, "")	
+	field(LNK5, "")
+	
+	field(FLNK, "")
+}
+
+
+# Processed on scan abort when in FLY mode.
+# Optional: Process any external records given in AB_FLY_FLNK
+
+record(seq,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABFLY")
+{
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TR_TLCTRL.VAL PP")	
+
+	field(DO2,  "0")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined).EXSC PP")
+
+	field(DO3, "")
+	field(LNK3, "")
+
+	field(DO4, "")
+	field(LNK4, "")
+	
+	field(DO5, "")
+	field(LNK5, "")
+
+	field(FLNK, "")
+}
+
+
+
+
+### Command interface ###
+
+
+# Abort the scan, general links.
+
+record(seq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABORT")
+{	
+	field(DO1,  "")
+	field(LNK1, "")
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABORT_")
+}
+
+# Select STEP or FLY abort depending on mode
+
+record(seq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABORT_")
+{	
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-MODE_SEL")
+	
+	field(DO1,  "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABSTEP PP")
+	
+	field(DO2,  "0")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABSTEP PP")
+
+	field(DO3,  "0")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_EF,undefined)-ABFLY PP")
+	
+	field(FLNK, "")
+}
+
+
+### Auto configuration records ###
+# Record which handles reconfiguration of sscan due to change of mode.
+
+# Calcuclate mode for use with selection algoritm in seq records
+# Propagate execution to configuration for that specific mode.
+
+record(calcout, "$(DEVICE,recursive):$(SCAN_EF,undefined)-MODE_SEL")
+{
+	field(CALC, "A + 1")
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined).P4SM CP")
+
+# Only execute on change, execution everytime
+# also meant executin at end-of-scan when the field
+# updates. This caused problems when nesting scans
+	field(OOPT, "On Change")
+	field(OUT, "$(DEVICE,recursive):$(SCAN_EF,undefined)-CONFLNK.PROC PP")
+#	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-CONFLNK")
+}
+
+# Execute mode configuration links
+
+record(seq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-CONFLNK")
+{
+
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-MODE_SEL")
+
+	field(DO1, "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-STEPCONF.PROC PP")
+
+	field(DO2, "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined)-STEPCONF.PROC PP")
+
+	field(DO3, "1")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_EF,undefined)-FLYCONF.PROC PP")
+
+}
+
+# Configures the sscan record for on the fly: 
+#    1. prevent automatic recalculation of number of points
+#    2. sets number of points to scan to Macro(MAX_POINTS)
+#    3, 4. User defined links before setting fly mode
+#
+
+record(seq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-FLYCONF")
+{
+	field(DESC, "Sets SSCAN in OTF mode")
+	
+	field(DO1, "1")
+	field(DO2, "$(MAX_POINTS_EF,undefined)")
+	
+	field(DO3, "")
+	field(DO4, "")	
+	
+	
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined).FPTS PP")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined).NPTS PP")
+	
+	field(LNK3, "")
+	field(LNK4, "")
+
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-SET_POS_RBV")
+}
+
+
+# Configures the sscan record to: 
+#    - automatically recalculate number of points
+#    - sets mode of the positioner to "LINEAR"
+#
+# Changes input of the common positions waveform to get values
+# from sscan record (.PnCA) 
+
+record(seq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-STEPCONF")
+{
+	field(DESC, "Sets SSCAN in Step mode")
+	
+	field(DO1,  "0")
+
+	field(DO2, "")
+	field(DO3, "")
+	
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined).FPTS PP")
+
+	field(LNK2, "")
+	field(LNK3, "")
+
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-SET_POS_RBV")
+}
+
+
+# Configure RBV PV depending on mode
+
+# Set read back pv for positioner.
+# Read back value for step mode are usually a scalar PV.
+# For example the .RBV field on the motor record.
+#
+# Read back value for fly scan is usually an array.
+# Due to that aggregation of positions often happens closer to the source
+# due to the timing critical nature of fly scans.
+# Sccan will however aggreage position from scalar also during fly scan,
+# If this want to be done simply specifiy  to a scalar instead.
+record(sseq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-SET_POS_RBV")
+{
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-MODE_SEL NPP")
+
+	field(STR1, "$(PSU_RBV,undefined)")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined).R4PV PP")
+
+	field(STR2, "$(PSU_RBV,undefined)")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined).R4PV PP")
+
+	field(STR3, "")
+	field(LNK3, "$(DEVICE,recursive):$(SCAN_EF,undefined).R4PV PP")
+
+}
+
+
+# Common record for exposing number of read positions. This is used to expose
+# Number of positions collected from a separate component which aggregates positions for fly scans.
+# In step mode it will simply follow the .CPT field on sscan.
+# 
+# It updates on:
+#    1) change of .CPT if in LINEAR mode,
+#    2) by explicit update from external positioner control records when in FLY mode.
+# 		In this case, the positioner control logic is responsible to process this record!
+#
+# When in FLY mode, it is required to process this by external component
+# when provided position array is updated (Macro(POS_ARR_RBV_PV))
+
+record(calc, "$(DEVICE,recursive):$(SCAN_EF,undefined)-NORD_POS")
+{
+	field(CALC, "A = 2 ? B : C")
+	
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined).P4SM")
+	
+	field(INPB, "0")
+	field(INPC, "$(DEVICE,recursive):$(SCAN_EF,undefined).CPT CP")
+
+}
+
+
+# File  : scanTRCtrl.template
+# Author: Rok Stefanic <rok.stefanic@cosylab.com>
+# Modified: Alexander Soderqvist <alexander.soderqvist@cosylab.com>
+
+# This template implements all necessary logic for acquiring timestamps on received
+# timing events which generate HW triggers used by the positioner and detector.
+#
+
+# Macro:
+#   TR_TLTSEL	Full name of the record which holds the time-stamp of the
+#               HW trigger generation on the timing receiver.
+#                   Example: DTL-Ctrl:TR-01:ACT-TL3-EV5-RBV.TIME
+
+# It also requires a forward link to signal when to store the timestamp.
+# The forward link should be direct to SAVE_TS record and is commonly set 
+# from DAQDetTrigger done signal for one dimensional scans. 
+# On two dimensional scan the outer scan's SAVE_TS record can be forward linked
+# from an after scan link on the inner scan. And TR_TLTSEL can be set to TS_START 
+# from the inner scan.
+
+# Record converts the time-stamp of HW trigger generation
+# on timing receiver trigger line output
+
+record(stringin, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS")
+{
+	field(DTYP, "Soft Timestamp" )
+   	field(TSEL, "$(TR_TLTSEL,recursive)" )
+ 	field(INP,  "@%Y-%m-%d %H:%M:%S.%09f" )
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_ARRAY_CONCAT")
+}
+
+
+# aSub routine concatenates all incoming time-stamps to an array
+
+record(aSub, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_ARRAY_CONCAT")
+{
+	field(DESC, "Concatenate time-stamps")
+	field(INAM, "concatTSArrayInit")
+	field(SNAM, "concatTSArrayProcess")
+
+	field(FTA,  "STRING")
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS.VAL NPP")
+	
+	field(FTB,  "LONG")
+	field(INPB, "$(DEVICE,recursive):$(SCAN_EF,undefined).CPT NPP")
+
+	field(NOVA, "$(MAX_POINTS_EF,undefined)")
+	field(FTVA, "STRING")
+	field(OUTA, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_ARR.VAL PP")	
+	
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_START_")
+}
+
+
+# Internal record to determine if trigger is the first
+# trigger of the current scan. If so, then record
+# -TS_START will be processed which will holed
+# the time-stamp when the scan was started.
+# Time-stamp is obtained directly from the timing
+# receiver (time when the timing event was received
+# and HW trigger signal was generated)
+
+record(calcout, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_START_")
+{
+	field(DESC, "Process ts of first trigger")
+	field(CALC, "A = 0 ? 0 : 1")
+	
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined).CPT NPP")
+	
+	field(DOPT, "Use OCAL")
+	field(OOPT, "When Zero")
+	field(OCAL, "1")
+	
+	field(OUT,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_START.PROC PP")	
+}
+
+
+# Record is processed when the first timing event is
+# received - generating the first HW trigger signal 
+# in the timing receiver. This time-stamp is the actual 
+# time when scan started.
+
+record(longin, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_START")
+{
+	field(DESC, "TS of first trigger")
+	field(MDEL, "-1")
+	
+	field(TSEL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS.TIME")
+}
+
+
+# Array containing all time-stamps gathered during the scan
+
+record(waveform, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_ARR")
+{   
+	field(NELM, "$(MAX_POINTS_EF,undefined)")
+    	field(FTVL, "STRING")
+}
+
+
+# Trigger end of scan timestamp read-back array to be stored.
+record(bi, "$(DEVICE,recursive):$(SCAN_EF,undefined)-EOS_TS_RBV")
+{	
+	field(INP, "$(DEVICE,recursive):$(SCAN_EF,undefined).DATA CP")
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_ARR_RBV")  
+}
+
+
+# Store acquired time-stamps when scan is finished
+# NOTE: this record will not be updated during the scan!
+
+record(waveform, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_ARR_RBV")
+{   
+	field(DISV, "0")
+	field(SDIS, "$(DEVICE,recursive):$(SCAN_EF,undefined)-EOS_TS NPP")    
+
+	field(NELM, "$(MAX_POINTS_EF,undefined)")
+    	field(FTVL, "STRING")
+
+	field(INP, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_ARR")
+    
+	# Set the time of the record to the beginning of the scan
+	# (time of the first timing trigger)
+	field(TSEL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS_START.TIME")
+}
+
+# Record that MUST be processed once acquisition on the detector is triggered 
+# acquisition ends. It is necessary that DAQ functions in blocking mode,
+# where this process is processed when DAQ finishes and unblocks.
+# The record will trigger saving the time-stamp into the internal time-stamp array.
+#
+# The record will not be processed when the scan is not active.
+# This enables the inner scan to be performed without affecting the outter scan
+# in a setup of 2D scan.
+
+record(fanout, "$(DEVICE,recursive):$(SCAN_EF,undefined)-SAVE_TS")
+{
+	field(DESC, "Save timestamp")
+	
+	# Disable record processing if the scan component is not active
+	# The case for this is in 2D scans and the inner scan is executed.
+	# Without this guard, time-stamps from the inner scan component would
+	# be appended to the array.
+		
+	field(DISV, "0")
+	field(SDIS, "$(DEVICE,recursive):$(SCAN_EF,undefined).BUSY NPP")
+	
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TS")
+}
+# File  : scanTRDetTrig.template
+# Author: Alexander Soderqvist  <alexander.soderqvist@cosylab.com>
+
+# The purpose of this template is to provide an interface to the ESS timing receiver.
+# The actual timing receiver logic still has to be provided by an external component,
+# which can be found in the trAction.template of the timing receiver support.
+#
+# It also handles auto abort for fly scan which is related to turning of
+# trigger lines at the correct moment to assure conformity in positioner and data points.
+#
+# This template is not meant to be used as a stand-alone component but together with scanGeneric.template.
+
+# Controls trigger generation on trigger liens on the timing receiver.
+#
+#
+# MACRO:
+# 	TR_TL1		Record Name of the TR record responsible to control the output
+# 					Example: DTL-Ctrl:TR-01:ACT-TL3-EV5
+# And TR_TL2 and TR_TL3 for controlling more trigger lines.
+#
+#	TL_ENBL_VAL	Value written to enable reaction to events on triggler line.
+#	TL_DIS_VAL	Value written to disable reaction to events on triggler line.
+
+
+# INTERFACE SSCAN record detector trigger:
+# Detects the first detector trigger issued by SSCAN record (when <SSCAN>.CPT == 0)
+# And activate trigger lines
+record(calc, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TRTRG")
+{
+	field(DESC, "Detects first detector trigger")
+	field(CALC, "A = 0 ? 1 : 2")
+
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined).CPT NPP")
+	
+	field(FLNK,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-OPSEL")
+}
+
+record(seq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-OPSEL")
+{
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TRTRG")
+
+	# Enable trigger lines
+	field(DO1, "1")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TR_TLCTRL.VAL PP")
+	
+	# Else dact trigger lines
+	field(DO2, "1")
+	field(LNK2, "$(DEVICE,recursive):$(SCAN_EF,undefined)-DACT_TR.PROC PP")
+}
+
+# INTERNAL RECORD & INTERFACE SCAN GENERIC:
+# Control Trigger lines reaction to event
+# "Simultaneosly" enable/disable reaction to events on multiple trigger lines.
+# Note that this might be a hack. The timing receiver has to support doing this otherwise
+# we have a race condition, even though it seems unlikely to actually happen.
+# This will however only happen for fly scans.
+record(dfanout, "$(DEVICE,recursive):$(SCAN_EF,undefined)-TR_TLCTRL")
+{
+	field(DESC, "Enable/disable TR output")
+	field(OMSL, "supervisory")
+
+	field(OUTA, "$(TR_TL,undefined) PP")
+	field(OUTB, "")
+	field(OUTC, "")
+}
+
+# INTERNAL RECORD:
+# Deactivate trigger lines for fly scans when number of points 
+# is reached or the positioner is done moving.
+record(calcout, "$(DEVICE,recursive):$(SCAN_EF,undefined)-DACT_TR")
+{
+	field(DESC, "Deactivate TR trigger lines")
+	field(CALC, "A = 2 && (B = 1 || C = D) ? 0 : 1")
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined).P4SM NPP")
+	field(INPB, "0")
+	field(INPC, "$(DEVICE,recursive):$(SCAN_EF,undefined).CPT NPP")
+	field(INPD, "$(DEVICE,recursive):$(SCAN_EF,undefined).NPTS NPP")
+	
+	field(OCAL, "0")
+	field(OOPT, "When Zero")
+	field(DOPT, "Use OCAL")
+	field(OUT,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-TR_TLCTRL PP")
+# Trigger Auto abort
+	field(FLNK, "$(DEVICE,recursive):$(SCAN_EF,undefined)-AUTOABORT")
+}
+
+# INTERNAL RECORD: 
+# If triggler lines were deactivated and positioner is done moving
+# trigger auto abort links to finish the scan. To avoid waiting for NPTS to be collected.
+record(calcout, "$(DEVICE,recursive):$(SCAN_EF,undefined)-AUTOABORT")
+{
+	field(DESC, "Auto abort fly scans")
+	field(CALC, "A = 0 && B = 1 ? 0 : 1")	
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined)-DACT_TR NPP")
+	field(INPB, "0")
+	field(OOPT, "When Zero")
+
+	field(OUT,  "$(DEVICE,recursive):$(SCAN_EF,undefined)-AUTOABLNK.PROC PP")
+}
+
+# Auto abort links.
+# Abort scan and execute user defined links for any other things
+# that needs to be finsihsed or reset.
+record(seq, "$(DEVICE,recursive):$(SCAN_EF,undefined)-AUTOABLNK")
+{
+	field(DLY1, "0.1")
+	field(DO1, "0")
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined).EXSC NPP")
+	
+	field(DLY2, "0.1")
+	field(DO2, "")
+	field(LNK2, "")
+	
+	field(DLY3, "0.1")
+	field(DO3, "")
+	field(LNK3, "")
+
+}
+# scanDetTrig.template
+# Author: Alexander Soderqvist <alexander.soderqvist@esss.se>
+#
+# Template containing generic detector trigger logic.
+# This is not a standalone component.
+# It is Intended to use with DAQ specific logic, for example
+# scanDetTrigNDSDAQSupp.template, as a detector trigger on sScan record.
+#
+# Support for a detector trigger is implemented with a one record interface:
+# $(DEVICE,recursive):DAQTRG-ACQ_CTRL. Writing zero to this has to stop acquistion and
+# writing 1 to this has to start acquistion.
+
+
+# SSCAN DETECTOR TRIGGER INTERFACE:
+# 1. Writes number of acqusitions to a user definable PV.
+# 2. Set detector trigger as busy.
+# 3. Triggers activate acquisition
+
+record(seq, "$(DEVICE,recursive):DAQTRG-TRG")
+{	
+	field(DO1,  "1")
+	field(LNK1, "$(DEVICE,recursive):DAQTRG-BUSY PP")
+
+	field(DO2,  "1")
+	field(LNK2, "$(DEVICE,recursive):DAQTRG-ACT_ACQ.PROC PP")
+
+}
+
+# INTERFACE DAQ DETECTOR TRIGGER SUPPORT:
+# Activates acqusition on the DAQ device.
+# When at the first point in the scan always activate.
+# When positioner is not in FLY mode always activate.
+record(calcout, "$(DEVICE,recursive):DAQTRG-ACT_ACQ")
+{
+	field(DESC, "Detects first detector trigger")
+	field(CALC, "A = 0 || B # 1 ? 0 : 1")
+
+	field(INPA, "$(DEVICE,recursive):$(SCAN_EF,undefined).CPT NPP")
+	field(INPB, "$(DEVICE,recursive):$(SCAN_EF,undefined).P4SM NPP")
+	
+	field(DOPT, "Use OCAL")
+	field(OOPT, "When Zero")
+	field(OCAL, "2")
+	
+	field(OUT,  "$(DEVICE,recursive):DAQTRG-ACQ_CTRL_ PP")
+}
+
+# INTERNAL RECORD:
+# Triggers start or stop of acquisition message to be sent.
+# Write 1 starts acquisiton and 0 stops acquistion
+
+record(mbbi, "$(DEVICE,recursive):DAQTRG-ACQ_CTRL_")
+{
+	field(FLNK, "$(DEVICE,recursive):DAQTRG-ACQ_CTRL")
+	field(ONST, "Acq. stopped")
+	field(ONVL, "1")
+	field(TWST, "Acq. started")
+	field(TWVL, "2")
+}
+
+# INTERFACE DAQ DEVICE
+# Starts acqusition when ACQ_CTRL_ is 2 and stop when 1.
+
+record(sseq, "$(DEVICE,recursive):DAQTRG-ACQ_CTRL")
+{
+	field(SELM, "Specified")
+	field(SELL, "$(DEVICE,recursive):DAQTRG-ACQ_CTRL_")
+	
+	field(DO1, "")
+	field(STR1, "ON")
+	field(LNK1, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0-STAT PP")
+
+	field(DO2, "")
+	field(STR2, "RUNNING")
+	field(LNK2, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0-STAT PP")
+}
+
+
+# SSCAN DETECTOR TRIGGER INTERFACE:
+# Signals busy while being 1 and signals completion when going 1 to 0. 
+
+record(busy, "$(DEVICE,recursive):DAQTRG-BUSY")
+{
+}
+
+
+# SCAN GENERIC INTERFACE and INTERNAL RECORD:
+# Fanout with Macro that is used to trigger saving of timestamps and DAQ data rdy.
+# Set busy to 0 to signal to SScan that DAQ data is ready.
+
+record(seq, "$(DEVICE,recursive):DAQTRG-RDY")
+{	
+	field(DO1, "1")
+	field(DO2, "0")
+
+	# Notify scanTSarray component that acquisition is done and
+	# timestamp can be saved.
+	# 
+	# This is a necessary action needed to be done by the detector control!
+	field(LNK1, "$(DEVICE,recursive):$(SCAN_EF,undefined)-SAVE_TS.PROC PP")
+	
+	field(LNK2, "$(DEVICE,recursive):DAQTRG-BUSY PP")
+}
+
+# DETECTOR INTERFACE:
+# Process its output link when all detectors are done.
+# Each detector's compress record has a forward link to this record.
+
+record(calc, "$(DEVICE,recursive):DAQTRG-DETCNT")
+{
+	field(CALC, "C = 1 ? A % B + 1 : 0")
+	field(INPA, "$(DEVICE,recursive):DAQTRG-DETCNT.VAL NPP")
+	field(INPB, "3")
+	field(INPC, "$(DEVICE,recursive):DAQTRG-BUSY.VAL NPP")
+	field(FLNK, "$(DEVICE,recursive):DAQTRG-DETRDY NPP")
+}
+
+# DAQ state Guard:
+# Note that if the DAQ state pv is used, there has to be a forward link
+# from the state record to this record.
+record(calcout, "$(DEVICE,recursive):DAQTRG-DAQSTGUARD")
+{
+	field(CALC, "A = B & C = 1 ? 0 : 1")
+	field(INPA, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0-STAT-RB")
+	field(INPB, "4")
+	field(INPC, "$(DEVICE,recursive):DAQTRG-BUSY PP")
+	field(OOPT, "When Zero")
+	field(OUT,  "$(DEVICE,recursive):DAQTRG-DETRDY.PROC PP")
+
+}
+
+# INTERNAL RECORD:
+# Trigger RDY_FOUT record when all detectors has fired their forwards links.
+# Also check that DAQ is in the right state to be armed again, 
+# so next iteration can be started immediatley. If macros are unset their
+# default values will ignore it and only count detectors ready.
+record(calcout, "$(DEVICE,recursive):DAQTRG-DETRDY")
+{
+	field(CALC, "A = B & C = D ? 0 : 1")
+	field(INPA, "$(DEVICE,recursive):DAQTRG-DETCNT NPP")
+	field(INPB, "3")
+	field(INPC, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0-STAT-RB")
+	field(INPD, "4")
+	field(OOPT, "When Zero")
+	field(OUT,  "$(DEVICE,recursive):DAQTRG-RDY.PROC PP")
+
+}
+
+# INTERFACE SCAN GENERIC:
+# Resets the detecor trigger when a scan is aborted.
+# Issues an event which lets all detectors reset as well.
+# DAQ support's ACQ_CTRL record has to stop acqusition when 
+# writing 0 to it.
+
+record(seq, "$(DEVICE,recursive):DAQTRG-RST")
+{
+	field(DO1, "0")
+	field(DO2, "1")
+	field(DO3, "1")
+
+	field(LNK1, "$(DEVICE,recursive):DAQTRG-BUSY.VAL PP")
+	field(LNK2, "$(DEVICE,recursive):DAQTRG-ACQ_CTRL_.VAL PP")
+	field(LNK3, "$(DEVICE,recursive):DAQTRG-DETCNT.PROC PP")
+	field(FLNK, "$(DEVICE,recursive):DAQTRG-RSTDET")
+}
+
+# DETECTOR INTERFACE and SCAN GENERIC
+# This reset event for detectors used for when scan is aborted.
+
+record(event, "$(DEVICE,recursive):DAQTRG-RSTDET")
+{
+	field(VAL, "55")
+}
+# scanDet.template
+# Author: Alexander Soderqvist <alexander.soderqvist@esss.se>
+#
+# Generic detector for scan.
+# Used with scanDetTrig.template in generic scanning.
+# NOT SUPPOSED be used as a stand alone Component
+
+
+# DAQ INTERFACE:
+# Guard to avoid processing unless detector trigger on SSCAN notified busy
+# This is the record where the DAQ input channels forward link should be set to.
+
+record(calcout, "$(DEVICE,recursive):DET1-GUARD")
+{
+	field(CALC, "A")
+	field(INPA, "$(DEVICE,recursive):DAQTRG-BUSY.VAL NPP")
+	
+	field(OOPT, "When Non-zero")
+	field(DOPT, "Use OCAL")
+	field(OCAL, "1")
+	field(OUT,  "$(DEVICE,recursive):DET1-PULSCNT.PROC PP")
+}
+
+# INTERNAL RECORD:
+# Incoming pulse acqusition counter
+
+record(calcout, "$(DEVICE,recursive):DET1-PULSCNT")
+{
+	field(CALC, "C = 1 ? (A % ABS(B)) + 1 : 0")
+	field(INPA, "$(DEVICE,recursive):DET1-PULSCNT NPP")
+	field(INPB, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB NPP")
+	field(INPC, "$(DEVICE,recursive):DAQTRG-BUSY.VAL NPP")
+	
+	field(OOPT, "When Non-zero")
+	field(DOPT, "Use OCAL")
+	field(OCAL, "1")
+
+	field(OUT, "$(DEVICE,recursive):DET1-TRGCOMP.PROC PP")
+}
+
+# INTERNAL RECORD: 
+# Trigger compression of waveform record.
+# This can be combined with averaging, in that case it should first trigger averaging
+# of the summarized waveform and then compression is triggered from that record.
+
+record(calcout, "$(DEVICE,recursive):DET1-TRGCOMP")
+{
+	field(CALC, "A = ABS(B) ? 0 : 1")
+	field(INPA, "$(DEVICE,recursive):DET1-PULSCNT NPP")
+	field(INPB, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB NPP")
+	field(OOPT, "When Zero")
+	field(OUT,  "$(DEVICE,recursive):DET1-COMPN.PROC PP")
+}
+
+# DETECTOR TRIGGER INTERFACE:
+# Set compress record to averageover N elements.
+# This should be Number of samples from the data acqusition device.
+# There has to be a forward link to this record for nsampels setting on DAQ.
+
+record(seq, "$(DEVICE,recursive):DET1-COMPN")
+{
+	field(DOL1, "$(DAQNDSPREFIX,undefined):$(DET1WF,undefined).NORD")
+	field(LNK1, "$(DEVICE,recursive):DET1-COMP.N")
+	field(FLNK, "$(DEVICE,recursive):DET1-COMP")
+}
+
+# DETECTOR TRIGGER and sSCAN DETECTOR INTERFACE:
+# Averages DAQ DATA array to a scalar value.
+# Holds scalar value which should be referenced to by sscan's detector.
+
+record(compress, "$(DEVICE,recursive):DET1-COMP")
+{
+	field(ALG,  "N to 1 Average")
+	field(INP,  "$(DAQNDSPREFIX,undefined):$(DET1WF,undefined)")
+	field(N,    "$(DAQBUFSIZE,undefined)")
+	field(FLNK, "$(DEVICE,recursive):DAQTRG-DETCNT")
+}
+
+
+
+# DETECTOR TRIGGER INTERFACE:
+# Resets detectors pulse counter when an abort is issued.
+
+record(bo, "$(DEVICE,recursive):DET1-RSTABORT")
+{
+	field(SCAN, "Event")
+	field(EVNT, "55")
+	field(FLNK,  "$(DEVICE,recursive):DET1-PULSCNT")
+}
+
+# DAQ INTERFACE:
+# Reset puls counter if Trigger repeat on DAQ changes
+
+record(longin, "$(DEVICE,recursive):DET1-RSTTRGRCHG")
+{
+	field(INP, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB CP")
+	field(FLNK,  "$(DEVICE,recursive):DET1-PULSCNT")
+}# scanDet.template
+# Author: Alexander Soderqvist <alexander.soderqvist@esss.se>
+#
+# Generic detector for scan.
+# Used with scanDetTrig.template in generic scanning.
+# NOT SUPPOSED be used as a stand alone Component
+
+
+# DAQ INTERFACE:
+# Guard to avoid processing unless detector trigger on SSCAN notified busy
+# This is the record where the DAQ input channels forward link should be set to.
+
+record(calcout, "$(DEVICE,recursive):DET2-GUARD")
+{
+	field(CALC, "A")
+	field(INPA, "$(DEVICE,recursive):DAQTRG-BUSY.VAL NPP")
+	
+	field(OOPT, "When Non-zero")
+	field(DOPT, "Use OCAL")
+	field(OCAL, "1")
+	field(OUT,  "$(DEVICE,recursive):DET2-PULSCNT.PROC PP")
+}
+
+# INTERNAL RECORD:
+# Incoming pulse acqusition counter
+
+record(calcout, "$(DEVICE,recursive):DET2-PULSCNT")
+{
+	field(CALC, "C = 1 ? (A % ABS(B)) + 1 : 0")
+	field(INPA, "$(DEVICE,recursive):DET2-PULSCNT NPP")
+	field(INPB, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB NPP")
+	field(INPC, "$(DEVICE,recursive):DAQTRG-BUSY.VAL NPP")
+	
+	field(OOPT, "When Non-zero")
+	field(DOPT, "Use OCAL")
+	field(OCAL, "1")
+
+	field(OUT, "$(DEVICE,recursive):DET2-TRGCOMP.PROC PP")
+}
+
+# INTERNAL RECORD: 
+# Trigger compression of waveform record.
+# This can be combined with averaging, in that case it should first trigger averaging
+# of the summarized waveform and then compression is triggered from that record.
+
+record(calcout, "$(DEVICE,recursive):DET2-TRGCOMP")
+{
+	field(CALC, "A = ABS(B) ? 0 : 1")
+	field(INPA, "$(DEVICE,recursive):DET2-PULSCNT NPP")
+	field(INPB, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB NPP")
+	field(OOPT, "When Zero")
+	field(OUT,  "$(DEVICE,recursive):DET2-COMPN.PROC PP")
+}
+
+# DETECTOR TRIGGER INTERFACE:
+# Set compress record to averageover N elements.
+# This should be Number of samples from the data acqusition device.
+# There has to be a forward link to this record for nsampels setting on DAQ.
+
+record(seq, "$(DEVICE,recursive):DET2-COMPN")
+{
+	field(DOL1, "$(DAQNDSPREFIX,undefined):$(DET2WF,undefined).NORD")
+	field(LNK1, "$(DEVICE,recursive):DET2-COMP.N")
+	field(FLNK, "$(DEVICE,recursive):DET2-COMP")
+}
+
+# DETECTOR TRIGGER and sSCAN DETECTOR INTERFACE:
+# Averages DAQ DATA array to a scalar value.
+# Holds scalar value which should be referenced to by sscan's detector.
+
+record(compress, "$(DEVICE,recursive):DET2-COMP")
+{
+	field(ALG,  "N to 1 Average")
+	field(INP,  "$(DAQNDSPREFIX,undefined):$(DET2WF,undefined)")
+	field(N,    "$(DAQBUFSIZE,undefined)")
+	field(FLNK, "$(DEVICE,recursive):DAQTRG-DETCNT")
+}
+
+
+
+# DETECTOR TRIGGER INTERFACE:
+# Resets detectors pulse counter when an abort is issued.
+
+record(bo, "$(DEVICE,recursive):DET2-RSTABORT")
+{
+	field(SCAN, "Event")
+	field(EVNT, "55")
+	field(FLNK,  "$(DEVICE,recursive):DET2-PULSCNT")
+}
+
+# DAQ INTERFACE:
+# Reset puls counter if Trigger repeat on DAQ changes
+
+record(longin, "$(DEVICE,recursive):DET2-RSTTRGRCHG")
+{
+	field(INP, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB CP")
+	field(FLNK,  "$(DEVICE,recursive):DET2-PULSCNT")
+}# scanDet.template
+# Author: Alexander Soderqvist <alexander.soderqvist@esss.se>
+#
+# Generic detector for scan.
+# Used with scanDetTrig.template in generic scanning.
+# NOT SUPPOSED be used as a stand alone Component
+
+
+# DAQ INTERFACE:
+# Guard to avoid processing unless detector trigger on SSCAN notified busy
+# This is the record where the DAQ input channels forward link should be set to.
+
+record(calcout, "$(DEVICE,recursive):DET3-GUARD")
+{
+	field(CALC, "A")
+	field(INPA, "$(DEVICE,recursive):DAQTRG-BUSY.VAL NPP")
+	
+	field(OOPT, "When Non-zero")
+	field(DOPT, "Use OCAL")
+	field(OCAL, "1")
+	field(OUT,  "$(DEVICE,recursive):DET3-PULSCNT.PROC PP")
+}
+
+# INTERNAL RECORD:
+# Incoming pulse acqusition counter
+
+record(calcout, "$(DEVICE,recursive):DET3-PULSCNT")
+{
+	field(CALC, "C = 1 ? (A % ABS(B)) + 1 : 0")
+	field(INPA, "$(DEVICE,recursive):DET3-PULSCNT NPP")
+	field(INPB, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB NPP")
+	field(INPC, "$(DEVICE,recursive):DAQTRG-BUSY.VAL NPP")
+	
+	field(OOPT, "When Non-zero")
+	field(DOPT, "Use OCAL")
+	field(OCAL, "1")
+
+	field(OUT, "$(DEVICE,recursive):DET3-TRGCOMP.PROC PP")
+}
+
+# INTERNAL RECORD: 
+# Trigger compression of waveform record.
+# This can be combined with averaging, in that case it should first trigger averaging
+# of the summarized waveform and then compression is triggered from that record.
+
+record(calcout, "$(DEVICE,recursive):DET3-TRGCOMP")
+{
+	field(CALC, "A = ABS(B) ? 0 : 1")
+	field(INPA, "$(DEVICE,recursive):DET3-PULSCNT NPP")
+	field(INPB, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB NPP")
+	field(OOPT, "When Zero")
+	field(OUT,  "$(DEVICE,recursive):DET3-COMPN.PROC PP")
+}
+
+# DETECTOR TRIGGER INTERFACE:
+# Set compress record to averageover N elements.
+# This should be Number of samples from the data acqusition device.
+# There has to be a forward link to this record for nsampels setting on DAQ.
+
+record(seq, "$(DEVICE,recursive):DET3-COMPN")
+{
+	field(DOL1, "$(DAQNDSPREFIX,undefined):$(DET3WF,undefined).NORD")
+	field(LNK1, "$(DEVICE,recursive):DET3-COMP.N")
+	field(FLNK, "$(DEVICE,recursive):DET3-COMP")
+}
+
+# DETECTOR TRIGGER and sSCAN DETECTOR INTERFACE:
+# Averages DAQ DATA array to a scalar value.
+# Holds scalar value which should be referenced to by sscan's detector.
+
+record(compress, "$(DEVICE,recursive):DET3-COMP")
+{
+	field(ALG,  "N to 1 Average")
+	field(INP,  "$(DAQNDSPREFIX,undefined):$(DET3WF,undefined)")
+	field(N,    "$(DAQBUFSIZE,undefined)")
+	field(FLNK, "$(DEVICE,recursive):DAQTRG-DETCNT")
+}
+
+
+
+# DETECTOR TRIGGER INTERFACE:
+# Resets detectors pulse counter when an abort is issued.
+
+record(bo, "$(DEVICE,recursive):DET3-RSTABORT")
+{
+	field(SCAN, "Event")
+	field(EVNT, "55")
+	field(FLNK,  "$(DEVICE,recursive):DET3-PULSCNT")
+}
+
+# DAQ INTERFACE:
+# Reset puls counter if Trigger repeat on DAQ changes
+
+record(longin, "$(DEVICE,recursive):DET3-RSTTRGRCHG")
+{
+	field(INP, "$(DAQNDSPREFIX,undefined):PBI-EM:CARD0:TriggerRepeat-RB CP")
+	field(FLNK,  "$(DEVICE,recursive):DET3-PULSCNT")
+}
+
+record(fanout, "LNS-ISRC-010:PBI-EMV-FC:CurrR:OUT") {
+	field(SCAN,"Event")
+	field(EVNT,"10")
+        field(LNK1,"LNS-ISRC-010:PBI-EMV-FC:CurrR:SIGNAL-FUNCTION")
+}
+
+#high treshold
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD") {
+    	field(DESC, "Current FC ")
+    	field(EGU,  "kW")
+	field(PREC, 4)
+	field(VAL,"1000000")
+        field(FLNK, "LNS-ISRC-010:PBI-EMV-FC:CurrR:CURSOR_FANOUT") 
+}
+#low treshold
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD") {
+	field(DESC, "Current FC")
+	field(EGU,  "kW")
+	field(PREC, 4)
+	field(VAL,"-1000000")
+	field(FLNK, "LNS-ISRC-010:PBI-EMV-FC:CurrR:CURSOR_FANOUT") 
+
+}
+# measure minimum
+record(ai, "LNS-ISRC-010:PBI-EMV-FC:CurrR:MIN") {
+    field(DESC, "Current FC : min")
+    field(EGU,  "kW")
+    field(PREC, 2)
+
+}
+
+# measure maximum
+record(ai, "LNS-ISRC-010:PBI-EMV-FC:CurrR:MAX") {
+	field(DESC, "Current FC : max")
+	field(EGU,  "kW")
+	field(PREC, 2)
+   
+}
+
+
+
+# measure average
+record(ai, "LNS-ISRC-010:PBI-EMV-FC:CurrR:AVG") {
+	field(DESC, "Current FC : average")
+	field(EGU,  "kW")
+	field(PREC, 2)
+
+}
+
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Trig") {
+  	field(VAL, "0")
+}
+
+
+# measure integral
+record(ai, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Integral") {
+    field(DESC, "Current FC : integral")
+    field(PREC, 2)
+
+}
+
+
+
+# measure width
+record(ai, "LNS-ISRC-010:PBI-EMV-FC:CurrR:WIDTH") {
+    field(DESC, "Current FC : width")
+    field(EGU,  "ms")
+    field(PREC, 4)
+
+}
+
+# measure effective width
+record(ai, "LNS-ISRC-010:PBI-EMV-FC:CurrR:EFF_WIDTH") {
+    field(DESC, "Current FC : width")
+    field(EGU,  "ms")
+    field(PREC, 4)
+
+}
+
+#
+record(bo, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Visible") {
+  field(VAL,  "1")
+}
+
+# Size of the display signals (CurrR_X et CurrR_Y)
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:SIZE") {
+	field(VAL,"520")
+  }
+
+# Signal Y reduce to 520 element 
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR_Y") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+  field(FLNK,"LNS-ISRC-010:PBI-EMV-FC:CurrR_YFREQ")
+}
+
+#X Axis : number of sample
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR_X") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+}
+
+#X Axis : in ms
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR_XMS") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+}
+
+#Number of pulse since the initialization of the variable
+record(calc, "LNS-ISRC-010:PBI-EMV-FC:CurrR_YFREQ") {
+  field(VAL, "0")
+  field(CALC, "VAL+1") 
+}
+
+
+#Function that compute avg,min,max and produced a reduced signal limited to 520
+record(aSub, "LNS-ISRC-010:PBI-EMV-FC:CurrR:SIGNAL-FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,16000)
+	field(INPA,  "LNS-ISRC-010:PBI-EMV-FC:CurrR")
+  	field(FTB, "FLOAT")
+	field(NOB,1)
+	field(INPB,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:SIZE")
+  	field(FTC, "FLOAT")
+	field(NOC,1)
+	field(INPC,  "LNS-ISRC-010:PBI-EMV-FC:CurrR.NORD")
+  	field(FTD, "FLOAT")
+	field(NOD,1)
+	field(INPD,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR")
+  	field(FTE, "FLOAT")
+	field(NOE,1)
+	field(INPE,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR")
+  	field(FTF, "FLOAT")
+	field(NOF,1)
+	field(INPF,  "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB CA")
+  	field(FTG, "FLOAT")
+	field(NOG,1)
+	field(INPG,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD")
+  	field(FTH, "FLOAT")
+	field(NOH,1)
+	field(INPH,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD")
+  	field(FTI, "FLOAT")
+	field(NOI,1)
+	field(INPI,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:Trig")
+	
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "16000")
+	field(OUTA, "LNS-ISRC-010:PBI-EMV-FC:CurrR_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "520")
+	field(OUTB, "LNS-ISRC-010:PBI-EMV-FC:CurrR_X PP")
+
+  	field(FTVC, "FLOAT")
+	field(NOVC, "520")
+	field(OUTC, "LNS-ISRC-010:PBI-EMV-FC:CurrR_XMS PP")
+
+  	field(FTVD, "FLOAT")
+	field(NOVD, "1")
+	field(OUTD, "LNS-ISRC-010:PBI-EMV-FC:CurrR:AVG PP")
+
+  	field(FTVE, "FLOAT")
+	field(NOVE, "1")
+	field(OUTE, "LNS-ISRC-010:PBI-EMV-FC:CurrR:MIN PP")
+
+  	field(FTVF, "FLOAT")
+	field(NOVF, "1")
+	field(OUTF, "LNS-ISRC-010:PBI-EMV-FC:CurrR:MAX PP")
+
+  	field(FTVG, "FLOAT")
+	field(NOVG, "1")
+	field(OUTG, "LNS-ISRC-010:PBI-EMV-FC:CurrR:WIDTH PP")
+
+  	field(FTVH, "FLOAT")
+	field(NOVH, "1")
+	field(OUTH, "LNS-ISRC-010:PBI-EMV-FC:CurrR:EFF_WIDTH PP")
+
+  	field(FTVI, "FLOAT")
+	field(NOVI, "1")
+	field(OUTI, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Integral PP")
+
+  	field(FTVJ, "FLOAT")
+	field(NOVJ, "1")
+	field(OUTJ, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Trig PP")
+
+
+    field(SNAM, "signalFunction")
+
+}
+
+
+# Left cursor in ms
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_ms") {
+	field(DOL,"")
+	field(OMSL,"closed_loop")
+	field(FLNK,"LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_calc")
+}
+
+#Calc sample -> ms
+record(calcout, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_calc") {
+	field(PINI,"YES")
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB")
+ 	field(INPB, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_ms")
+ 	field(CALC, "B*A/1000")
+	field(OUT,"LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR PP")
+}
+
+# Left cursor
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR") {
+	field(PINI,"YES")
+	field(VAL,"-1000000")
+        field(LOPR,"0")
+        field(HOPR,"16000")
+	field(FLNK, "LNS-ISRC-010:PBI-EMV-FC:CurrR:CURSOR_FANOUT") 
+}
+
+#waveform used to display the left cursor on a graph : X
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the left cursor on a graph : Y
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_ms")
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD")
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_X PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_Y PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+record(fanout, "LNS-ISRC-010:PBI-EMV-FC:CurrR:CURSOR_FANOUT")
+{
+    field(LNK1, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_FUNCTION PP") 
+    field(LNK2, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_FUNCTION PP") 
+    field(LNK3, "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD_FUNCTION PP") 
+    field(LNK4, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD_FUNCTION PP") 
+}
+
+
+# Right cursor in ms
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_ms") {
+	field(VAL,"0")
+	field(DOL,"")
+	field(OMSL,"closed_loop")
+	field(FLNK,"LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_calc")
+}
+record(calcout, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_calc") {
+	field(PINI,"YES")
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB")
+ 	field(INPB, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_ms")
+ 	field(CALC, "B*A/1000")
+	field(OUT,"LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR PP")
+}
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR") {
+	field(PINI,"YES")
+	field(VAL,"1000000")
+        field(LOPR,"0")
+        field(HOPR,"16000")
+	field(FLNK, "LNS-ISRC-010:PBI-EMV-FC:CurrR:CURSOR_FANOUT") 
+}
+
+#waveform used to display the right cursor on a graph : X
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the right cursor on a graph : Y
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_ms")
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD")
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_X PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_Y PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+
+
+# Compute the delta between the two cursors in ms
+record(calc,"LNS-ISRC-010:PBI-EMV-FC:CurrR:DELTA"){
+
+	 field(SCAN, ".5 second")
+ 	 field(INPA, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR PP")
+ 	 field(INPB, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR PP")
+ 	 field(INPC, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB PP")
+ 	 field(CALC, "(A-B)*1000/(C)")
+  	 field(EGU,  "ms")
+}
+
+
+#waveform used to display the h threshold : X
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the h threshold : Y
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD")
+
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_ms")
+
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_ms")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EMV-FC:CurrR:HTRESHOLD_X PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+#waveform used to display the h threshold : X
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the h threshold : Y
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD")
+
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_ms")
+
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_ms")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LTRESHOLD_X PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+
+
+
+
+record(fanout, "LNS-ISRC-010:PBI-EM-HV1:VoltR:OUT") {
+	field(SCAN,"Event")
+	field(EVNT,"11")
+        field(LNK1,"LNS-ISRC-010:PBI-EM-HV1:VoltR:SIGNAL-FUNCTION")
+}
+
+#high treshold
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD") {
+    	field(DESC, "Voltage HV1 FC ")
+    	field(EGU,  "kW")
+	field(PREC, 4)
+	field(VAL,"1000000")
+        field(FLNK, "LNS-ISRC-010:PBI-EM-HV1:VoltR:CURSOR_FANOUT") 
+}
+#low treshold
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD") {
+	field(DESC, "Voltage HV1 FC")
+	field(EGU,  "kW")
+	field(PREC, 4)
+	field(VAL,"-1000000")
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV1:VoltR:CURSOR_FANOUT") 
+
+}
+# measure minimum
+record(ai, "LNS-ISRC-010:PBI-EM-HV1:VoltR:MIN") {
+    field(DESC, "Voltage HV1 FC : min")
+    field(EGU,  "kW")
+    field(PREC, 2)
+
+}
+
+# measure maximum
+record(ai, "LNS-ISRC-010:PBI-EM-HV1:VoltR:MAX") {
+	field(DESC, "Voltage HV1 FC : max")
+	field(EGU,  "kW")
+	field(PREC, 2)
+   
+}
+
+
+
+# measure average
+record(ai, "LNS-ISRC-010:PBI-EM-HV1:VoltR:AVG") {
+	field(DESC, "Voltage HV1 FC : average")
+	field(EGU,  "kW")
+	field(PREC, 2)
+
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Trig") {
+  	field(VAL, "0")
+}
+
+
+# measure integral
+record(ai, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Integral") {
+    field(DESC, "Voltage HV1 FC : integral")
+    field(PREC, 2)
+
+}
+
+
+
+# measure width
+record(ai, "LNS-ISRC-010:PBI-EM-HV1:VoltR:WIDTH") {
+    field(DESC, "Voltage HV1 FC : width")
+    field(EGU,  "ms")
+    field(PREC, 4)
+
+}
+
+# measure effective width
+record(ai, "LNS-ISRC-010:PBI-EM-HV1:VoltR:EFF_WIDTH") {
+    field(DESC, "Voltage HV1 FC : width")
+    field(EGU,  "ms")
+    field(PREC, 4)
+
+}
+
+#
+record(bo, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Visible") {
+  field(VAL,  "1")
+}
+
+# Size of the display signals (VoltR_X et VoltR_Y)
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:SIZE") {
+	field(VAL,"520")
+  }
+
+# Signal Y reduce to 520 element 
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR_Y") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+  field(FLNK,"LNS-ISRC-010:PBI-EM-HV1:VoltR_YFREQ")
+}
+
+#X Axis : number of sample
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR_X") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+}
+
+#X Axis : in ms
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR_XMS") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+}
+
+#Number of pulse since the initialization of the variable
+record(calc, "LNS-ISRC-010:PBI-EM-HV1:VoltR_YFREQ") {
+  field(VAL, "0")
+  field(CALC, "VAL+1") 
+}
+
+
+#Function that compute avg,min,max and produced a reduced signal limited to 520
+record(aSub, "LNS-ISRC-010:PBI-EM-HV1:VoltR:SIGNAL-FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,16000)
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV1:VoltR")
+  	field(FTB, "FLOAT")
+	field(NOB,1)
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:SIZE")
+  	field(FTC, "FLOAT")
+	field(NOC,1)
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV1:VoltR.NORD")
+  	field(FTD, "FLOAT")
+	field(NOD,1)
+	field(INPD,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR")
+  	field(FTE, "FLOAT")
+	field(NOE,1)
+	field(INPE,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR")
+  	field(FTF, "FLOAT")
+	field(NOF,1)
+	field(INPF,  "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB CA")
+  	field(FTG, "FLOAT")
+	field(NOG,1)
+	field(INPG,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD")
+  	field(FTH, "FLOAT")
+	field(NOH,1)
+	field(INPH,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD")
+  	field(FTI, "FLOAT")
+	field(NOI,1)
+	field(INPI,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:Trig")
+	
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "16000")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV1:VoltR_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "520")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV1:VoltR_X PP")
+
+  	field(FTVC, "FLOAT")
+	field(NOVC, "520")
+	field(OUTC, "LNS-ISRC-010:PBI-EM-HV1:VoltR_XMS PP")
+
+  	field(FTVD, "FLOAT")
+	field(NOVD, "1")
+	field(OUTD, "LNS-ISRC-010:PBI-EM-HV1:VoltR:AVG PP")
+
+  	field(FTVE, "FLOAT")
+	field(NOVE, "1")
+	field(OUTE, "LNS-ISRC-010:PBI-EM-HV1:VoltR:MIN PP")
+
+  	field(FTVF, "FLOAT")
+	field(NOVF, "1")
+	field(OUTF, "LNS-ISRC-010:PBI-EM-HV1:VoltR:MAX PP")
+
+  	field(FTVG, "FLOAT")
+	field(NOVG, "1")
+	field(OUTG, "LNS-ISRC-010:PBI-EM-HV1:VoltR:WIDTH PP")
+
+  	field(FTVH, "FLOAT")
+	field(NOVH, "1")
+	field(OUTH, "LNS-ISRC-010:PBI-EM-HV1:VoltR:EFF_WIDTH PP")
+
+  	field(FTVI, "FLOAT")
+	field(NOVI, "1")
+	field(OUTI, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Integral PP")
+
+  	field(FTVJ, "FLOAT")
+	field(NOVJ, "1")
+	field(OUTJ, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Trig PP")
+
+
+    field(SNAM, "signalFunction")
+
+}
+
+
+# Left cursor in ms
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_ms") {
+	field(DOL,"")
+	field(OMSL,"closed_loop")
+	field(FLNK,"LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_calc")
+}
+
+#Calc sample -> ms
+record(calcout, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_calc") {
+	field(PINI,"YES")
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_ms")
+ 	field(CALC, "B*A/1000")
+	field(OUT,"LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR PP")
+}
+
+# Left cursor
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR") {
+	field(PINI,"YES")
+	field(VAL,"-1000000")
+        field(LOPR,"0")
+        field(HOPR,"16000")
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV1:VoltR:CURSOR_FANOUT") 
+}
+
+#waveform used to display the left cursor on a graph : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the left cursor on a graph : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_ms")
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD")
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_X PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_Y PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+record(fanout, "LNS-ISRC-010:PBI-EM-HV1:VoltR:CURSOR_FANOUT")
+{
+    field(LNK1, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_FUNCTION PP") 
+    field(LNK2, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_FUNCTION PP") 
+    field(LNK3, "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD_FUNCTION PP") 
+    field(LNK4, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD_FUNCTION PP") 
+}
+
+
+# Right cursor in ms
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_ms") {
+	field(VAL,"0")
+	field(DOL,"")
+	field(OMSL,"closed_loop")
+	field(FLNK,"LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_calc")
+}
+record(calcout, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_calc") {
+	field(PINI,"YES")
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_ms")
+ 	field(CALC, "B*A/1000")
+	field(OUT,"LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR PP")
+}
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR") {
+	field(PINI,"YES")
+	field(VAL,"1000000")
+        field(LOPR,"0")
+        field(HOPR,"16000")
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV1:VoltR:CURSOR_FANOUT") 
+}
+
+#waveform used to display the right cursor on a graph : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the right cursor on a graph : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_ms")
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD")
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_X PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_Y PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+
+
+# Compute the delta between the two cursors in ms
+record(calc,"LNS-ISRC-010:PBI-EM-HV1:VoltR:DELTA"){
+
+	 field(SCAN, ".5 second")
+ 	 field(INPA, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR PP")
+ 	 field(INPB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR PP")
+ 	 field(INPC, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB PP")
+ 	 field(CALC, "(A-B)*1000/(C)")
+  	 field(EGU,  "ms")
+}
+
+
+#waveform used to display the h threshold : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the h threshold : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD")
+
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_ms")
+
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_ms")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:HTRESHOLD_X PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+#waveform used to display the h threshold : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the h threshold : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD")
+
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_ms")
+
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_ms")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LTRESHOLD_X PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+
+
+
+
+record(fanout, "LNS-ISRC-010:PBI-EM-HV2:VoltR:OUT") {
+	field(SCAN,"Event")
+	field(EVNT,"12")
+        field(LNK1,"LNS-ISRC-010:PBI-EM-HV2:VoltR:SIGNAL-FUNCTION")
+}
+
+#high treshold
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD") {
+    	field(DESC, "Voltage HV2 FC ")
+    	field(EGU,  "kW")
+	field(PREC, 4)
+	field(VAL,"1000000")
+        field(FLNK, "LNS-ISRC-010:PBI-EM-HV2:VoltR:CURSOR_FANOUT") 
+}
+#low treshold
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD") {
+	field(DESC, "Voltage HV2 FC")
+	field(EGU,  "kW")
+	field(PREC, 4)
+	field(VAL,"-1000000")
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV2:VoltR:CURSOR_FANOUT") 
+
+}
+# measure minimum
+record(ai, "LNS-ISRC-010:PBI-EM-HV2:VoltR:MIN") {
+    field(DESC, "Voltage HV2 FC : min")
+    field(EGU,  "kW")
+    field(PREC, 2)
+
+}
+
+# measure maximum
+record(ai, "LNS-ISRC-010:PBI-EM-HV2:VoltR:MAX") {
+	field(DESC, "Voltage HV2 FC : max")
+	field(EGU,  "kW")
+	field(PREC, 2)
+   
+}
+
+
+
+# measure average
+record(ai, "LNS-ISRC-010:PBI-EM-HV2:VoltR:AVG") {
+	field(DESC, "Voltage HV2 FC : average")
+	field(EGU,  "kW")
+	field(PREC, 2)
+
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Trig") {
+  	field(VAL, "0")
+}
+
+
+# measure integral
+record(ai, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Integral") {
+    field(DESC, "Voltage HV2 FC : integral")
+    field(PREC, 2)
+
+}
+
+
+
+# measure width
+record(ai, "LNS-ISRC-010:PBI-EM-HV2:VoltR:WIDTH") {
+    field(DESC, "Voltage HV2 FC : width")
+    field(EGU,  "ms")
+    field(PREC, 4)
+
+}
+
+# measure effective width
+record(ai, "LNS-ISRC-010:PBI-EM-HV2:VoltR:EFF_WIDTH") {
+    field(DESC, "Voltage HV2 FC : width")
+    field(EGU,  "ms")
+    field(PREC, 4)
+
+}
+
+#
+record(bo, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Visible") {
+  field(VAL,  "1")
+}
+
+# Size of the display signals (VoltR_X et VoltR_Y)
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:SIZE") {
+	field(VAL,"520")
+  }
+
+# Signal Y reduce to 520 element 
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR_Y") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+  field(FLNK,"LNS-ISRC-010:PBI-EM-HV2:VoltR_YFREQ")
+}
+
+#X Axis : number of sample
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR_X") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+}
+
+#X Axis : in ms
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR_XMS") {
+  field(FTVL, "FLOAT")
+  field(NELM, "520") 
+}
+
+#Number of pulse since the initialization of the variable
+record(calc, "LNS-ISRC-010:PBI-EM-HV2:VoltR_YFREQ") {
+  field(VAL, "0")
+  field(CALC, "VAL+1") 
+}
+
+
+#Function that compute avg,min,max and produced a reduced signal limited to 520
+record(aSub, "LNS-ISRC-010:PBI-EM-HV2:VoltR:SIGNAL-FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,16000)
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV2:VoltR")
+  	field(FTB, "FLOAT")
+	field(NOB,1)
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:SIZE")
+  	field(FTC, "FLOAT")
+	field(NOC,1)
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV2:VoltR.NORD")
+  	field(FTD, "FLOAT")
+	field(NOD,1)
+	field(INPD,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR")
+  	field(FTE, "FLOAT")
+	field(NOE,1)
+	field(INPE,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR")
+  	field(FTF, "FLOAT")
+	field(NOF,1)
+	field(INPF,  "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB CA")
+  	field(FTG, "FLOAT")
+	field(NOG,1)
+	field(INPG,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD")
+  	field(FTH, "FLOAT")
+	field(NOH,1)
+	field(INPH,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD")
+  	field(FTI, "FLOAT")
+	field(NOI,1)
+	field(INPI,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:Trig")
+	
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "16000")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV2:VoltR_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "520")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV2:VoltR_X PP")
+
+  	field(FTVC, "FLOAT")
+	field(NOVC, "520")
+	field(OUTC, "LNS-ISRC-010:PBI-EM-HV2:VoltR_XMS PP")
+
+  	field(FTVD, "FLOAT")
+	field(NOVD, "1")
+	field(OUTD, "LNS-ISRC-010:PBI-EM-HV2:VoltR:AVG PP")
+
+  	field(FTVE, "FLOAT")
+	field(NOVE, "1")
+	field(OUTE, "LNS-ISRC-010:PBI-EM-HV2:VoltR:MIN PP")
+
+  	field(FTVF, "FLOAT")
+	field(NOVF, "1")
+	field(OUTF, "LNS-ISRC-010:PBI-EM-HV2:VoltR:MAX PP")
+
+  	field(FTVG, "FLOAT")
+	field(NOVG, "1")
+	field(OUTG, "LNS-ISRC-010:PBI-EM-HV2:VoltR:WIDTH PP")
+
+  	field(FTVH, "FLOAT")
+	field(NOVH, "1")
+	field(OUTH, "LNS-ISRC-010:PBI-EM-HV2:VoltR:EFF_WIDTH PP")
+
+  	field(FTVI, "FLOAT")
+	field(NOVI, "1")
+	field(OUTI, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Integral PP")
+
+  	field(FTVJ, "FLOAT")
+	field(NOVJ, "1")
+	field(OUTJ, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Trig PP")
+
+
+    field(SNAM, "signalFunction")
+
+}
+
+
+# Left cursor in ms
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_ms") {
+	field(DOL,"")
+	field(OMSL,"closed_loop")
+	field(FLNK,"LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_calc")
+}
+
+#Calc sample -> ms
+record(calcout, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_calc") {
+	field(PINI,"YES")
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_ms")
+ 	field(CALC, "B*A/1000")
+	field(OUT,"LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR PP")
+}
+
+# Left cursor
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR") {
+	field(PINI,"YES")
+	field(VAL,"-1000000")
+        field(LOPR,"0")
+        field(HOPR,"16000")
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV2:VoltR:CURSOR_FANOUT") 
+}
+
+#waveform used to display the left cursor on a graph : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the left cursor on a graph : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_ms")
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD")
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_X PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_Y PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+record(fanout, "LNS-ISRC-010:PBI-EM-HV2:VoltR:CURSOR_FANOUT")
+{
+    field(LNK1, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_FUNCTION PP") 
+    field(LNK2, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_FUNCTION PP") 
+    field(LNK3, "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD_FUNCTION PP") 
+    field(LNK4, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD_FUNCTION PP") 
+}
+
+
+# Right cursor in ms
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_ms") {
+	field(VAL,"0")
+	field(DOL,"")
+	field(OMSL,"closed_loop")
+	field(FLNK,"LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_calc")
+}
+record(calcout, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_calc") {
+	field(PINI,"YES")
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_ms")
+ 	field(CALC, "B*A/1000")
+	field(OUT,"LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR PP")
+}
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR") {
+	field(PINI,"YES")
+	field(VAL,"1000000")
+        field(LOPR,"0")
+        field(HOPR,"16000")
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV2:VoltR:CURSOR_FANOUT") 
+}
+
+#waveform used to display the right cursor on a graph : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the right cursor on a graph : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_ms")
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD")
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_X PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_Y PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+
+
+# Compute the delta between the two cursors in ms
+record(calc,"LNS-ISRC-010:PBI-EM-HV2:VoltR:DELTA"){
+
+	 field(SCAN, ".5 second")
+ 	 field(INPA, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR PP")
+ 	 field(INPB, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR PP")
+ 	 field(INPC, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB PP")
+ 	 field(CALC, "(A-B)*1000/(C)")
+  	 field(EGU,  "ms")
+}
+
+
+#waveform used to display the h threshold : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the h threshold : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD")
+
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_ms")
+
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_ms")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV2:VoltR:HTRESHOLD_X PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+#waveform used to display the h threshold : X
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD_X") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+#waveform used to display the h threshold : Y
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD_Y") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "2") 
+}
+
+# Function that compute the waveform to displayed the left cursor on a graph.
+record(aSub, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD_FUNCTION") {
+    field(PREC, 2)
+
+  	field(FTA, "FLOAT")
+	field(NOA,"1")
+	field(INPA,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD")
+
+  	field(FTB, "FLOAT")
+	field(NOB,"1")
+	field(INPB,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_ms")
+
+  	field(FTC, "FLOAT")
+	field(NOC,"1")
+	field(INPC,  "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_ms")
+
+  	field(FTVA, "FLOAT")
+	field(NOVA, "2")
+	field(OUTA, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD_Y PP")
+
+  	field(FTVB, "FLOAT")
+	field(NOVB, "2")
+	field(OUTB, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LTRESHOLD_X PP")
+
+
+    field(SNAM, "cursorFunction")
+
+}
+
+
+
+record(waveform, "LNS-ISRC-010:PBI-EMV-FC:CurrR") {
+        field(DTYP, "asynFloat64ArrayIn")
+        field(INP, "@asyn(CARD0-AI, 0)CH3-Data")
+	field(NELM, "16000")
+	field(FTVL, "DOUBLE")
+	field(EGU,  "V")
+	field(SCAN, "I/O Intr") 
+	field(FLNK, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Pulse")
+	field(DESC, "CurrR")
+
+
+}
+
+record(event, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Event") {
+	field(DTYP,"Soft Channel")
+	field(VAL, "10")
+}
+
+record(calc, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Pulse") {
+  	field(VAL, "0")
+  	field(CALC, "VAL+1") 
+	field(FLNK, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Event")
+
+}
+
+record(stringin, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Nickname") {
+	field(VAL, "CurrR")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LinearConversion") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH3-LinearConversionFactor")
+}
+
+
+record(longout, "LNS-ISRC-010:PBI-EMV-FC:CurrR:DecimationOffset") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH3-DecimationOffset")
+}
+
+
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LinearOffset") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH3-LinearConversionOffset")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Attenuation") {
+    field(VAL,1)
+}
+
+record(calcout, "LNS-ISRC-010:PBI-EMV-FC:CurrR:Attenuation_Calc") {
+    field(INPA,"LNS-ISRC-010:PBI-EMV-FC:CurrR:Attenuation")
+    field(INPB,"LNS-ISRC-010:PBI-EMV-FC:CurrR:LinearConversion")
+    field(CALC,"A*B")
+	field(OUT,"LNS-ISRC-010:PBI-EMV-FC:CurrR:LinearConversion PP")
+}
+
+record(waveform, "LNS-ISRC-010:PBI-EM-HV1:VoltR") {
+        field(DTYP, "asynFloat64ArrayIn")
+        field(INP, "@asyn(CARD0-AI, 0)CH0-Data")
+	field(NELM, "16000")
+	field(FTVL, "DOUBLE")
+	field(EGU,  "V")
+	field(SCAN, "I/O Intr") 
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Pulse")
+	field(DESC, "HV1VoltR")
+
+
+}
+
+record(event, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Event") {
+	field(DTYP,"Soft Channel")
+	field(VAL, "11")
+}
+
+record(calc, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Pulse") {
+  	field(VAL, "0")
+  	field(CALC, "VAL+1") 
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Event")
+
+}
+
+record(stringin, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Nickname") {
+	field(VAL, "HV1VoltR")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LinearConversion") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH0-LinearConversionFactor")
+}
+
+
+record(longout, "LNS-ISRC-010:PBI-EM-HV1:VoltR:DecimationOffset") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH0-DecimationOffset")
+}
+
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LinearOffset") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH0-LinearConversionOffset")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Attenuation") {
+    field(VAL,1)
+}
+
+record(calcout, "LNS-ISRC-010:PBI-EM-HV1:VoltR:Attenuation_Calc") {
+    field(INPA,"LNS-ISRC-010:PBI-EM-HV1:VoltR:Attenuation")
+    field(INPB,"LNS-ISRC-010:PBI-EM-HV1:VoltR:LinearConversion")
+    field(CALC,"A*B")
+	field(OUT,"LNS-ISRC-010:PBI-EM-HV1:VoltR:LinearConversion PP")
+}
+
+record(waveform, "LNS-ISRC-010:PBI-EM-HV2:VoltR") {
+        field(DTYP, "asynFloat64ArrayIn")
+        field(INP, "@asyn(CARD0-AI, 0)CH1-Data")
+	field(NELM, "16000")
+	field(FTVL, "DOUBLE")
+	field(EGU,  "V")
+	field(SCAN, "I/O Intr") 
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Pulse")
+	field(DESC, "HV2VoltR")
+
+
+}
+
+record(event, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Event") {
+	field(DTYP,"Soft Channel")
+	field(VAL, "12")
+}
+
+record(calc, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Pulse") {
+  	field(VAL, "0")
+  	field(CALC, "VAL+1") 
+	field(FLNK, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Event")
+
+}
+
+record(stringin, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Nickname") {
+	field(VAL, "HV2VoltR")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LinearConversion") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH1-LinearConversionFactor")
+}
+
+
+record(longout, "LNS-ISRC-010:PBI-EM-HV2:VoltR:DecimationOffset") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH1-DecimationOffset")
+}
+
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LinearOffset") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)CH1-LinearConversionOffset")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Attenuation") {
+    field(VAL,1)
+}
+
+record(calcout, "LNS-ISRC-010:PBI-EM-HV2:VoltR:Attenuation_Calc") {
+    field(INPA,"LNS-ISRC-010:PBI-EM-HV2:VoltR:Attenuation")
+    field(INPB,"LNS-ISRC-010:PBI-EM-HV2:VoltR:LinearConversion")
+    field(CALC,"A*B")
+	field(OUT,"LNS-ISRC-010:PBI-EM-HV2:VoltR:LinearConversion PP")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE") {
+    field(DESC, "Scope sampling clock SOL")
+    field(DTYP, "asynFloat64")
+    field(OUT, "@asyn(CARD0-AI, 0)SampleRate")
+
+    field(PREC, 3)
+    field(EGU,  "Hz")
+
+    field(LOPR, "100000")
+    field(HOPR, "250000000")
+        
+    field(VAL,  "250000")
+    field(FLNK,"LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_calc_ms")
+}
+
+record(ai, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "I/O Intr")
+    field(PINI, "YES")
+    field(INP, "@asyn(CARD0-AI, 0)SampleRate-RB")
+}
+
+# The source of the trigger
+record(mbbo, "LNS-ISRC-010:PBI-EM:CARD0:MBBOSAMPLINGRATE") {
+    field(OUT,"LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE")
+    field(ZRVL, 250000)
+    field(ZRST, "250KS/s")
+    field(ONVL, 1000000)
+    field(ONST, "1MS/s")
+}
+
+
+record(dfanout,"LNS-ISRC-010:PBI-EM:CARD0_ms")
+{
+	field(OUTA,"LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_calc_ms")
+	field(OUTA,"LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER_calc_ms")
+	
+}
+
+#Number of samples returned by the driver
+record(longout, "LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES") {
+    field(DESC, "Number of samples")
+    field(DTYP, "asynInt32")
+    field(OUT, "@asyn(CARD0-AI, 0)nSamples")
+    field(DRVL, "1")
+    field(DRVH, "16000")
+    field(VAL,  "16000")
+}
+
+record(longin, "LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES-RB") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "I/O Intr")
+    field(PINI, "YES")
+    field(INP, "@asyn(CARD0-AI, 0)nSamples-RB")
+}
+
+#Calc sample -> ms
+record(calcout, "LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_calc_ms") {
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES")
+ 	field(CALC, "B*1000/A")
+	field(OUT,"LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_ms PP")
+
+}
+
+
+#Calc ms -> sample
+record(calcout, "LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_calc") {
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_ms")
+  	field(CALC, "B*A/1000<16000?B*A/1000:16000")
+	field(OUT,"LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES PP")
+
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_ms") {
+    field(DESC, "Number of samples in ms")
+    field(EGU,  "ms")
+    field(FLNK,"LNS-ISRC-010:PBI-EM:CARD0:NSAMPLES_calc")
+}
+
+#Number of sample gapped before the trigger
+record(longout, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER") {
+    field(DESC, "Number of pre trigger samples")
+    field(DTYP, "asynInt32")
+    field(OUT, "@asyn(CARD0-AI, 0)TriggerDelay")
+    field(LOPR, -10000)
+    field(VAL,  0)
+}
+
+#Number of sample gapped before the trigger
+record(longin, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER-RB") {
+    field(DESC, "Number of pre trigger samples")
+    field(DTYP, "asynInt32")
+    field(SCAN, "I/O Intr")
+    field(PINI, "YES")
+    field(INP, "@asyn(CARD0-AI, 0)TriggerDelay-RB")
+}
+#Calc sample -> ms
+record(calcout, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER_calc_ms") {
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER")
+ 	field(CALC, "B*1000/A")
+	field(OUT,"LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER_ms PP")
+}
+
+#Calc sample -> ms
+record(calcout, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER_calc") {
+ 	field(INPA, "LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE")
+ 	field(INPB, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER_ms")
+ 	field(CALC, "B*A/1000")
+	field(OUT,"LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER PP")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER_ms") {
+    field(DESC, "Number of pre trigger samples in ms")
+    field(FLNK,"LNS-ISRC-010:PBI-EM:CARD0:TRIGGER:PRETRIGGER_calc")
+    field(EGU,  "ms")
+    field(PREC,"2")
+}
+
+# The source of the trigger
+record(mbbo, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGERSOURCE") {
+    field(DESC, "Trigger source")
+    field(DTYP, "asynInt32")
+    field(OUT, "@asyn(CARD0-AI, 0)TriggerSource")
+
+    field(NOBT, 4)
+    field(ZRVL, 0) field(ZRST,"CH-0")
+    field(ONVL, 1) field(ONST,"CH-1")
+    field(TWVL, 2) field(TWST,"CH-2")
+    field(THVL, 3) field(THST,"CH-3")
+    field(FRVL, 4) field(FRST,"CH-4")
+    field(FVVL, 5) field(FVST,"CH-5")
+    field(SXVL, 6) field(SXST,"CH-6")
+    field(SVVL, 7) field(SVST,"CH-7")
+    field(EIVL, 8) field(EIST,"EXT-GPIO")
+    field(NIVL, 9) field(NIST,"EXT-VMEIO")
+    field(NIVL, 10) field(NIST,"Soft")
+
+    field(VAL, "0")
+
+}
+
+# The source of the trigger
+record(mbbi, "LNS-ISRC-010:PBI-EM:CARD0:TRIGGERSOURCE-RB") {
+    field(DESC, "Trigger source")
+    field(DTYP, "asynInt32")
+    field(INP, "@asyn(CARD0-AI, 0)TriggerSource-RB")
+
+    field(NOBT, 4)
+    field(ZRVL, 0) field(ZRST,"CH-0")
+    field(ONVL, 1) field(ONST,"CH-1")
+    field(TWVL, 2) field(TWST,"CH-2")
+    field(THVL, 3) field(THST,"CH-3")
+    field(FRVL, 4) field(FRST,"CH-4")
+    field(FVVL, 5) field(FVST,"CH-5")
+    field(SXVL, 6) field(SXST,"CH-6")
+    field(SVVL, 7) field(SVST,"CH-7")
+    field(EIVL, 8) field(EIST,"EXT-GPIO")
+    field(NIVL, 9) field(NIST,"EXT-VMEIO")
+    field(NIVL, 10) field(NIST,"Soft")
+
+    field(VAL, "0")
+
+}
+
+#To run the card
+record(mbbo, "LNS-ISRC-010:PBI-EM:CARD0-STAT") {
+    field(DESC, "Set local state")
+    field(DTYP, "asynInt32")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)StateMachine-setState")
+    field(ZRVL, 0)
+    field(ZRST, "UNKNOWN")
+    field(ONVL, 1)
+    field(ONST, "OFF")
+    field(TWVL, 2)
+    field(TWST, "SWITCHING_OFF")
+    field(THVL, 3)
+    field(THST, "INITIALIZING")
+    field(FRVL, 4)
+    field(FRST, "ON")
+    field(FVVL, 5)
+    field(FVST, "STOPPING")
+    field(SXVL, 6)
+    field(SXST, "STARTING")
+    field(SVVL, 7)
+    field(SVST, "RUNNING")
+    field(EIVL, 8)
+    field(EIST, "FAULT")
+}
+record(mbbi, "LNS-ISRC-010:PBI-EM:CARD0-STAT-RB") {
+    field(DESC, "Get local state")
+    field(DTYP, "asynInt32")
+    field(SCAN, "I/O Intr")
+    field(PINI, "YES")
+    field(INP, "@asyn(CARD0-AI, 0)StateMachine-getState")
+    field(ZRVL, 0)
+    field(ZRST, "UNKNOWN")
+    field(ONVL, 1)
+    field(ONST, "OFF")
+    field(TWVL, 2)
+    field(TWST, "SWITCHING_OFF")
+    field(THVL, 3)
+    field(THST, "INITIALIZING")
+    field(FRVL, 4)
+    field(FRST, "ON")
+    field(FVVL, 5)
+    field(FVST, "STOPPING")
+    field(SXVL, 6)
+    field(SXST, "STARTING")
+    field(SVVL, 7)
+    field(SVST, "RUNNING")
+    field(EIVL, 8)
+    field(EIST, "FAULT")
+    field(EISV, "MAJOR")
+}
+#Trigger repeat
+record(longout, "LNS-ISRC-010:PBI-EM:CARD0:TriggerRepeat") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)TriggerRepeat")
+}
+
+record(longin, "LNS-ISRC-010:PBI-EM:CARD0:TriggerRepeat-RB") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "I/O Intr")
+    field(PINI, "YES")
+    field(INP, "@asyn(CARD0-AI, 0)TriggerRepeat-RB")
+}
+
+record(mbbo, "LNS-ISRC-010:PBI-EM:CARD0:TriggerEdge") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "Passive")
+    field(OUT,  "@asyn(CARD0-AI, 0)TriggerEdge")
+    field(ZRVL, 0)
+    field(ZRST, "Rising Edge")
+    field(ONVL, 1)
+    field(ONST, "Falling Edge")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:CARD0:TriggerEdge-RB") {
+    field(DESC, "")
+    field(DTYP, "asynInt32")
+    field(SCAN, "I/O Intr")
+    field(PINI, "YES")
+    field(INP,  "@asyn(CARD0-AI, 0)TriggerEdge-RB")
+    field(ZRVL, 0)
+    field(ZRST, "Rising Edge")
+    field(ONVL, 1)
+    field(ONST, "Falling Edge")
+}
+
+
+record(ao, "LNS-ISRC-010:PBI-EM:CARD0:TriggerThreshold") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "Passive")
+    field(OUT, "@asyn(CARD0-AI, 0)TriggerThreshold")
+}
+
+record(ai, "LNS-ISRC-010:PBI-EM:CARD0:TriggerThreshold-RB") {
+    field(DESC, "")
+    field(DTYP, "asynFloat64")
+    field(SCAN, "I/O Intr")
+    field(PINI, "YES")
+    field(INP, "@asyn(CARD0-AI, 0)TriggerThreshold-RB")
+}
+
+############################################
+############### CURSOR RIGHT ############### 
+############################################
+record(ao, "LNS-ISRC-010:PBI-EMV:RCURSOR_ms")
+{
+    field(DESC,"Cursor right")
+    field(EGU, "ms")
+    field(DRVH, "20")
+    field(DRVL, "0")
+    field(PREC, "2")
+    field(VAL, "1")
+    field(PINI,"YES")
+    field(FLNK,"LNS-ISRC-010:PBI-EMV:RCURSOR_FAN")
+}
+
+record(dfanout, "LNS-ISRC-010:PBI-EMV:RCURSOR_FAN")
+{
+    field(DESC,"Cursor right dfanout")
+    field(DOL, "LNS-ISRC-010:PBI-EMV:RCURSOR_ms")
+    field(OUTA, "LNS-ISRC-010:PBI-EMV-FC:CurrR:RCURSOR_ms PP")
+    field(OUTB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:RCURSOR_ms PP")
+    field(OUTC, "LNS-ISRC-010:PBI-EM-HV2:VoltR:RCURSOR_ms PP")
+    field(OMSL,"closed_loop")
+}
+
+############################################
+############### CURSOR LEFT ############### 
+############################################
+record(ao, "LNS-ISRC-010:PBI-EMV:LCURSOR_ms")
+{
+    field(DESC,"Cursor left")
+    field(EGU, "ms")
+    field(DRVH, "20")
+    field(DRVL, "0")
+    field(PREC, "2")
+    field(PREC, "2")
+    field(FLNK,"LNS-ISRC-010:PBI-EMV:LCURSOR_FAN")
+}
+
+record(dfanout, "LNS-ISRC-010:PBI-EMV:LCURSOR_FAN")
+{
+    field(DESC,"Cursor left dfanout")
+    field(DOL, "LNS-ISRC-010:PBI-EMV:LCURSOR_ms")
+    field(OUTA, "LNS-ISRC-010:PBI-EMV-FC:CurrR:LCURSOR_ms PP")
+    field(OUTB, "LNS-ISRC-010:PBI-EM-HV1:VoltR:LCURSOR_ms PP")
+    field(OUTC, "LNS-ISRC-010:PBI-EM-HV2:VoltR:LCURSOR_ms PP")
+    field(OMSL,"closed_loop")
+}
+#############################################
+############## ANGLE MAX ####################
+#############################################
+
+record(ao, "$(DEVICE,recursive):PROC-AngleMax-SP") {
+  field(EGU, "mrad")
+  field(PINI,"YES")
+  field(FLNK,"$(DEVICE,recursive):PROC-VoltMaxP1")
+}
+
+record(calcout, "$(DEVICE,recursive):PROC-VoltMaxP1") {
+  field(VAL, "0")
+  field(INPA,"$(DEVICE,recursive):PROC-AngleMax-SP")
+  field(INPB,"$(DEVICE,recursive):CALC-FactMRADtoV")
+  ### /2000 => conversion in 0/10V  ###
+  field(CALC, "(A*B)/2000")
+  field(PREC, "5")  
+  field(EGU,"kV")
+  field(OUT,"$(DEVICE,recursive):$(SCAN_EF,recursive).P4SP PP")
+  field(FLNK,"$(DEVICE,recursive):PROC-VoltMaxP2")  
+}
+
+record(calcout,"$(DEVICE,recursive):PROC-VoltMaxP2") {
+  field(INPA,"$(DEVICE,recursive):PROC-VoltMaxP1")
+  ### DELTA MAX calcul
+  field(CALC, "A>0?A*(-1):A")
+  field(PREC, "5")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE,recursive):$(SCAN_EF,recursive).P1SP PP")
+}
+
+#############################################
+############ ANGLE MIM ######################
+#############################################
+
+record(ao, "$(DEVICE,recursive):PROC-AngleMin-SP") {
+  field(EGU, "mrad")
+  field(PINI,"YES")
+  field(FLNK,"$(DEVICE,recursive):PROC-VoltMinP1")
+}
+
+record(calcout, "$(DEVICE,recursive):PROC-VoltMinP1") {
+  field(VAL, "0")
+  field(INPA,"$(DEVICE,recursive):PROC-AngleMin-SP")
+  field(INPB,"$(DEVICE,recursive):CALC-FactMRADtoV")
+  ### /2000 => conversion in 0/10V
+  field(CALC, "(A*B)/2000")
+  field(PREC, "5")  
+  field(EGU,"kV")
+  field(OUT,"$(DEVICE,recursive):$(SCAN_EF,recursive).P4EP PP")
+  field(FLNK,"$(DEVICE,recursive):PROC-VoltMinP2")  
+}
+
+record(calcout,"$(DEVICE,recursive):PROC-VoltMinP2") {
+  field(INPA,"$(DEVICE,recursive):PROC-VoltMinP1")
+  ### DELTA MAX calcul
+  field(CALC, "A*(-1)")
+  field(PREC, "5")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE,recursive):$(SCAN_EF,recursive).P1EP PP")
+}
+
+#############################################
+############ ANGLE ##########################
+#############################################
+
+record(calcout, "$(DEVICE,recursive):PROC-DeltaMaxVolt") {
+  field(INPA,"$(DEVICE,recursive):PROC-VoltMax PP")
+  field(INPB,"$(DEVICE,recursive):PROC-VoltMin PP")
+  ### DELTA MAX calcul
+  field(CALC, "(A-B)/2")
+  field(PREC, "4")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE,recursive):PROC-VoltMax-SP PP")
+  field(FLNK,"$(DEVICE,recursive):PROC-DeltaMinVolt")  
+}
+
+record(calcout, "$(DEVICE,recursive):PROC-DeltaMinVolt") {
+  field(INPA,"$(DEVICE,recursive):PROC-VoltMax-SP")
+  ### DELTA MIN calcul
+  field(CALC, "A*(-1)")
+  field(PREC, "4")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE,recursive):PROC-VoltMin-SP PP")
+}
+
+record(dfanout,"$(DEVICE,recursive):PROC-VoltMin-SP"){
+  field(OUTA,"$(DEVICE,recursive):$(SCAN_EF,recursive).P1SP PP")
+  field(OUTB,"$(DEVICE,recursive):$(SCAN_EF,recursive).P4EP PP")
+}
+
+#############################################
+############ ANGLE STP ######################
+#############################################
+
+record(calcout, "$(DEVICE,recursive):PROC-StepAngle") {
+  field(INPA,"$(DEVICE,recursive):PROC-AngleMax-SP CP")
+  field(INPB,"$(DEVICE,recursive):PROC-AngleMin-SP CP")
+  field(INPC,"$(DEVICE,recursive):$(SCAN_EF,recursive).NPTS CP")
+  field(CALC,"(A-B)/C")
+  field(EGU, "mrad")
+  field(PREC, "3")
+}
+
+#############################################
+############ LINK BEFORE/AFTER SCAN PS ######
+#############################################
+record(seq,"$(DEVICE,recursive):PROC-PS-BF"){
+  field(LNK1,"LNS-ISRC-010:PBI-EM:VER-BRAKE_SET PP")
+  field(DO1,"0")
+  field(LNK2,"$(DEVICE,recursive):BUFF-DET1-RES PP")
+  field(DO2,"1")
+  field(LNK3,"$(DEVICE,recursive):BUFF-DET23-RES PP")
+  field(DO3,"1")
+}
+
+record(seq,"$(DEVICE,recursive):PROC-PS-AF"){
+  field(LNK1,"LNS-ISRC-010:PBI-EM:VER-BRAKE_SET PP")
+  field(DO1,"1")
+  field(LNK2,"$(DEVICE,recursive):BUFF-DET1-FUNC.PROC PP")
+  field(DO2,"1")
+  field(LNK3,"$(DEVICE,recursive):BUFF-DET23-FUNC.PROC PP")
+  field(DO3,"1")
+  field(LNK4,"$(DEVICE,recursive):$(SCAN_EF,recursive).AWAIT PP")
+  field(DO4,"0")
+  field(DLY4,"0.1")
+}
+
+record(seq,"$(DEVICE,recursive):PROC-SLIT-BF"){
+  field(LNK1,"LNS-ISRC-010:PBI-EM:VER-BRAKE_SET PP")
+  field(DO1,"1")
+  field(LNK2,"$(DEVICE,recursive):BUFF-POS-RES PP")
+  field(DO2,"1")
+  field(LNK3,"$(DEVICE,recursive):BUFF-DET1-RES PP")
+  field(DO3,"1")
+  field(LNK4,"$(DEVICE,recursive):BUFF-DET23-RES PP")
+  field(DO4,"1")
+  field(LNK5,"$(DEVICE,recursive):BUFF-DET1-DEL PP")
+  field(DO5,"1")
+  field(LNK6,"$(DEVICE,recursive):BUFF-DET23-DEL PP")
+  field(DO6,"1")
+  field(LNK7,"$(DEVICE,recursive):PROC-INIT-CALC.PROC PP")
+  field(DO7,"1")
+}
+
+record(seq,"$(DEVICE,recursive):PROC-SLIT-AF"){
+  field(LNK1,"$(DEVICE,recursive):PROC-AUTO-HOME PP")
+  field(DO1,"1")
+  field(LNK2,"$(DEVICE,recursive):CALC-PROJXY.PROC PP")
+  field(DO2,"1")
+  field(LNK3,"LNS-ISRC-010:PBI-EM:HVhor-SP PP")
+  field(DO3,"0")
+  field(LNK4,"LNS-ISRC-010:PBI-EM:HVver-SP PP")
+  field(DO4,"0")
+}
+
+record(seq,"$(DEVICE,recursive):PROC-SLIT-AB"){
+  field(LNK1,"$(DEVICE,recursive):PROC-AUTO-HOME PP")
+  field(DO1,"1")
+  field(LNK2,"LNS-ISRC-010:PBI-EM:HVhor-SP PP")
+  field(DO2,"0")
+  field(LNK3,"LNS-ISRC-010:PBI-EM:HVver-SP PP")
+  field(DO3,"0")
+  field(LNK4,"$(DEVICE,recursive):PROC-INIT-CALC.PROC PP")
+  field(DO4,"1")
+}
+
+#############################################
+################## INIT #####################
+#############################################
+record(seq,"$(DEVICE,recursive):PROC-INIT-CALC"){
+  field(LNK1,"$(DEVICE,recursive):CALC-RMS-SIZE PP")
+  field(DO1,"0")
+  field(LNK2,"$(DEVICE,recursive):CALC-RMS-ANGLE PP")
+  field(DO2,"0")
+  field(LNK3,"$(DEVICE,recursive):CALC-RMS-CORREL PP")
+  field(DO3,"0")
+  field(LNK4,"$(DEVICE,recursive):CALC-SIGMA PP")
+  field(DO4,"0")
+  field(LNK5,"$(DEVICE,recursive):CALC-PROJ-Y PP")
+  field(DO5,"0")
+  field(LNK6,"$(DEVICE,recursive):CALC-PROJ-X PP")
+  field(DO6,"0")
+}
+
+#############################################
+############ RETOUR HOME AUTO ###############
+#############################################
+record(bo,"$(DEVICE,recursive):PROC-AUTO-HOME") {
+}
+
+#############################################
+############ SIMULATION #####################
+#############################################
+record(bo,"$(DEVICE,recursive):PROC-SIMU") {
+field(ZNAM,"HARD")
+field(ONAM,"SIMU")
+}
+
+#############################################
+############ REPORT FILE #####################
+#############################################
+
+## Function that create a report of the EMIT
+#record(aSub, "$(DEVICE,recursive):PROC-REPORT") {
+######### INPUTS #########
+## Energie
+#  	field(FTA, "FLOAT")
+#	field(NOA,1)
+#	field(INPA,"$(DEVICE,recursive):CALC-Energy-SP")
+
+## TIMESTAMP START
+#  	field(FTB, "FLOAT")
+#	field(NOB,1)
+#	field(INPB,  "$(DEVICE,recursive):BUFF-CURRENT")
+
+######### FUNCTION #######
+#	field(SNAM, "CREATE_REPORT")
+#}
+
+
+
+############################################
+############### Energy eV (U) ############## 
+############################################
+record(ao, "$(DEVICE,recursive):CALC-Energy-SP")
+{
+    field(DESC,"Energy eV (U)")
+    field(EGU, "eV")
+    field(DRVH, "100000")
+    field(DRVL, "0")
+    field(VAL,"75000")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE,recursive):CALC-FuncCalcConv")
+}
+############################################
+## Distance Between Plates (d) #############
+############################################
+record(ao, "$(DEVICE,recursive):CALC-DistP-SP")
+{
+    field(DESC,"Distance Between Plates (d)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"7")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE,recursive):CALC-FuncCalcConv")
+}
+############################################
+## Lenght plates(L) ########################
+############################################
+record(ao, "$(DEVICE,recursive):CALC-LenghP-SP")
+{
+    field(DESC,"Lenght plates(L)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"70")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE,recursive):CALC-FuncCalcConv")
+}
+
+############################################
+## Face Lenght plates(L1) ##################
+############################################
+record(ao, "$(DEVICE,recursive):CALC-FacLenghP-SP")
+{
+    field(DESC,"Face Lenght plates(L1)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"10")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE,recursive):CALC-FuncCalcConv")
+}
+
+############################################
+## Rear Lenght plates(L3) ##################
+############################################
+record(ao, "$(DEVICE,recursive):CALC-RearLenghP-SP")
+{
+    field(DESC,"Rear Lenght plates(L3)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"11")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE,recursive):CALC-FuncCalcConv")
+}
+
+########################################################################################
+## ## Function that compute the coefficient between MRAD and VOLTAGE) ##################
+########################################################################################
+record(aSub, "$(DEVICE,recursive):CALC-FuncCalcConv") {
+######### INPUTS #########
+## Energy eV (U)
+  	field(FTA, "FLOAT")
+	field(NOA,1)
+	field(INPA,  "$(DEVICE,recursive):CALC-Energy-SP")
+
+## Distance Between Plates (d)
+  	field(FTB, "FLOAT")
+	field(NOB,1)
+	field(INPB,  "$(DEVICE,recursive):CALC-DistP-SP")
+
+## Lenght plates(L)
+  	field(FTC, "FLOAT")
+	field(NOC,1)
+	field(INPC,  "$(DEVICE,recursive):CALC-LenghP-SP")
+
+##Face Lenght plates(L1)
+  	field(FTD, "FLOAT")
+	field(NOD,1)
+	field(INPD,  "$(DEVICE,recursive):CALC-FacLenghP-SP")
+
+## Rear Lenght plates(L3)
+  	field(FTE, "FLOAT")
+	field(NOE,1)
+	field(INPE,  "$(DEVICE,recursive):CALC-RearLenghP-SP")
+
+######### OUTPUTS #########
+  	field(FTVA, "FLOAT")
+	field(NOVA, "1")
+	field(OUTA, "$(DEVICE,recursive):CALC-FactVtoMRAD PP")   
+
+	field(FTVB, "FLOAT")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE,recursive):CALC-FactMRADtoV PP")  
+
+######### FUNCTION #######
+	field(SNAM, "FACTOR_CONVERSION")
+}
+
+############################################
+## Conversion factor for MRAD to V #########
+############################################
+record(ao, "$(DEVICE,recursive):CALC-FactMRADtoV")
+{
+    field(DESC,"Conv fact for MRAD to V)")
+    field(EGU, "V/mrad")
+    field(PREC, "4")
+}
+
+############################################
+## Conversion factor for V to MRAD##########
+############################################
+record(ao, "$(DEVICE,recursive):CALC-FactVtoMRAD")
+{
+    field(DESC,"Conv fact for V to MRAD)")
+    field(EGU, "mrad/V")
+    field(PREC, "4")
+}
+
+###########################################################################################
+########################## CREATE THE ANGLE WAVEFORM ######################################
+###########################################################################################
+
+## Function that compute the coefficient between MRAD and VOLTAGE
+record(aSub, "$(DEVICE,recursive):CALC-BLDWFAngle") {
+######### INPUTS #########
+## FACTOR CONVERSION VtoMRAD
+  	field(FTA, "FLOAT")
+	field(NOA,1)
+	field(INPA,  "$(DEVICE,recursive):CALC-FactVtoMRAD")
+
+## Plate volatge 1 Waveform (PS1)
+  	field(FTB, "FLOAT")
+	field(NOB,$(BUFFERSIZE,undefined))
+	field(INPB,  "$(DAQNDSPREFIX,undefined):PBI-EM-HV1:VoltR_Y")
+
+## Plate volatge 2 Waveform (PS2)
+  	field(FTC, "FLOAT")
+	field(NOC,$(BUFFERSIZE,undefined))
+	field(INPC,  "$(DAQNDSPREFIX,undefined):PBI-EM-HV2:VoltR_Y")
+
+## Plate volatge 1 average (PS1)
+  	field(FTD, "FLOAT")
+	field(NOD,1)
+	field(INPD,  "$(DEVICE,recursive):DET2-COMP")
+
+## Plate volatge 2 average (PS2)
+  	field(FTE, "FLOAT")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE,recursive):DET3-COMP")
+
+## Counter detector (cpt det)
+  	field(FTE, "LONG")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE,recursive):PS-NORD_POS CP")
+
+######### OUTPUTS #########
+## ANGLE Waveform converted in MRAD (to save)
+  	field(FTVA, "FLOAT")
+	field(NOVA, "$(BUFFERSIZE,undefined)")
+	field(OUTA, "$(DEVICE,recursive):CALC-ANGLEwf PP")   
+
+## ANGLE AVG value converted in VOLT 
+	field(FTVB, "FLOAT")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE,recursive):CALC-ANGLE PP")  
+
+######### FUNCTION #######
+	field(SNAM, "ANGLE_CALCUL")
+}
+
+################ RESULTAT ANGLE ############## 
+## AVERAGE ANGLE
+record(ao, "$(DEVICE,recursive):CALC-ANGLE") {
+}
+
+## WAVEFORM ANGLE
+record(waveform, "$(DEVICE,recursive):CALC-ANGLEwf") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(BUFFERSIZE,undefined)") 
+}
+
+###########################################################################################
+########################## CALCUL PROJECTION  X et Y ######################################
+###########################################################################################
+
+## Function that calculate the projection X et Y
+record(aSub, "$(DEVICE,recursive):CALC-PROJXY") {
+######### INPUTS #########
+## Angle Waveform
+  	field(FTA, "FLOAT")
+	field(NOA,$(BUFFERSIZE,undefined))
+	field(INPA, "$(DEVICE,recursive):BUFF-ANGLE")
+
+## Current Waveform
+  	field(FTB, "FLOAT")
+	field(NOB,$(BUFFERSIZE,undefined))
+	field(INPB,  "$(DEVICE,recursive):BUFF-CURRENT")
+
+## Position Waveform
+  	field(FTC, "FLOAT")
+	field(NOC,$(BUFFERSIZE,undefined))
+	field(INPC,  "$(DEVICE,recursive):BUFF-MTR-POS")
+
+##  Nb angle total
+  	field(FTD, "LONG")
+	field(NOD, "1")
+	field(INPD, "$(DEVICE,recursive):PS.NPTS")
+
+##  Nb position total
+  	field(FTE, "LONG")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE,recursive):$(SCAN_SLIT,undefined).NPTS")
+
+######### OUTPUTS #########
+
+## PROJECTION X  output
+	field(FTVA, "FLOAT")
+	field(NOVA, "1")
+	field(OUTA, "$(DEVICE,recursive):CALC-PROJ-X PP")
+
+## PROJECTION Y output
+	field(FTVB, "FLOAT")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE,recursive):CALC-PROJ-Y PP")
+
+## RMS SIZE output
+	field(FTVC, "FLOAT")
+	field(NOVC, "1")
+	field(OUTC, "$(DEVICE,recursive):CALC-RMS-SIZE PP")
+
+## RMS ANGLE output
+	field(FTVD, "FLOAT")
+	field(NOVD, "1")
+	field(OUTD, "$(DEVICE,recursive):CALC-RMS-ANGLE PP")
+
+## RMS CORREL output
+	field(FTVE, "FLOAT")
+	field(NOVE, "1")
+	field(OUTE, "$(DEVICE,recursive):CALC-RMS-CORREL PP")
+
+## SIGMA output
+	field(FTVF, "FLOAT")
+	field(NOVF, "1")
+	field(OUTF, "$(DEVICE,recursive):CALC-SIGMA PP")
+
+######### FUNCTION #######
+	field(SNAM, "CREATE_PROJXY")
+}
+
+################ RESULTATS ################## 
+####### PROJECTION X ##########
+record(ao, "$(DEVICE,recursive):CALC-PROJ-X") {
+	field(PREC, "4")
+}
+
+## WAVEFORM PROJECTION X
+record(waveform, "$(DEVICE,recursive):CALC-PROJ-Xwf") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(BUFFERSIZE,undefined)")
+}
+
+## WAVEFORM PROJECTION X ABCISSE
+record(waveform, "$(DEVICE,recursive):CALC-PROJ-Xabsc") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(BUFFERSIZE,undefined)") 
+}
+
+####### PROJECTION Y ##########
+record(ao, "$(DEVICE,recursive):CALC-PROJ-Y") {
+	field(PREC, "4")
+}
+
+## WAVEFORM PROJECTION Y
+record(waveform, "$(DEVICE,recursive):CALC-PROJ-Ywf") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(BUFFERSIZE,undefined)") 
+}
+
+## WAVEFORM PROJECTION Y ABCISSE
+record(waveform, "$(DEVICE,recursive):CALC-PROJ-Yabsc") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(BUFFERSIZE,undefined)") 
+}
+
+####### RMS ##########
+record(ao, "$(DEVICE,recursive):CALC-RMS-SIZE") {
+	field(PREC, "4")
+}
+
+record(ao, "$(DEVICE,recursive):CALC-RMS-ANGLE") {
+	field(PREC, "4")
+}
+
+record(ao, "$(DEVICE,recursive):CALC-RMS-CORREL") {
+	field(PREC, "4")
+}
+
+####### SIGMA ##########
+record(ao, "$(DEVICE,recursive):CALC-SIGMA") {
+	field(PREC, "4")
+}
+
+## COMPRESS SCALARE VALUE
+record(compress, "$(DEVICE,recursive):BUFF-DET1") {
+  	field(NSAM, "1000")
+  	field(ALG,"Circular Buffer")
+  	field(INP,"LNS-ISRC-010:PBI-EMV-FC:CurrR:AVG CP")
+  	}
+
+record(bo,"$(DEVICE,recursive):BUFF-DET1-RES"){
+    field(OUT,"$(DEVICE,recursive):BUFF-DET1.RES")
+}
+
+## WAVEFORM FINAL
+record(waveform, "$(DEVICE,recursive):BUFF-CURRENT") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(BUFFERSIZE,undefined)") 
+}
+
+####################################################################
+########################## CREATE THE WAVEFORM ###############
+####################################################################
+
+## Function that compute the coefficient between MRAD and VOLTAGE
+record(aSub, "$(DEVICE,recursive):BUFF-DET1-FUNC") {
+######### INPUTS #########
+## Waveform data
+  	field(FTA, "FLOAT")
+	field(NOA,1000)
+	field(INPA, "$(DEVICE,recursive):BUFF-DET1")
+
+##  Waveform data reentrance
+ 	field(FTB, "FLOAT")
+	field(NOB,$(BUFFERSIZE,undefined))
+	field(INPB,"$(DEVICE,recursive):BUFF-CURRENT")
+
+##  Motor position
+  	field(FTC, "LONG")
+	field(NOC,1)
+	field(INPC,"$(DEVICE,recursive):$(SCAN_SLIT,recursive)-NORD_POS")
+
+##  Nb angle total
+  	field(FTD, "LONG")
+	field(NOD, "1")
+	field(INPD, "$(DEVICE,recursive):$(SCAN_EF,recursive).NPTS")
+
+##  Nb position total
+  	field(FTE, "LONG")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE,recursive):$(SCAN_SLIT,recursive).NPTS")
+
+##  Reset
+  	field(FTF, "LONG")
+	field(NOF, "1")
+	field(INPF, "$(DEVICE,recursive):BUFF-DET1-DEL CP")
+	
+######### OUTPUTS #########
+## Waveform (to save)
+  	field(FTVA, "FLOAT")
+	field(NOVA, "$(BUFFERSIZE,undefined)")
+	field(OUTA, "$(DEVICE,recursive):BUFF-CURRENT PP")
+
+## RESET (to save)
+  	field(FTVB, "LONG")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE,recursive):BUFF-DET1-DEL PP")
+
+######### FUNCTION #######
+	field(SNAM, "CREATE_TAB")
+}
+
+####################################################################
+########################## DELETE THE WAVEFORM ###############
+####################################################################
+
+record(bo, "$(DEVICE,recursive):BUFF-DET1-DEL")
+	{
+	}
+
+## COMPRESS SCALARE VALUE
+record(compress, "$(DEVICE,recursive):BUFF-DET23") {
+  	field(NSAM, "1000")
+  	field(ALG,"Circular Buffer")
+  	field(INP,"LNS-ISRC-010:PBI-EMV:CALC-ANGLE CP")
+  	}
+
+record(bo,"$(DEVICE,recursive):BUFF-DET23-RES"){
+    field(OUT,"$(DEVICE,recursive):BUFF-DET23.RES")
+}
+
+## WAVEFORM FINAL
+record(waveform, "$(DEVICE,recursive):BUFF-ANGLE") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(BUFFERSIZE,undefined)") 
+}
+
+####################################################################
+########################## CREATE THE WAVEFORM ###############
+####################################################################
+
+## Function that compute the coefficient between MRAD and VOLTAGE
+record(aSub, "$(DEVICE,recursive):BUFF-DET23-FUNC") {
+######### INPUTS #########
+## Waveform data
+  	field(FTA, "FLOAT")
+	field(NOA,1000)
+	field(INPA, "$(DEVICE,recursive):BUFF-DET23")
+
+##  Waveform data reentrance
+ 	field(FTB, "FLOAT")
+	field(NOB,$(BUFFERSIZE,undefined))
+	field(INPB,"$(DEVICE,recursive):BUFF-ANGLE")
+
+##  Motor position
+  	field(FTC, "LONG")
+	field(NOC,1)
+	field(INPC,"$(DEVICE,recursive):$(SCAN_SLIT,recursive)-NORD_POS")
+
+##  Nb angle total
+  	field(FTD, "LONG")
+	field(NOD, "1")
+	field(INPD, "$(DEVICE,recursive):$(SCAN_EF,recursive).NPTS")
+
+##  Nb position total
+  	field(FTE, "LONG")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE,recursive):$(SCAN_SLIT,recursive).NPTS")
+
+##  Reset
+  	field(FTF, "LONG")
+	field(NOF, "1")
+	field(INPF, "$(DEVICE,recursive):BUFF-DET23-DEL CP")
+	
+######### OUTPUTS #########
+## Waveform (to save)
+  	field(FTVA, "FLOAT")
+	field(NOVA, "$(BUFFERSIZE,undefined)")
+	field(OUTA, "$(DEVICE,recursive):BUFF-ANGLE PP")
+
+## RESET (to save)
+  	field(FTVB, "LONG")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE,recursive):BUFF-DET23-DEL PP")
+
+######### FUNCTION #######
+	field(SNAM, "CREATE_TAB")
+}
+
+####################################################################
+########################## DELETE THE WAVEFORM ###############
+####################################################################
+
+record(bo, "$(DEVICE,recursive):BUFF-DET23-DEL")
+	{
+	}
+
+## COMPRESS SCALARE VALUE MTR POS
+record(compress, "$(DEVICE,recursive):BUFF-MTR-POS") {
+  	field(NSAM, "1000")
+  	field(ALG,"Circular Buffer")
+  	field(INP,"$(MTRREC,recursive).VAL CP")
+  	}
+
+## Reset COMPRESS
+record(bo,$(DEVICE,recursive):BUFF-POS-RES){
+	field(OUT,"$(DEVICE,recursive):BUFF-MTR-POS.RES")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:HVhor-SP")
+{
+	field(DESC, "Analog Output")
+	field(DTYP, "ecat2")
+	field(OUT,  "s3.sm2.p0.e0")
+	field(LINR, "SLOPE")
+	field(EOFF, "0")
+	field(ESLO, "0.0003051850947599719")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:HVver-SP")
+{
+	field(DESC, "Analog Output")
+	field(DTYP, "ecat2")
+	field(OUT,  "s3.sm2.p2.e0")
+	field(LINR, "SLOPE")
+	field(EOFF, "0")
+	field(ESLO, "0.0003051850947599719")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:BPS1-CurS")
+{
+	field(DESC, "Analog Output")
+	field(DTYP, "ecat2")
+	field(OUT,  "s2.sm2.p0.e0")
+	field(LINR, "SLOPE")
+	field(EOFF, "0")
+	field(ESLO, "0.0003051850947599719")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:BPS1-VolS")
+{
+	field(DESC, "Analog Output")
+	field(DTYP, "ecat2")
+	field(OUT,  "s2.sm2.p1.e0")
+	field(LINR, "SLOPE")
+	field(EOFF, "0")
+	field(ESLO, "0.0003051850947599719")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:BPS2-CurS")
+{
+	field(DESC, "Analog Output")
+	field(DTYP, "ecat2")
+	field(OUT,  "s2.sm2.p2.e0")
+	field(LINR, "SLOPE")
+	field(EOFF, "0")
+	field(ESLO, "0.0003051850947599719")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(ao, "LNS-ISRC-010:PBI-EM:BPS2-VolS")
+{
+	field(DESC, "Analog Output")
+	field(DTYP, "ecat2")
+	field(OUT,  "s2.sm2.p3.e0")
+	field(LINR, "SLOPE")
+	field(EOFF, "0")
+	field(ESLO, "0.0003051850947599719")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-URNG")
+{
+        field(DESC, "Under range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p0.e0")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-ORNG")
+{
+        field(DESC, "Over range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p0.e1")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-LIM1")
+{
+        field(DESC, "Limit 1")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p0.e2")
+	field(NOBT, "2")
+	field(ZRST, "Not active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-LIM2")
+{
+        field(DESC, "Limit 2")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p0.e3")
+	field(NOBT, "2")
+	field(ZRST, "Not Active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-ERR")
+{
+        field(DESC, "Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p0.e4")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-SYNCERR")
+{
+        field(DESC, "DC synchronization Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p0.e7")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-TXPST")
+{
+        field(DESC, "Internal Error")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p0.e8")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-CurR-TXPTOG")
+{
+        field(DESC, "Toggle for each new value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p0.e9")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(ai, "LNS-ISRC-010:PBI-EM:BPS1-CurR")
+{
+        field(DESC, "Analog input value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p0.e10")
+	field(LINR, "SLOPE")
+	field(ESLO, "0.0003051850947599719")
+        field(EOFF, "0")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-URNG")
+{
+        field(DESC, "Under range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p1.e0")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-ORNG")
+{
+        field(DESC, "Over range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p1.e1")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-LIM1")
+{
+        field(DESC, "Limit 1")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p1.e2")
+	field(NOBT, "2")
+	field(ZRST, "Not active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-LIM2")
+{
+        field(DESC, "Limit 2")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p1.e3")
+	field(NOBT, "2")
+	field(ZRST, "Not Active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-ERR")
+{
+        field(DESC, "Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p1.e4")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-SYNCERR")
+{
+        field(DESC, "DC synchronization Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p1.e7")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-TXPST")
+{
+        field(DESC, "Internal Error")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p1.e8")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS1-VolR-TXPTOG")
+{
+        field(DESC, "Toggle for each new value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p1.e9")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(ai, "LNS-ISRC-010:PBI-EM:BPS1-VolR")
+{
+        field(DESC, "Analog input value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p1.e10")
+	field(LINR, "SLOPE")
+	field(ESLO, "0.0003051850947599719")
+        field(EOFF, "0")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-URNG")
+{
+        field(DESC, "Under range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p2.e0")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-ORNG")
+{
+        field(DESC, "Over range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p2.e1")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-LIM1")
+{
+        field(DESC, "Limit 1")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p2.e2")
+	field(NOBT, "2")
+	field(ZRST, "Not active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-LIM2")
+{
+        field(DESC, "Limit 2")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p2.e3")
+	field(NOBT, "2")
+	field(ZRST, "Not Active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-ERR")
+{
+        field(DESC, "Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p2.e4")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-SYNCERR")
+{
+        field(DESC, "DC synchronization Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p2.e7")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-TXPST")
+{
+        field(DESC, "Internal Error")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p2.e8")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-CurR-TXPTOG")
+{
+        field(DESC, "Toggle for each new value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p2.e9")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(ai, "LNS-ISRC-010:PBI-EM:BPS2-CurR")
+{
+        field(DESC, "Analog input value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p2.e10")
+	field(LINR, "SLOPE")
+	field(ESLO, "0.0003051850947599719")
+        field(EOFF, "0")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-URNG")
+{
+        field(DESC, "Under range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p3.e0")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-ORNG")
+{
+        field(DESC, "Over range")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP, "s1.sm3.p3.e1")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-LIM1")
+{
+        field(DESC, "Limit 1")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p3.e2")
+	field(NOBT, "2")
+	field(ZRST, "Not active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(mbbi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-LIM2")
+{
+        field(DESC, "Limit 2")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p3.e3")
+	field(NOBT, "2")
+	field(ZRST, "Not Active")
+	field(ONST, "Smaller")
+	field(TWST, "Larger")
+	field(THST, "Equal")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-ERR")
+{
+        field(DESC, "Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p3.e4")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-SYNCERR")
+{
+        field(DESC, "DC synchronization Error")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1.sm3.p3.e7")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-TXPST")
+{
+        field(DESC, "Internal Error")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p3.e8")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:BPS2-VolR-TXPTOG")
+{
+        field(DESC, "Toggle for each new value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p3.e9")
+	field(ZNAM, "Off")
+	field(ONAM, "On")
+}
+
+record(ai, "LNS-ISRC-010:PBI-EM:BPS2-VolR")
+{
+        field(DESC, "Analog input value")
+	field(DTYP, "ecat2")
+	field(SCAN, "I/O Intr")
+	field(INP,  "s1.sm3.p3.e10")
+	field(LINR, "SLOPE")
+	field(ESLO, "0.0003051850947599719")
+        field(EOFF, "0")
+	field(EGU,  "V")
+	field(PREC, "2")
+}
+
+record(stringin, "LNS-ISRC-010:PBI-EM:ES4134-DTYP")
+{
+	field(DESC, "Module type (Not read from device)")
+	field(PINI, "YES")
+	field(VAL,  "ES4134")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:ES4134-STATUS")
+{
+	field(DESC, "Slave status")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s3 STATUS_SLAVE_OP")
+	field(ZNAM, "Not OK")
+	field(ONAM, "OK")
+}
+record(stringin, "LNS-ISRC-010:PBI-EM:EL4104-DTYP")
+{
+	field(DESC, "Module type (Not read from device)")
+	field(PINI, "YES")
+	field(VAL,  "EL4104")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:EL4104-STATUS")
+{
+	field(DESC, "Slave status")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s2 STATUS_SLAVE_OP")
+	field(ZNAM, "Not OK")
+	field(ONAM, "OK")
+}
+record(stringin, "LNS-ISRC-010:PBI-EM:ES3164-DTYP")
+{
+	field(DESC, "Module type (Not read from device)")
+	field(PINI, "YES")
+	field(VAL,  "ES3164")
+}
+
+record(bi, "LNS-ISRC-010:PBI-EM:ES3164-STATUS")
+{
+	field(DESC, "Slave status")
+	field(SCAN, "I/O Intr")
+	field(DTYP, "ecat2")
+	field(INP,  "s1 STATUS_SLAVE_OP")
+	field(ZNAM, "Not OK")
+	field(ONAM, "OK")
+}
+#DEBUG
+#sends ASCII string to pmac
+record(stringout, "LNS-ISRC-010:PBI-EM:PMAC-ASK") {
+  field(DESC, "sends ASCII string to pmac")
+  field(OUT, "LNS-ISRC-010:PBI-EM:PMAC-ANSWER CP")
+  field(FLNK, "LNS-ISRC-010:PBI-EM:PMAC-ANSWER")
+}
+#receives ASCII string from pmac
+record(stringin, "LNS-ISRC-010:PBI-EM:PMAC-ANSWER") {
+  field(DESC, "receives ASCII string from pmac")
+  field(DTYP, "stream")
+  field(INP, "@pmacVariables.proto sendString(LNS-ISRC-010:PBI-EM:PMAC-ASK) GEOBRICK_ASYN")
+}
+
+#get variables value from Geo Brick
+record(ai, "LNS-ISRC-010:PBI-EM:VER-BRAKE_GET") {
+  field(DESC, "0: brake on, 1: brake off")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M33) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "LNS-ISRC-010:PBI-EM:CURRENT_ERR_GET") {
+  field(DESC, "current to high")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(P93) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "LNS-ISRC-010:PBI-EMV:SWITCH_H_GET") {
+  field(DESC, "Vertical high motor swicth")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M121) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "LNS-ISRC-010:PBI-EMV:SWITCH_L_GET") {
+  field(DESC, "Vertical low motor swicth")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M122) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_BRAKE_GET") {
+  field(DESC, "0: brake on, 1: brake off")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M33) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_SWITCH_H_GET") {
+  field(DESC, "Vertical high motor swicth")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M121) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_SWITCH_L_GET") {
+  field(DESC, "Vertical low motor swicth")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M122) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_M_IN_POSITION_GET") {
+  field(DESC, "Vertical low motor swicth")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M140) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_HOME_DONE_GET") {
+  field(DESC, "Vertical low motor swicth")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(P101) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_M_POSITION_GET") {
+  field(DESC, "Vertical motor position")
+  field(EGU, "cts")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(#1P) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_ACTUAL_VEL_GET") {
+  field(DESC, "Actual average velocity")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M174) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_QUA_CUR_LOOP_GET") {
+  field(DESC, "Quadrature cur-loop inte")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M177) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_AMP_FAULT_GET") {
+  field(DESC, "Amplifier-fault-error bit")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M143) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_INT_FOL_ERR_GET") {
+  field(DESC, "Integrated follow. error")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M146) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_I2T_FAULT_GET") {
+  field(DESC, "I2T fault bit")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M147) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:V_PHASING_ERR_GET") {
+  field(DESC, "Phasing error fault")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(M148) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:GEOBRICK_ERR_GET") {
+  field(DESC, "M143|M146|M147|M148|M243..")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(P92) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#get variables value from Geo Brick
+record(ai, "SOURCE:EMITTANCE-METTER:CURRENT_ERR_GET") {
+  field(DESC, "current to high")
+  field(EGU, "boolean")
+  field(DTYP, "stream")
+  field(PREC, "0")
+  field(INP, "@pmacVariables.proto getVar(P93) GEOBRICK_ASYN")
+  field(SCAN, ".2 second") #I/O Intr
+}
+#set data to send to the Geo brick
+record(bo, "LNS-ISRC-010:PBI-EM:VER-BRAKE_SET") {
+  field(DESC, "brake")
+  field(DTYP, "stream")
+  field(OUT, "@pmacVariables.proto setVar(M33) GEOBRICK_ASYN")
+  field(ZNAM,"OFF")
+  field(ONAM,"ON")
+}
+#set data to send to the Geo brick
+record(bo, "LNS-ISRC-010:PBI-EM:CURRENT_ERR_SET") {
+  field(DESC, "current to high")
+  field(DTYP, "stream")
+  field(OUT, "@pmacVariables.proto setVar(P93) GEOBRICK_ASYN")
+  field(ZNAM,"OFF")
+  field(ONAM,"ON")
+}
diff --git a/builddir/db/EMU.substitutions b/builddir/db/EMU.substitutions
new file mode 100644
index 0000000..4753e33
--- /dev/null
+++ b/builddir/db/EMU.substitutions
@@ -0,0 +1,560 @@
+# File wireScanner.substitutions
+# Author: Alexander Soderqvist <alexander.soderqvist@esss.se>
+# 
+# Prototype allison scanner. Compilations of components from scanning module.
+#
+
+##########################################################################
+################################ OUTER SCAN: MOTOR #######################
+##########################################################################
+
+file "scanBase.db"
+{
+	pattern {
+		DEVICE,
+		SCAN,
+		MAX_POINTS,
+		
+# INTERFACE POSITIONERS: 1 and 2. 3 is also available but not used here	
+  	     	POS1_SP_PV,
+		POS2_SP_PV,
+
+# INTERFACE MAIN POSITIONER, This positioner 4 on sscan to allow the other positioner to be used for configuration
+		POS_SP_PV,
+		POS_SCALAR_RBV_PV,
+
+# INTERFACE: TIMING RECEIVER
+  	     	TR_TL1,
+		TR_TLTSEL,  	     	
+
+# INTERFACE: DETECTOR TRIGGERS, T1PV is take by timing receiver control 
+		T1PV,
+
+# INTERFACE: DETECTORS,
+		D01PV,
+
+# INTERFACE: BEFORE, AFTER and ABORT scan links
+# Before, after and abort scan links. Both for Step by step and on the fly.
+
+# General before and after scan links with data output, for both fly and step by step.
+		BS_LNK,
+		BS_DO,
+		AS_LNK,
+		AS_DO,
+		AB_LNK,
+		AB_DO,
+		
+		BF_STEP_LNK1,
+		BF_STEP_LNK2,
+		BF_STEP_DO1,
+		BF_STEP_DO2,
+		BF_STEP_FLNK,
+		
+		AF_STEP_LNK1,
+		AF_STEP_LNK2,
+		AF_STEP_DO1,
+		AF_STEP_DO2,
+		AF_STEP_FLNK,		
+
+		AB_STEP_LNK1,
+		AB_STEP_LNK2,
+		AB_STEP_DO1,
+		AB_STEP_DO2,
+		AB_STEP_FLNK
+		}
+		{
+		"$(DEVICE)",
+		"$(SCAN_SLIT)",
+		"$(MAX_POINTS_SLIT)",
+
+# INTERFACE POSITIONER: Motor record for a wirescanner
+		"$(MTRREC).ACCL",
+		"$(MTRREC).VELO",
+
+# INTERFACE MAIN POSITIONER:		
+		"$(MTRREC).VAL",
+		"$(MTRREC).RBV",
+
+# INTERFACE: Timing receiver Action in ESS timing
+  	     	"",
+		"$(DEVICE):$(SCAN_EF)-TS_START.TIME",
+
+# INTERFACE: Detector Trigger
+  	     	"$(DEVICE):$(SCAN_EF).EXSC",
+
+# INTERFACE: Detectors. No detectors on Outer scan
+		"",
+
+# INTERFACE: BEFORE, AFTER and ABORT scan links
+
+# General links before scan
+  	     	"$(MTRREC).SPMG",
+		"3",
+
+# General links after scan
+  	     	"$(MTRREC).SPMG",
+		"1",
+
+# General links abort scan
+  	     	"$(MTRREC).STOP PP",
+		"1",
+
+
+# Before scan step by step links
+		"$(DEVICE):PROC-SLIT-BF.PROC PP",
+  	      	"",
+		"1",
+		"",
+		"",
+
+# After scan step by step links
+  	      	"$(DEVICE):PROC-SLIT-AF.PROC PP",
+		"",
+		"1",
+		"",
+		"",
+
+# Abort scan step by step links
+  	      	"$(DEVICE):PROC-SLIT-AB.PROC PP",
+		"",
+		"1",
+		"",
+		"$(DEVICE):$(SCAN_EF)-ABORT"
+		}
+
+}
+
+##########################################################################
+################################ INNER SCAN: DAC   #######################
+##########################################################################
+
+# INNER SCAN: Electrical field
+file "scanBase.db"
+{
+	pattern {
+		DEVICE,
+		SCAN,
+		MAX_POINTS,
+		
+# Power supply PS1
+		POS_SP_PV,
+		POS_SCALAR_RBV_PV,
+
+# Power supply PS2
+  	     	POS1_SP_PV,
+  	     	POS1_RBV_PV,
+		POS1_MODE,
+
+# INTERFACE: TIMING RECEIVER
+  	     	TR_TL1,
+		TR_TLTSEL,  	     	
+
+# INTERFACE: DETECTOR TRIGGERS, T1PV is take by timing receiver control 
+		T1PV,
+
+# INTERFACE: DETECTORS,
+		D01PV,
+		D02PV,
+		D03PV,
+
+# INTERFACE: BEFORE, AFTER and ABORT scan links
+# Before, after and abort scan links. Both for Step by step and on the fly.
+
+# General before and after scan links with data output, for both fly and step by step.
+		BS_LNK,
+		BS_LNK_DO,
+		AS_LNK,
+		AS_LNK_DO,
+		AB_LNK,
+		AB_DO,
+		
+		BF_STEP_LNK1,
+		BF_STEP_LNK2,
+		BF_STEP_LNK1_DO,
+		BF_STEP_LNK2_DO,
+		BF_STEP_FLNK,
+		
+		AF_STEP_LNK1,
+		AF_STEP_LNK2,
+		AF_STEP_LNK1_DO,
+		AF_STEP_LNK2_DO,
+		AF_STEP_FLNK,		
+
+		AB_STEP_LNK1,
+		AB_STEP_LNK2,
+		AB_STEP_LNK1_DO,
+		AB_STEP_LNK2_DO,
+		AB_STEP_FLNK
+		}
+		{
+		"$(DEVICE)",
+		"$(SCAN_EF)",
+		"$(MAX_POINTS_EF)",
+
+# PS1 POSITIONER INTERFACE
+  	    	"$(PSU_SP)",
+		"$(PSU_RBV)",
+
+
+# PS2 POSITIONER INTERFACE
+  	    	"$(PSU2_SP)",
+		"$(PSU2_RBV)",
+		"LINEAR",
+
+# INTERFACE: Timing receiver Action in ESS timing
+  	     	"$(TR_TL) PP",
+		"$(TR_TLTSEL)",
+
+# INTERFACE: Detector Trigger
+  	     	"$(DEVICE):DAQTRG-TRG",
+
+# INTERFACE: Detectors
+		"$(DEVICE):BUFF-DET1",
+		"$(DEVICE):BUFF-DET23",
+		"",
+
+# INTERFACE: BEFORE, AFTER and ABORT scan links
+
+# General links after scan
+  	     	"",
+		"",
+
+# General links before scan
+  	     	"",
+		"",
+
+# General links abort scan
+  	     	"",
+		"",
+
+# Before scan step by step links
+  	      	"$(DEVICE):PROC-PS-BF.PROC PP",
+		"",
+		"1",
+		"",
+		"",
+
+# After scan step by step links
+  	      	"$(DEVICE):PROC-PS-AF.PROC PP",
+		"",
+		"1",
+		"",
+		"$(DEVICE):$(SCAN_SLIT)-SAVE_TS",
+
+# Abort scan step by step links
+  	     	"$(DEVICE):DAQTRG-RST.PROC PP",
+		"",
+		"1",
+		"",
+		""
+				
+		}
+
+}
+
+
+##########################################################################
+################################ OUTER SCAN: MOTOR #######################
+##########################################################################
+#
+# Detector trigger control
+#
+
+file "scanDAQDetTrig.template"
+{
+	pattern {
+		DEVICE,
+		DETTRG,
+
+		SCAN,
+		POS_NUM,
+		RSTEVENT,
+
+		NDET,
+
+		ACQ_STOP_LNK,
+		ACQ_STOP_STR,
+
+		ACQ_START_LNK,
+		ACQ_START_STR,
+		
+		DAQ_DATA_RDY_FLNK,
+
+		DAQ_STATE_PV,
+		DAQ_STATE_OKVALUE
+	}
+	{
+		"$(DEVICE)",
+		"DAQTRG"
+
+		"$(SCAN_EF)",
+		"4",
+		"55",
+
+		"3",
+
+		"$(DAQNDSPREFIX):PBI-EM:CARD0-STAT",
+		"ON",
+
+		"$(DAQNDSPREFIX):PBI-EM:CARD0-STAT",
+		"RUNNING",
+		
+		"$(DEVICE):$(SCAN_EF)-SAVE_TS",
+		
+		"$(DAQNDSPREFIX):PBI-EM:CARD0-STAT-RB",
+		"4"
+	}
+}
+
+
+##########################################################################
+################################ DETECTOR 1: Faraday CUP #################
+##########################################################################
+
+file "scanDAQDet.template"
+{
+
+	pattern {
+		DEVICE,
+		DET,
+
+		DETTRG,
+		RSTEVENT,
+		
+		NELM,
+		TRGRRBVREC,
+		WFSRCREC,
+		WFNORD
+	}
+	{
+		"$(DEVICE)",
+		"DET1",
+
+		"DAQTRG",
+		"55"
+		
+		"$(DAQBUFSIZE)",
+		"$(DAQNDSPREFIX):PBI-EM:CARD0:TriggerRepeat-RB",
+		"$(DAQNDSPREFIX):$(DET1WF)",
+		"$(DAQNDSPREFIX):$(DET1WF).NORD"
+	}
+}
+
+
+##########################################################################
+################################ DETECTOR 2: PS1 #########################
+##########################################################################
+file "scanDAQDet.template"
+{
+
+	pattern {
+		DEVICE,
+		DET,
+
+		DETTRG,
+		RSTEVENT,
+		
+		NELM,
+		TRGRRBVREC,
+		WFSRCREC,
+		WFNORD
+	}
+	{
+		"$(DEVICE)",
+		"DET2",
+
+		"DAQTRG",
+		"55"
+		
+		"$(DAQBUFSIZE)",
+		"$(DAQNDSPREFIX):PBI-EM:CARD0:TriggerRepeat-RB",
+		"$(DAQNDSPREFIX):$(DET2WF)",
+		"$(DAQNDSPREFIX):$(DET2WF).NORD"
+	}
+}
+
+##########################################################################
+################################ DETECTOR 3: PS2 #########################
+##########################################################################
+
+file "scanDAQDet.template"
+{
+
+	pattern {
+		DEVICE,
+		DET,
+
+		DETTRG,
+		RSTEVENT,
+		
+		NELM,
+		TRGRRBVREC,
+		WFSRCREC,
+		WFNORD
+	}
+	{
+		"$(DEVICE)",
+		"DET3",
+
+		"DAQTRG",
+		"55"
+		
+		"$(DAQBUFSIZE)",
+		"$(DAQNDSPREFIX):PBI-EM:CARD0:TriggerRepeat-RB",
+		"$(DAQNDSPREFIX):$(DET3WF)",
+		"$(DAQNDSPREFIX):$(DET3WF).NORD"
+	}
+}
+
+##########################################################################
+################################ DACQ  ###################################
+##########################################################################
+file DataAcquisitionChannel.template
+{
+pattern
+{ 	SECTION, SUBSECTION, DISC, DEVICE, SIGNAL,DESCRIPTION,		    EVENT_IN,NELM,SIZE,SAMPLING_RATE_PV}
+	{"LNS","ISRC-010","PBI-EMV","FC","CurrR","Current FC",10,16000,520,LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB}
+	{"LNS","ISRC-010","PBI-EM","HV1","VoltR","Voltage HV1 FC",11,16000,520,LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB}
+	{"LNS","ISRC-010","PBI-EM","HV2","VoltR","Voltage HV2 FC",12,16000,520,LNS-ISRC-010:PBI-EM:CARD0:SAMPLINGRATE-RB}
+}
+
+file FastAcquisition.template
+{
+pattern
+{ SECTION,SUBSECTION, DISC, DEVICE, SIGNAL,NICKNAME,EVENT_OUT,CARD,CHANNEL,NELM }
+
+	{"LNS","ISRC-010","PBI-EMV","FC","CurrR","CurrR",10,0,3,16000}
+	{"LNS","ISRC-010","PBI-EM","HV1","VoltR","HV1VoltR",11,0,0,16000}
+	{"LNS","ISRC-010","PBI-EM","HV2","VoltR","HV2VoltR",12,0,1,16000}
+}
+
+
+file FastAcquisitionInformation.template
+{
+	pattern
+	{ CARD,FMC,NELM,PREFIX}
+	{0,2,16000,"LNS-ISRC-010:PBI-EM"}
+}
+
+
+file EMU_DACQ_SYNC.template
+{
+	pattern
+	{ PREFIX,DEVICE,SIGNAL1,SIGNAL2,SIGNAL3}
+	{"LNS-ISRC-010","PBI-EM","FC:CurrR","HV1:VoltR","HV2:VoltR"}
+}
+##########################################################################
+################################ PROCESS  ################################
+##########################################################################
+file EMU_PROCESS.template
+{
+pattern	{DEVICE, SCAN_EF}
+	{"$(DEVICE)","$(SCAN_EF)"}
+}
+
+##########################################################################
+################################ CALCUL  ################################
+##########################################################################
+file EMU_CALCUL.template
+{
+pattern	{DEVICE,DAQPREFIX,DET2WF,DET3WF,DET2,DET3,NELM,SCAN_EF}
+	{"$(DEVICE)","$(DAQNDSPREFIX)","PBI-EM-HV1:VoltR_Y","PBI-EM-HV2:VoltR_Y","DET2","DET3","$(BUFFERSIZE)","PS"}
+}
+
+##########################################################################
+################################ BUFFER ##################################
+##########################################################################
+file EMU_BUFF_CHAN.template
+{
+pattern	{DEVICE,SIGNAL_IN,DET,SIGNAL2,NELM,NELM_COMP,SCAN_EF,SCAN_SLIT,MTRREC}
+	{"$(DEVICE)","LNS-ISRC-010:PBI-EMV-FC:CurrR:AVG","DET1","CURRENT","$(BUFFERSIZE)","1000","$(SCAN_EF)","$(SCAN_SLIT)","$(MTRREC)"}
+	{"$(DEVICE)","LNS-ISRC-010:PBI-EMV:CALC-ANGLE","DET23","ANGLE","$(BUFFERSIZE)","1000","$(SCAN_EF)","$(SCAN_SLIT)","$(MTRREC)"}
+}
+
+file EMU_BUFF_POS.template
+{
+pattern	{DEVICE,NELM_COMP,DET,SCAN_SLIT,MTRREC}
+	{"$(DEVICE)","1000","DET1","$(SCAN_SLIT)","$(MTRREC)"}
+}
+
+##########################################################################
+################################ ETHERCAT ################################
+##########################################################################
+file ecat2el41xx.template
+{
+	pattern {PREFIX,CH_ID, SLAVE_IDX,PDO_IDX, EOFF, ESLO, DRVL, DRVH}
+		    {"LNS-ISRC-010:PBI-EM","HVhor-SP",  3, 0, 0, 0.0003051850947599719, -10, 10}
+		    {"LNS-ISRC-010:PBI-EM","HVver-SP",  3, 2, 0, 0.0003051850947599719, -10, 10}
+     		{"LNS-ISRC-010:PBI-EM","BPS1-CurS", 2 ,0, 0, 0.0003051850947599719}
+#       		{"LNS-ISRC-010:PBI-EM","BPS1-CurS", 2 ,0, 0, 0,00048829615161595504}
+        	{"LNS-ISRC-010:PBI-EM","BPS1-VolS", 2 ,1, 0 , 0.0003051850947599719}
+#          	{"LNS-ISRC-010:PBI-EM","BPS1-VolS", 2 ,1, 0 , 0,09155552842799157}
+        	{"LNS-ISRC-010:PBI-EM","BPS2-CurS", 2 ,2, 0, 0.0003051850947599719}
+#        	{"LNS-ISRC-010:PBI-EM","BPS2-CurS", 2 ,2, 0, 0,00048829615161595504}
+        	{"LNS-ISRC-010:PBI-EM","BPS2-VolS", 2 ,3, 0 , 0.0003051850947599719}
+#        	{"LNS-ISRC-010:PBI-EM","BPS2-VolS", 2 ,3, 0 , 0,09155552842799157}
+}
+
+file ecat2el316x.template
+{
+	pattern {PREFIX,CH_ID, SLAVE_IDX, PDO_IDX}
+            {"LNS-ISRC-010:PBI-EM","BPS1-CurR",1 ,0, 0, 0.0003051850947599719}
+#       		 {"LNS-ISRC-010:PBI-EM","BPS1-CurR",1 ,0, 0, 0,00048829615161595504}
+            {"LNS-ISRC-010:PBI-EM","BPS1-VolR",1 ,1, 0, 0.0003051850947599719}
+#        	 {"LNS-ISRC-010:PBI-EM","BPS1-VolR",1 ,1, 0, 0,09155552842799157}
+            {"LNS-ISRC-010:PBI-EM","BPS2-CurR",1 ,2, 0, 0.0003051850947599719}
+#        	 {"LNS-ISRC-010:PBI-EM","BPS2-CurR",1 ,2, 0, 0,00048829615161595504}
+            {"LNS-ISRC-010:PBI-EM","BPS2-VolR",1 ,3, 0, 0.0003051850947599719}
+#        	 {"LNS-ISRC-010:PBI-EM","BPS2-VolR",1 ,3, 0, 0,09155552842799157}
+}
+
+file ecat2slave.template
+{
+	pattern {PREFIX,DTYP,MOD_ID,SLAVE_IDX}
+		{"LNS-ISRC-010:PBI-EM","ES4134","ES4134",3}
+		{"LNS-ISRC-010:PBI-EM","EL4104","EL4104",2}
+		{"LNS-ISRC-010:PBI-EM","ES3164","ES3164",1}
+}
+
+
+##########################################################################
+################################ GEOBRICK - TEST #########################
+##########################################################################
+
+file EMU_PMAC-CONSOLE.template
+{
+pattern	{P, M, SPORT}
+	{LNS-ISRC-010,PBI-EM,GEOBRICK_ASYN}
+}
+
+file EMU_PMAC-GETBO.template
+{
+pattern	{P,	M,			NAME,		DESC,				EGU,	VARIABLE,	PREC,	SCAN,		SPORT}
+	{LNS-ISRC-010,PBI-EM,VER-BRAKE,	"0: brake on, 1: brake off",			boolean,	M33,	0,	"1 second",	GEOBRICK_ASYN}
+	{LNS-ISRC-010,PBI-EM,CURRENT_ERR,"current to high",				boolean,	P93,	0,	"0.5 second",	GEOBRICK_ASYN}
+	{LNS-ISRC-010,PBI-EMV,SWITCH_H,"Vertical high motor swicth",			boolean,	M121,	0,	"0.5 second",	GEOBRICK_ASYN}
+	{LNS-ISRC-010,PBI-EMV,SWITCH_L,"Vertical low motor swicth",			boolean,	M122,	0,	"1 second",	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_BRAKE		"0: brake on, 1: brake off"	boolean	M33		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_SWITCH_H	"Vertical high motor swicth"	boolean	M121		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_SWITCH_L	"Vertical low motor swicth"	boolean	M122		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_M_IN_POSITION	"Vertical low motor swicth"	boolean	M140		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_HOME_DONE	"Vertical low motor swicth"	boolean	P101		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_M_POSITION	"Vertical motor position"	cts	#1P		0	".1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_ACTUAL_VEL	"Actual average velocity"	boolean	M174		0	".1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_QUA_CUR_LOOP	"Quadrature cur-loop inte"	boolean	M177		0	".1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_AMP_FAULT	"Amplifier-fault-error bit"	boolean	M143		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_INT_FOL_ERR	"Integrated follow. error"	boolean	M146		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_I2T_FAULT	"I2T fault bit"			boolean	M147		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	V_PHASING_ERR	"Phasing error fault"		boolean	M148		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	GEOBRICK_ERR	"M143|M146|M147|M148|M243.."	boolean	P92		0	"1 second"	GEOBRICK_ASYN}
+	{SOURCE	EMITTANCE-METTER 	CURRENT_ERR	"current to high"		boolean	P93		0	"1 second"	GEOBRICK_ASYN}
+
+}
+
+file EMU_PMAC-SETBO.template
+{
+pattern	{P,	M,			NAME,	DESC,		VARIABLE,	SPORT}
+	    {LNS-ISRC-010,PBI-EM,VER-BRAKE, "brake",M33,GEOBRICK_ASYN}
+	    {LNS-ISRC-010,PBI-EM,CURRENT_ERR,"current to high",	P93, GEOBRICK_ASYN}
+}
+
diff --git a/builddir/db/EMU_BUFF_CHAN.template b/builddir/db/EMU_BUFF_CHAN.template
new file mode 100644
index 0000000..4ece642
--- /dev/null
+++ b/builddir/db/EMU_BUFF_CHAN.template
@@ -0,0 +1,77 @@
+## COMPRESS SCALARE VALUE
+record(compress, "$(DEVICE):BUFF-$(DET)") {
+  	field(NSAM, "$(NELM_COMP)")
+  	field(ALG,"Circular Buffer")
+  	field(INP,"$(SIGNAL_IN) CP")
+  	}
+
+record(bo,"$(DEVICE):BUFF-$(DET)-RES"){
+    field(OUT,"$(DEVICE):BUFF-$(DET).RES")
+}
+
+## WAVEFORM FINAL
+record(waveform, "$(DEVICE):BUFF-$(SIGNAL2)") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(NELM)") 
+}
+
+####################################################################
+########################## CREATE THE WAVEFORM ###############
+####################################################################
+
+## Function that compute the coefficient between MRAD and VOLTAGE
+record(aSub, "$(DEVICE):BUFF-$(DET)-FUNC") {
+######### INPUTS #########
+## Waveform data
+  	field(FTA, "FLOAT")
+	field(NOA,$(NELM_COMP))
+	field(INPA, "$(DEVICE):BUFF-$(DET)")
+
+##  Waveform data reentrance
+ 	field(FTB, "FLOAT")
+	field(NOB,$(NELM))
+	field(INPB,"$(DEVICE):BUFF-$(SIGNAL2)")
+
+##  Motor position
+  	field(FTC, "LONG")
+	field(NOC,1)
+	field(INPC,"$(DEVICE):$(SCAN_SLIT)-NORD_POS")
+
+##  Nb angle total
+  	field(FTD, "LONG")
+	field(NOD, "1")
+	field(INPD, "$(DEVICE):$(SCAN_EF).NPTS")
+
+##  Nb position total
+  	field(FTE, "LONG")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE):$(SCAN_SLIT).NPTS")
+
+##  Reset
+  	field(FTF, "LONG")
+	field(NOF, "1")
+	field(INPF, "$(DEVICE):BUFF-$(DET)-DEL CP")
+	
+######### OUTPUTS #########
+## Waveform (to save)
+  	field(FTVA, "FLOAT")
+	field(NOVA, "$(NELM)")
+	field(OUTA, "$(DEVICE):BUFF-$(SIGNAL2) PP")
+
+## RESET (to save)
+  	field(FTVB, "LONG")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE):BUFF-$(DET)-DEL PP")
+
+######### FUNCTION #######
+	field(SNAM, "CREATE_TAB")
+}
+
+####################################################################
+########################## DELETE THE WAVEFORM ###############
+####################################################################
+
+record(bo, "$(DEVICE):BUFF-$(DET)-DEL")
+	{
+	}
+
diff --git a/builddir/db/EMU_BUFF_POS.template b/builddir/db/EMU_BUFF_POS.template
new file mode 100644
index 0000000..caa4850
--- /dev/null
+++ b/builddir/db/EMU_BUFF_POS.template
@@ -0,0 +1,12 @@
+## COMPRESS SCALARE VALUE MTR POS
+record(compress, "$(DEVICE):BUFF-MTR-POS") {
+  	field(NSAM, "$(NELM_COMP)")
+  	field(ALG,"Circular Buffer")
+  	field(INP,"$(MTRREC).VAL CP")
+  	}
+
+## Reset COMPRESS
+record(bo,$(DEVICE):BUFF-POS-RES){
+	field(OUT,"$(DEVICE):BUFF-MTR-POS.RES")
+}
+
diff --git a/builddir/db/EMU_CALCUL.template b/builddir/db/EMU_CALCUL.template
new file mode 100644
index 0000000..3076149
--- /dev/null
+++ b/builddir/db/EMU_CALCUL.template
@@ -0,0 +1,315 @@
+############################################
+############### Energy eV (U) ############## 
+############################################
+record(ao, "$(DEVICE):CALC-Energy-SP")
+{
+    field(DESC,"Energy eV (U)")
+    field(EGU, "eV")
+    field(DRVH, "100000")
+    field(DRVL, "0")
+    field(VAL,"75000")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE):CALC-FuncCalcConv")
+}
+############################################
+## Distance Between Plates (d) #############
+############################################
+record(ao, "$(DEVICE):CALC-DistP-SP")
+{
+    field(DESC,"Distance Between Plates (d)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"7")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE):CALC-FuncCalcConv")
+}
+############################################
+## Lenght plates(L) ########################
+############################################
+record(ao, "$(DEVICE):CALC-LenghP-SP")
+{
+    field(DESC,"Lenght plates(L)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"70")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE):CALC-FuncCalcConv")
+}
+
+############################################
+## Face Lenght plates(L1) ##################
+############################################
+record(ao, "$(DEVICE):CALC-FacLenghP-SP")
+{
+    field(DESC,"Face Lenght plates(L1)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"10")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE):CALC-FuncCalcConv")
+}
+
+############################################
+## Rear Lenght plates(L3) ##################
+############################################
+record(ao, "$(DEVICE):CALC-RearLenghP-SP")
+{
+    field(DESC,"Rear Lenght plates(L3)")
+    field(EGU, "mm")
+    field(DRVH, "100")
+    field(DRVL, "0")
+    field(VAL,"11")
+    field(PINI,"YES")
+    field(FLNK,"$(DEVICE):CALC-FuncCalcConv")
+}
+
+########################################################################################
+## ## Function that compute the coefficient between MRAD and VOLTAGE) ##################
+########################################################################################
+record(aSub, "$(DEVICE):CALC-FuncCalcConv") {
+######### INPUTS #########
+## Energy eV (U)
+  	field(FTA, "FLOAT")
+	field(NOA,1)
+	field(INPA,  "$(DEVICE):CALC-Energy-SP")
+
+## Distance Between Plates (d)
+  	field(FTB, "FLOAT")
+	field(NOB,1)
+	field(INPB,  "$(DEVICE):CALC-DistP-SP")
+
+## Lenght plates(L)
+  	field(FTC, "FLOAT")
+	field(NOC,1)
+	field(INPC,  "$(DEVICE):CALC-LenghP-SP")
+
+##Face Lenght plates(L1)
+  	field(FTD, "FLOAT")
+	field(NOD,1)
+	field(INPD,  "$(DEVICE):CALC-FacLenghP-SP")
+
+## Rear Lenght plates(L3)
+  	field(FTE, "FLOAT")
+	field(NOE,1)
+	field(INPE,  "$(DEVICE):CALC-RearLenghP-SP")
+
+######### OUTPUTS #########
+  	field(FTVA, "FLOAT")
+	field(NOVA, "1")
+	field(OUTA, "$(DEVICE):CALC-FactVtoMRAD PP")   
+
+	field(FTVB, "FLOAT")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE):CALC-FactMRADtoV PP")  
+
+######### FUNCTION #######
+	field(SNAM, "FACTOR_CONVERSION")
+}
+
+############################################
+## Conversion factor for MRAD to V #########
+############################################
+record(ao, "$(DEVICE):CALC-FactMRADtoV")
+{
+    field(DESC,"Conv fact for MRAD to V)")
+    field(EGU, "V/mrad")
+    field(PREC, "4")
+}
+
+############################################
+## Conversion factor for V to MRAD##########
+############################################
+record(ao, "$(DEVICE):CALC-FactVtoMRAD")
+{
+    field(DESC,"Conv fact for V to MRAD)")
+    field(EGU, "mrad/V")
+    field(PREC, "4")
+}
+
+###########################################################################################
+########################## CREATE THE ANGLE WAVEFORM ######################################
+###########################################################################################
+
+## Function that compute the coefficient between MRAD and VOLTAGE
+record(aSub, "$(DEVICE):CALC-BLDWFAngle") {
+######### INPUTS #########
+## FACTOR CONVERSION VtoMRAD
+  	field(FTA, "FLOAT")
+	field(NOA,1)
+	field(INPA,  "$(DEVICE):CALC-FactVtoMRAD")
+
+## Plate volatge 1 Waveform (PS1)
+  	field(FTB, "FLOAT")
+	field(NOB,$(NELM))
+	field(INPB,  "$(DAQPREFIX):$(DET2WF)")
+
+## Plate volatge 2 Waveform (PS2)
+  	field(FTC, "FLOAT")
+	field(NOC,$(NELM))
+	field(INPC,  "$(DAQPREFIX):$(DET3WF)")
+
+## Plate volatge 1 average (PS1)
+  	field(FTD, "FLOAT")
+	field(NOD,1)
+	field(INPD,  "$(DEVICE):$(DET2)-COMP")
+
+## Plate volatge 2 average (PS2)
+  	field(FTE, "FLOAT")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE):$(DET3)-COMP")
+
+## Counter detector (cpt det)
+  	field(FTE, "LONG")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE):$(SCAN_EF)-NORD_POS CP")
+
+######### OUTPUTS #########
+## ANGLE Waveform converted in MRAD (to save)
+  	field(FTVA, "FLOAT")
+	field(NOVA, "$(NELM)")
+	field(OUTA, "$(DEVICE):CALC-ANGLEwf PP")   
+
+## ANGLE AVG value converted in VOLT 
+	field(FTVB, "FLOAT")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE):CALC-ANGLE PP")  
+
+######### FUNCTION #######
+	field(SNAM, "ANGLE_CALCUL")
+}
+
+################ RESULTAT ANGLE ############## 
+## AVERAGE ANGLE
+record(ao, "$(DEVICE):CALC-ANGLE") {
+}
+
+## WAVEFORM ANGLE
+record(waveform, "$(DEVICE):CALC-ANGLEwf") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(NELM)") 
+}
+
+###########################################################################################
+########################## CALCUL PROJECTION  X et Y ######################################
+###########################################################################################
+
+## Function that calculate the projection X et Y
+record(aSub, "$(DEVICE):CALC-PROJXY") {
+######### INPUTS #########
+## Angle Waveform
+  	field(FTA, "FLOAT")
+	field(NOA,$(NELM))
+	field(INPA, "$(DEVICE):BUFF-ANGLE")
+
+## Current Waveform
+  	field(FTB, "FLOAT")
+	field(NOB,$(NELM))
+	field(INPB,  "$(DEVICE):BUFF-CURRENT")
+
+## Position Waveform
+  	field(FTC, "FLOAT")
+	field(NOC,$(NELM))
+	field(INPC,  "$(DEVICE):BUFF-MTR-POS")
+
+##  Nb angle total
+  	field(FTD, "LONG")
+	field(NOD, "1")
+	field(INPD, "$(DEVICE):$(SCAN_EF).NPTS")
+
+##  Nb position total
+  	field(FTE, "LONG")
+	field(NOE, "1")
+	field(INPE, "$(DEVICE):$(SCAN_SLIT).NPTS")
+
+######### OUTPUTS #########
+
+## PROJECTION X  output
+	field(FTVA, "FLOAT")
+	field(NOVA, "1")
+	field(OUTA, "$(DEVICE):CALC-PROJ-X PP")
+
+## PROJECTION Y output
+	field(FTVB, "FLOAT")
+	field(NOVB, "1")
+	field(OUTB, "$(DEVICE):CALC-PROJ-Y PP")
+
+## RMS SIZE output
+	field(FTVC, "FLOAT")
+	field(NOVC, "1")
+	field(OUTC, "$(DEVICE):CALC-RMS-SIZE PP")
+
+## RMS ANGLE output
+	field(FTVD, "FLOAT")
+	field(NOVD, "1")
+	field(OUTD, "$(DEVICE):CALC-RMS-ANGLE PP")
+
+## RMS CORREL output
+	field(FTVE, "FLOAT")
+	field(NOVE, "1")
+	field(OUTE, "$(DEVICE):CALC-RMS-CORREL PP")
+
+## SIGMA output
+	field(FTVF, "FLOAT")
+	field(NOVF, "1")
+	field(OUTF, "$(DEVICE):CALC-SIGMA PP")
+
+######### FUNCTION #######
+	field(SNAM, "CREATE_PROJXY")
+}
+
+################ RESULTATS ################## 
+####### PROJECTION X ##########
+record(ao, "$(DEVICE):CALC-PROJ-X") {
+	field(PREC, "4")
+}
+
+## WAVEFORM PROJECTION X
+record(waveform, "$(DEVICE):CALC-PROJ-Xwf") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(NELM)")
+}
+
+## WAVEFORM PROJECTION X ABCISSE
+record(waveform, "$(DEVICE):CALC-PROJ-Xabsc") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(NELM)") 
+}
+
+####### PROJECTION Y ##########
+record(ao, "$(DEVICE):CALC-PROJ-Y") {
+	field(PREC, "4")
+}
+
+## WAVEFORM PROJECTION Y
+record(waveform, "$(DEVICE):CALC-PROJ-Ywf") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(NELM)") 
+}
+
+## WAVEFORM PROJECTION Y ABCISSE
+record(waveform, "$(DEVICE):CALC-PROJ-Yabsc") {
+	field(FTVL, "FLOAT")
+  	field(NELM, "$(NELM)") 
+}
+
+####### RMS ##########
+record(ao, "$(DEVICE):CALC-RMS-SIZE") {
+	field(PREC, "4")
+}
+
+record(ao, "$(DEVICE):CALC-RMS-ANGLE") {
+	field(PREC, "4")
+}
+
+record(ao, "$(DEVICE):CALC-RMS-CORREL") {
+	field(PREC, "4")
+}
+
+####### SIGMA ##########
+record(ao, "$(DEVICE):CALC-SIGMA") {
+	field(PREC, "4")
+}
+
diff --git a/builddir/db/EMU_DACQ_SYNC.template b/builddir/db/EMU_DACQ_SYNC.template
new file mode 100644
index 0000000..ef587f1
--- /dev/null
+++ b/builddir/db/EMU_DACQ_SYNC.template
@@ -0,0 +1,48 @@
+############################################
+############### CURSOR RIGHT ############### 
+############################################
+record(ao, "$(PREFIX):$(DEVICE)V:RCURSOR_ms")
+{
+    field(DESC,"Cursor right")
+    field(EGU, "ms")
+    field(DRVH, "20")
+    field(DRVL, "0")
+    field(PREC, "2")
+    field(VAL, "1")
+    field(PINI,"YES")
+    field(FLNK,"$(PREFIX):$(DEVICE)V:RCURSOR_FAN")
+}
+
+record(dfanout, "$(PREFIX):$(DEVICE)V:RCURSOR_FAN")
+{
+    field(DESC,"Cursor right dfanout")
+    field(DOL, "$(PREFIX):$(DEVICE)V:RCURSOR_ms")
+    field(OUTA, "$(PREFIX):$(DEVICE)V-$(SIGNAL1):RCURSOR_ms PP")
+    field(OUTB, "$(PREFIX):$(DEVICE)-$(SIGNAL2):RCURSOR_ms PP")
+    field(OUTC, "$(PREFIX):$(DEVICE)-$(SIGNAL3):RCURSOR_ms PP")
+    field(OMSL,"closed_loop")
+}
+
+############################################
+############### CURSOR LEFT ############### 
+############################################
+record(ao, "$(PREFIX):$(DEVICE)V:LCURSOR_ms")
+{
+    field(DESC,"Cursor left")
+    field(EGU, "ms")
+    field(DRVH, "20")
+    field(DRVL, "0")
+    field(PREC, "2")
+    field(PREC, "2")
+    field(FLNK,"$(PREFIX):$(DEVICE)V:LCURSOR_FAN")
+}
+
+record(dfanout, "$(PREFIX):$(DEVICE)V:LCURSOR_FAN")
+{
+    field(DESC,"Cursor left dfanout")
+    field(DOL, "$(PREFIX):$(DEVICE)V:LCURSOR_ms")
+    field(OUTA, "$(PREFIX):$(DEVICE)V-$(SIGNAL1):LCURSOR_ms PP")
+    field(OUTB, "$(PREFIX):$(DEVICE)-$(SIGNAL2):LCURSOR_ms PP")
+    field(OUTC, "$(PREFIX):$(DEVICE)-$(SIGNAL3):LCURSOR_ms PP")
+    field(OMSL,"closed_loop")
+}
diff --git a/builddir/db/EMU_PMAC-CONSOLE.template b/builddir/db/EMU_PMAC-CONSOLE.template
new file mode 100644
index 0000000..a2a11dd
--- /dev/null
+++ b/builddir/db/EMU_PMAC-CONSOLE.template
@@ -0,0 +1,14 @@
+#DEBUG
+#sends ASCII string to pmac
+record(stringout, "$(P):$(M):PMAC-ASK") {
+  field(DESC, "sends ASCII string to pmac")
+  field(OUT, "$(P):$(M):PMAC-ANSWER CP")
+  field(FLNK, "$(P):$(M):PMAC-ANSWER")
+}
+#receives ASCII string from pmac
+record(stringin, "$(P):$(M):PMAC-ANSWER") {
+  field(DESC, "receives ASCII string from pmac")
+  field(DTYP, "stream")
+  field(INP, "@pmacVariables.proto sendString($(P):$(M):PMAC-ASK) $(SPORT)")
+}
+
diff --git a/builddir/db/EMU_PMAC-GETBO.template b/builddir/db/EMU_PMAC-GETBO.template
new file mode 100644
index 0000000..d512149
--- /dev/null
+++ b/builddir/db/EMU_PMAC-GETBO.template
@@ -0,0 +1,9 @@
+#get variables value from Geo Brick
+record(ai, "$(P):$(M):$(NAME)_GET") {
+  field(DESC, "$(DESC)")
+  field(EGU, "$(EGU)")
+  field(DTYP, "stream")
+  field(PREC, "$(PREC)")
+  field(INP, "@pmacVariables.proto getVar($(VARIABLE)) $(SPORT)")
+  field(SCAN, ".2 second") #I/O Intr
+}
diff --git a/builddir/db/EMU_PMAC-SETBO.template b/builddir/db/EMU_PMAC-SETBO.template
new file mode 100644
index 0000000..414c76b
--- /dev/null
+++ b/builddir/db/EMU_PMAC-SETBO.template
@@ -0,0 +1,8 @@
+#set data to send to the Geo brick
+record(bo, "$(P):$(M):$(NAME)_SET") {
+  field(DESC, "$(DESC)")
+  field(DTYP, "stream")
+  field(OUT, "@pmacVariables.proto setVar($(VARIABLE)) $(SPORT)")
+  field(ZNAM,"OFF")
+  field(ONAM,"ON")
+}
diff --git a/builddir/db/EMU_PROCESS.template b/builddir/db/EMU_PROCESS.template
new file mode 100644
index 0000000..dca5594
--- /dev/null
+++ b/builddir/db/EMU_PROCESS.template
@@ -0,0 +1,222 @@
+#############################################
+############## ANGLE MAX ####################
+#############################################
+
+record(ao, "$(DEVICE):PROC-AngleMax-SP") {
+  field(EGU, "mrad")
+  field(PINI,"YES")
+  field(FLNK,"$(DEVICE):PROC-VoltMaxP1")
+}
+
+record(calcout, "$(DEVICE):PROC-VoltMaxP1") {
+  field(VAL, "0")
+  field(INPA,"$(DEVICE):PROC-AngleMax-SP")
+  field(INPB,"$(DEVICE):CALC-FactMRADtoV")
+  ### /2000 => conversion in 0/10V  ###
+  field(CALC, "(A*B)/2000")
+  field(PREC, "5")  
+  field(EGU,"kV")
+  field(OUT,"$(DEVICE):$(SCAN_EF).P4SP PP")
+  field(FLNK,"$(DEVICE):PROC-VoltMaxP2")  
+}
+
+record(calcout,"$(DEVICE):PROC-VoltMaxP2") {
+  field(INPA,"$(DEVICE):PROC-VoltMaxP1")
+  ### DELTA MAX calcul
+  field(CALC, "A>0?A*(-1):A")
+  field(PREC, "5")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE):$(SCAN_EF).P1SP PP")
+}
+
+#############################################
+############ ANGLE MIM ######################
+#############################################
+
+record(ao, "$(DEVICE):PROC-AngleMin-SP") {
+  field(EGU, "mrad")
+  field(PINI,"YES")
+  field(FLNK,"$(DEVICE):PROC-VoltMinP1")
+}
+
+record(calcout, "$(DEVICE):PROC-VoltMinP1") {
+  field(VAL, "0")
+  field(INPA,"$(DEVICE):PROC-AngleMin-SP")
+  field(INPB,"$(DEVICE):CALC-FactMRADtoV")
+  ### /2000 => conversion in 0/10V
+  field(CALC, "(A*B)/2000")
+  field(PREC, "5")  
+  field(EGU,"kV")
+  field(OUT,"$(DEVICE):$(SCAN_EF).P4EP PP")
+  field(FLNK,"$(DEVICE):PROC-VoltMinP2")  
+}
+
+record(calcout,"$(DEVICE):PROC-VoltMinP2") {
+  field(INPA,"$(DEVICE):PROC-VoltMinP1")
+  ### DELTA MAX calcul
+  field(CALC, "A*(-1)")
+  field(PREC, "5")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE):$(SCAN_EF).P1EP PP")
+}
+
+#############################################
+############ ANGLE ##########################
+#############################################
+
+record(calcout, "$(DEVICE):PROC-DeltaMaxVolt") {
+  field(INPA,"$(DEVICE):PROC-VoltMax PP")
+  field(INPB,"$(DEVICE):PROC-VoltMin PP")
+  ### DELTA MAX calcul
+  field(CALC, "(A-B)/2")
+  field(PREC, "4")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE):PROC-VoltMax-SP PP")
+  field(FLNK,"$(DEVICE):PROC-DeltaMinVolt")  
+}
+
+record(calcout, "$(DEVICE):PROC-DeltaMinVolt") {
+  field(INPA,"$(DEVICE):PROC-VoltMax-SP")
+  ### DELTA MIN calcul
+  field(CALC, "A*(-1)")
+  field(PREC, "4")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE):PROC-VoltMin-SP PP")
+}
+
+record(dfanout,"$(DEVICE):PROC-VoltMin-SP"){
+  field(OUTA,"$(DEVICE):$(SCAN_EF).P1SP PP")
+  field(OUTB,"$(DEVICE):$(SCAN_EF).P4EP PP")
+}
+
+#############################################
+############ ANGLE STP ######################
+#############################################
+
+record(calcout, "$(DEVICE):PROC-StepAngle") {
+  field(INPA,"$(DEVICE):PROC-AngleMax-SP CP")
+  field(INPB,"$(DEVICE):PROC-AngleMin-SP CP")
+  field(INPC,"$(DEVICE):$(SCAN_EF).NPTS CP")
+  field(CALC,"(A-B)/C")
+  field(EGU, "mrad")
+  field(PREC, "3")
+}
+
+#############################################
+############ LINK BEFORE/AFTER SCAN PS ######
+#############################################
+record(seq,"$(DEVICE):PROC-PS-BF"){
+  field(LNK1,"LNS-ISRC-010:PBI-EM:VER-BRAKE_SET PP")
+  field(DO1,"0")
+  field(LNK2,"$(DEVICE):BUFF-DET1-RES PP")
+  field(DO2,"1")
+  field(LNK3,"$(DEVICE):BUFF-DET23-RES PP")
+  field(DO3,"1")
+}
+
+record(seq,"$(DEVICE):PROC-PS-AF"){
+  field(LNK1,"LNS-ISRC-010:PBI-EM:VER-BRAKE_SET PP")
+  field(DO1,"1")
+  field(LNK2,"$(DEVICE):BUFF-DET1-FUNC.PROC PP")
+  field(DO2,"1")
+  field(LNK3,"$(DEVICE):BUFF-DET23-FUNC.PROC PP")
+  field(DO3,"1")
+  field(LNK4,"$(DEVICE):$(SCAN_EF).AWAIT PP")
+  field(DO4,"0")
+  field(DLY4,"0.1")
+}
+
+record(seq,"$(DEVICE):PROC-SLIT-BF"){
+  field(LNK1,"LNS-ISRC-010:PBI-EM:VER-BRAKE_SET PP")
+  field(DO1,"1")
+  field(LNK2,"$(DEVICE):BUFF-POS-RES PP")
+  field(DO2,"1")
+  field(LNK3,"$(DEVICE):BUFF-DET1-RES PP")
+  field(DO3,"1")
+  field(LNK4,"$(DEVICE):BUFF-DET23-RES PP")
+  field(DO4,"1")
+  field(LNK5,"$(DEVICE):BUFF-DET1-DEL PP")
+  field(DO5,"1")
+  field(LNK6,"$(DEVICE):BUFF-DET23-DEL PP")
+  field(DO6,"1")
+  field(LNK7,"$(DEVICE):PROC-INIT-CALC.PROC PP")
+  field(DO7,"1")
+}
+
+record(seq,"$(DEVICE):PROC-SLIT-AF"){
+  field(LNK1,"$(DEVICE):PROC-AUTO-HOME PP")
+  field(DO1,"1")
+  field(LNK2,"$(DEVICE):CALC-PROJXY.PROC PP")
+  field(DO2,"1")
+  field(LNK3,"LNS-ISRC-010:PBI-EM:HVhor-SP PP")
+  field(DO3,"0")
+  field(LNK4,"LNS-ISRC-010:PBI-EM:HVver-SP PP")
+  field(DO4,"0")
+}
+
+record(seq,"$(DEVICE):PROC-SLIT-AB"){
+  field(LNK1,"$(DEVICE):PROC-AUTO-HOME PP")
+  field(DO1,"1")
+  field(LNK2,"LNS-ISRC-010:PBI-EM:HVhor-SP PP")
+  field(DO2,"0")
+  field(LNK3,"LNS-ISRC-010:PBI-EM:HVver-SP PP")
+  field(DO3,"0")
+  field(LNK4,"$(DEVICE):PROC-INIT-CALC.PROC PP")
+  field(DO4,"1")
+}
+
+#############################################
+################## INIT #####################
+#############################################
+record(seq,"$(DEVICE):PROC-INIT-CALC"){
+  field(LNK1,"$(DEVICE):CALC-RMS-SIZE PP")
+  field(DO1,"0")
+  field(LNK2,"$(DEVICE):CALC-RMS-ANGLE PP")
+  field(DO2,"0")
+  field(LNK3,"$(DEVICE):CALC-RMS-CORREL PP")
+  field(DO3,"0")
+  field(LNK4,"$(DEVICE):CALC-SIGMA PP")
+  field(DO4,"0")
+  field(LNK5,"$(DEVICE):CALC-PROJ-Y PP")
+  field(DO5,"0")
+  field(LNK6,"$(DEVICE):CALC-PROJ-X PP")
+  field(DO6,"0")
+}
+
+#############################################
+############ RETOUR HOME AUTO ###############
+#############################################
+record(bo,"$(DEVICE):PROC-AUTO-HOME") {
+}
+
+#############################################
+############ SIMULATION #####################
+#############################################
+record(bo,"$(DEVICE):PROC-SIMU") {
+field(ZNAM,"HARD")
+field(ONAM,"SIMU")
+}
+
+#############################################
+############ REPORT FILE #####################
+#############################################
+
+## Function that create a report of the EMIT
+#record(aSub, "$(DEVICE):PROC-REPORT") {
+######### INPUTS #########
+## Energie
+#  	field(FTA, "FLOAT")
+#	field(NOA,1)
+#	field(INPA,"$(DEVICE):CALC-Energy-SP")
+
+## TIMESTAMP START
+#  	field(FTB, "FLOAT")
+#	field(NOB,1)
+#	field(INPB,  "$(DEVICE):BUFF-CURRENT")
+
+######### FUNCTION #######
+#	field(SNAM, "CREATE_REPORT")
+#}
+
+
+
diff --git a/builddir/doc/README.md b/builddir/doc/README.md
new file mode 100644
index 0000000..e69de29
diff --git a/builddir/misc/pmacVariables.proto b/builddir/misc/pmacVariables.proto
new file mode 100644
index 0000000..08acdc2
--- /dev/null
+++ b/builddir/misc/pmacVariables.proto
@@ -0,0 +1,37 @@
+# Streams protocol file for the pmacStreams protocol
+# Initial version NPR 04/2006
+
+# use "streamReload" to reload this file without restarting the IOC
+
+ExtraInput = Ignore;
+ReadTimeout = 500;
+OutTerminator = "";
+InTerminator = ACK;
+Separator = CR;
+
+
+sendString
+{
+  out "%(\$1)s" CR;
+  in "%s";
+}
+
+
+setVar
+{
+  out "\$1=%i" CR;
+  in;
+}
+
+getVar
+{
+  out "\$1" CR;
+  in "%i";
+}
+
+
+
+
+
+
+
diff --git a/builddir/opi/EMU.opi b/builddir/opi/EMU.opi
new file mode 100644
index 0000000..9422d06
--- /dev/null
+++ b/builddir/opi/EMU.opi
@@ -0,0 +1,10386 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<display typeId="org.csstudio.opibuilder.Display" version="1.0.0">
+  <show_close_button>true</show_close_button>
+  <rules />
+  <wuid>3f06f9b8:152877ca726:-7d52</wuid>
+  <show_grid>true</show_grid>
+  <auto_zoom_to_fit_all>true</auto_zoom_to_fit_all>
+  <scripts />
+  <height>1600</height>
+  <macros>
+    <include_parent_macros>true</include_parent_macros>
+    <DTACQ-NAME>LNS-ISRC-010:PBI-EM</DTACQ-NAME>
+    <DEVICE_FC>FC</DEVICE_FC>
+    <PREFIX_SIG>DACQ</PREFIX_SIG>
+    <PREFIX_MTR>LNS-ISRC-010:PBI-EM-PMAC</PREFIX_MTR>
+    <NAME_MTR>MTR</NAME_MTR>
+    <PMAC_MTR>MTR1</PMAC_MTR>
+    <NAME_PS>PS</NAME_PS>
+    <PREFIX_PS>LNS-ISRC-010:PBI-EM:HV</PREFIX_PS>
+    <PREFIX_SCAN>LNS-ISRC-010:PBI-EMV</PREFIX_SCAN>
+    <SCAN>MOTOR</SCAN>
+    <P>SOURCE</P>
+    <M>EMITTANCE-METTER</M>
+    <PROC>PROC</PROC>
+    <CALC>CALC</CALC>
+    <DEVICE_HV1>HV1</DEVICE_HV1>
+    <DEVICE_HV2>HV2</DEVICE_HV2>
+  </macros>
+  <boy_version>4.0.103.201506251634</boy_version>
+  <show_edit_range>true</show_edit_range>
+  <widget_type>Display</widget_type>
+  <auto_scale_widgets>
+    <auto_scale_widgets>false</auto_scale_widgets>
+    <min_width>-1</min_width>
+    <min_height>-1</min_height>
+  </auto_scale_widgets>
+  <background_color>
+    <color red="240" green="240" blue="240" />
+  </background_color>
+  <width>2000</width>
+  <x>-1</x>
+  <name></name>
+  <grid_space>6</grid_space>
+  <show_ruler>true</show_ruler>
+  <y>-1</y>
+  <snap_to_geometry>true</snap_to_geometry>
+  <foreground_color>
+    <color red="192" green="192" blue="192" />
+  </foreground_color>
+  <actions hook="false" hook_all="false" />
+  <widget typeId="org.csstudio.opibuilder.widgets.tab" version="1.0.0">
+    <active_tab>0</active_tab>
+    <tooltip></tooltip>
+    <height>1165</height>
+    <tab_2_icon_path></tab_2_icon_path>
+    <border_width>1</border_width>
+    <border_color>
+      <color red="0" green="128" blue="255" />
+    </border_color>
+    <tab_0_foreground_color>
+      <color red="0" green="0" blue="0" />
+    </tab_0_foreground_color>
+    <actions hook="false" hook_all="false" />
+    <tab_1_enabled>true</tab_1_enabled>
+    <border_style>0</border_style>
+    <enabled>true</enabled>
+    <wuid>2fea3147:153609206ed:-7766</wuid>
+    <tab_1_background_color>
+      <color red="255" green="255" blue="255" />
+    </tab_1_background_color>
+    <tab_1_icon_path></tab_1_icon_path>
+    <tab_2_foreground_color>
+      <color red="0" green="0" blue="0" />
+    </tab_2_foreground_color>
+    <tab_1_font>
+      <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+    </tab_1_font>
+    <tab_2_enabled>true</tab_2_enabled>
+    <background_color>
+      <color red="240" green="240" blue="240" />
+    </background_color>
+    <width>2491</width>
+    <x>18</x>
+    <horizontal_tabs>true</horizontal_tabs>
+    <y>102</y>
+    <rules />
+    <macros>
+      <include_parent_macros>true</include_parent_macros>
+    </macros>
+    <visible>true</visible>
+    <tab_0_background_color>
+      <color red="255" green="255" blue="255" />
+    </tab_0_background_color>
+    <widget_type>Tabbed Container</widget_type>
+    <tab_2_font>
+      <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+    </tab_2_font>
+    <name></name>
+    <minimum_tab_height>10</minimum_tab_height>
+    <tab_2_title>PLC</tab_2_title>
+    <tab_0_font>
+      <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+    </tab_0_font>
+    <tab_2_background_color>
+      <color red="255" green="255" blue="255" />
+    </tab_2_background_color>
+    <tab_0_title>SCANNING</tab_0_title>
+    <tab_1_foreground_color>
+      <color red="0" green="0" blue="0" />
+    </tab_1_foreground_color>
+    <tab_1_title>DTACQ</tab_1_title>
+    <scripts />
+    <tab_count>3</tab_count>
+    <scale_options>
+      <width_scalable>true</width_scalable>
+      <height_scalable>true</height_scalable>
+      <keep_wh_ratio>false</keep_wh_ratio>
+    </scale_options>
+    <tab_0_icon_path></tab_0_icon_path>
+    <tab_0_enabled>true</tab_0_enabled>
+    <foreground_color>
+      <color red="192" green="192" blue="192" />
+    </foreground_color>
+    <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+      <border_style>0</border_style>
+      <tooltip></tooltip>
+      <rules />
+      <enabled>true</enabled>
+      <wuid>-4f668e34:1537ecf193c:-7f8d</wuid>
+      <transparent>true</transparent>
+      <lock_children>false</lock_children>
+      <scripts />
+      <height>1129</height>
+      <border_width>1</border_width>
+      <scale_options>
+        <width_scalable>true</width_scalable>
+        <height_scalable>true</height_scalable>
+        <keep_wh_ratio>false</keep_wh_ratio>
+      </scale_options>
+      <macros>
+        <include_parent_macros>true</include_parent_macros>
+      </macros>
+      <visible>true</visible>
+      <border_color>
+        <color red="0" green="128" blue="255" />
+      </border_color>
+      <widget_type>Grouping Container</widget_type>
+      <background_color>
+        <color red="240" green="240" blue="240" />
+      </background_color>
+      <width>2489</width>
+      <x>1</x>
+      <name>SCANNING</name>
+      <y>1</y>
+      <foreground_color>
+        <color red="192" green="192" blue="192" />
+      </foreground_color>
+      <actions hook="false" hook_all="false" />
+      <fc>false</fc>
+      <show_scrollbar>true</show_scrollbar>
+      <font>
+        <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+      </font>
+      <widget typeId="org.csstudio.opibuilder.widgets.RoundedRectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-4ace</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <corner_height>16</corner_height>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1099</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <corner_width>16</corner_width>
+        <line_style>0</line_style>
+        <widget_type>Rounded Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </background_color>
+        <width>349</width>
+        <x>29</x>
+        <name>Rounded Rectangle_5</name>
+        <y>12</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.tab" version="1.0.0">
+        <active_tab>0</active_tab>
+        <tooltip></tooltip>
+        <tab_3_icon_path></tab_3_icon_path>
+        <height>295</height>
+        <tab_2_icon_path></tab_2_icon_path>
+        <border_width>1</border_width>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <tab_0_foreground_color>
+          <color red="0" green="0" blue="0" />
+        </tab_0_foreground_color>
+        <actions hook="false" hook_all="false" />
+        <tab_1_enabled>true</tab_1_enabled>
+        <border_style>0</border_style>
+        <enabled>true</enabled>
+        <wuid>-1ab698cd:1586d27a42e:-6643</wuid>
+        <tab_1_background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </tab_1_background_color>
+        <tab_1_icon_path></tab_1_icon_path>
+        <tab_2_foreground_color>
+          <color red="0" green="0" blue="0" />
+        </tab_2_foreground_color>
+        <tab_1_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </tab_1_font>
+        <tab_3_title>BPS</tab_3_title>
+        <tab_2_enabled>true</tab_2_enabled>
+        <background_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </background_color>
+        <width>326</width>
+        <x>42</x>
+        <horizontal_tabs>true</horizontal_tabs>
+        <y>78</y>
+        <rules />
+        <tab_3_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </tab_3_font>
+        <macros>
+          <include_parent_macros>true</include_parent_macros>
+        </macros>
+        <visible>true</visible>
+        <tab_0_background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </tab_0_background_color>
+        <tab_3_foreground_color>
+          <color red="0" green="0" blue="0" />
+        </tab_3_foreground_color>
+        <widget_type>Tabbed Container</widget_type>
+        <tab_2_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </tab_2_font>
+        <tab_3_background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </tab_3_background_color>
+        <tab_3_enabled>true</tab_3_enabled>
+        <name>Tabbed Container_1</name>
+        <minimum_tab_height>10</minimum_tab_height>
+        <tab_2_title>Motor</tab_2_title>
+        <tab_0_font>
+          <opifont.name fontName="OpenSans" height="10" style="1">Small Bold</opifont.name>
+        </tab_0_font>
+        <tab_2_background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </tab_2_background_color>
+        <tab_0_title>DACQ</tab_0_title>
+        <tab_1_foreground_color>
+          <color red="0" green="0" blue="0" />
+        </tab_1_foreground_color>
+        <tab_1_title>Dimension</tab_1_title>
+        <scripts />
+        <tab_count>4</tab_count>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <tab_0_icon_path></tab_0_icon_path>
+        <tab_0_enabled>true</tab_0_enabled>
+        <foreground_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </foreground_color>
+        <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+          <border_style>0</border_style>
+          <tooltip></tooltip>
+          <rules />
+          <enabled>true</enabled>
+          <wuid>-1168daa3:158859bc9c3:-6933</wuid>
+          <transparent>true</transparent>
+          <lock_children>false</lock_children>
+          <scripts />
+          <height>259</height>
+          <border_width>1</border_width>
+          <scale_options>
+            <width_scalable>true</width_scalable>
+            <height_scalable>true</height_scalable>
+            <keep_wh_ratio>false</keep_wh_ratio>
+          </scale_options>
+          <macros>
+            <include_parent_macros>true</include_parent_macros>
+          </macros>
+          <visible>true</visible>
+          <border_color>
+            <color red="0" green="128" blue="255" />
+          </border_color>
+          <widget_type>Grouping Container</widget_type>
+          <background_color>
+            <color red="240" green="240" blue="240" />
+          </background_color>
+          <width>324</width>
+          <x>1</x>
+          <name>DACQ</name>
+          <y>1</y>
+          <foreground_color>
+            <color red="192" green="192" blue="192" />
+          </foreground_color>
+          <actions hook="false" hook_all="false" />
+          <fc>false</fc>
+          <show_scrollbar>true</show_scrollbar>
+          <font>
+            <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+          </font>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-1168daa3:158859bc9c3:-691d</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>T1</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>151</width>
+            <x>49</x>
+            <name>Label Orientation_1</name>
+            <y>54</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules>
+              <rule name="Disable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(DTACQ-NAME)V:LCURSOR_ms</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>false</enabled>
+            <wuid>-1168daa3:158859bc9c3:-691c</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>168</x>
+            <y>48</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-1168daa3:158859bc9c3:-691b</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>T2</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>174</width>
+            <x>38</x>
+            <name>Label Orientation_2</name>
+            <y>96</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-68d0</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Measure interval</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>151</width>
+            <x>142</x>
+            <name>Label</name>
+            <y>18</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-68c6</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Frequency sample </text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>151</width>
+            <x>6</x>
+            <name>Label_164</name>
+            <y>138</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-6047e935:1589bd389ef:-608e</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text>######</text>
+            <rotation_angle>0.0</rotation_angle>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <show_units>true</show_units>
+            <height>31</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>$(DTACQ-NAME):CARD0:SAMPLINGRATE-RB</pv_name>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Update</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <wrap_words>false</wrap_words>
+            <format_type>0</format_type>
+            <background_color>
+              <color red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>168</x>
+            <name>Text Update</name>
+            <y>132</y>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules>
+              <rule name="Disable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(DTACQ-NAME)V:RCURSOR_ms</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>false</enabled>
+            <wuid>-6047e935:1589bd389ef:-5e00</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>168</x>
+            <y>90</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+        </widget>
+        <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+          <border_style>0</border_style>
+          <tooltip></tooltip>
+          <rules />
+          <enabled>true</enabled>
+          <wuid>-1ab698cd:1586d27a42e:-6642</wuid>
+          <transparent>true</transparent>
+          <lock_children>false</lock_children>
+          <scripts />
+          <height>259</height>
+          <border_width>1</border_width>
+          <scale_options>
+            <width_scalable>true</width_scalable>
+            <height_scalable>true</height_scalable>
+            <keep_wh_ratio>false</keep_wh_ratio>
+          </scale_options>
+          <macros>
+            <include_parent_macros>true</include_parent_macros>
+          </macros>
+          <visible>false</visible>
+          <border_color>
+            <color red="0" green="128" blue="255" />
+          </border_color>
+          <widget_type>Grouping Container</widget_type>
+          <background_color>
+            <color red="240" green="240" blue="240" />
+          </background_color>
+          <width>324</width>
+          <x>1</x>
+          <name>Dimension</name>
+          <y>1</y>
+          <foreground_color>
+            <color red="192" green="192" blue="192" />
+          </foreground_color>
+          <actions hook="false" hook_all="false" />
+          <fc>false</fc>
+          <show_scrollbar>true</show_scrollbar>
+          <font>
+            <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+          </font>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6feb</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Energy (eV)</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>151</width>
+            <x>12</x>
+            <name>Label Orientation_1</name>
+            <y>24</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>${PREFIX_SCAN}:${CALC}-Energy-SP</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fea</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>198</x>
+            <y>18</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fe9</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Distance betw. Plates</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>false</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>174</width>
+            <x>13</x>
+            <name>Label Orientation_2</name>
+            <y>66</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>false</visible>
+            <pv_name>${PREFIX_SCAN}:${CALC}-DistP-SP</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_2</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fe8</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>198</x>
+            <y>60</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fe7</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Plate lenght</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>false</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>199</width>
+            <x>0</x>
+            <name>Label Orientation_3</name>
+            <y>106</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>false</visible>
+            <pv_name>${PREFIX_SCAN}:${CALC}-LenghP-SP</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_3</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fe6</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>198</x>
+            <y>100</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>false</visible>
+            <pv_name>${PREFIX_SCAN}:${CALC}-FacLenghP-SP</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_4</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fe4</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>198</x>
+            <y>145</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fe5</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Face Plate lenght</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>false</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>199</width>
+            <x>0</x>
+            <name>Label Orientation_4</name>
+            <y>151</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fa3</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Rear Plate lenght</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>false</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>199</width>
+            <x>0</x>
+            <name>Label Orientation_4</name>
+            <y>195</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>false</visible>
+            <pv_name>${PREFIX_SCAN}:${CALC}-RearLenghP-SP</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_4</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-20a75393:15809f6e4ee:-6fa2</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>198</x>
+            <y>189</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+        </widget>
+        <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+          <border_style>0</border_style>
+          <tooltip></tooltip>
+          <rules />
+          <enabled>true</enabled>
+          <wuid>-1ab698cd:1586d27a42e:-62df</wuid>
+          <transparent>true</transparent>
+          <lock_children>false</lock_children>
+          <scripts />
+          <height>259</height>
+          <border_width>1</border_width>
+          <scale_options>
+            <width_scalable>true</width_scalable>
+            <height_scalable>true</height_scalable>
+            <keep_wh_ratio>false</keep_wh_ratio>
+          </scale_options>
+          <macros>
+            <include_parent_macros>true</include_parent_macros>
+          </macros>
+          <visible>false</visible>
+          <border_color>
+            <color red="0" green="128" blue="255" />
+          </border_color>
+          <widget_type>Grouping Container</widget_type>
+          <background_color>
+            <color red="240" green="240" blue="240" />
+          </background_color>
+          <width>324</width>
+          <x>1</x>
+          <name>Motor</name>
+          <y>1</y>
+          <foreground_color>
+            <color red="192" green="192" blue="192" />
+          </foreground_color>
+          <actions hook="false" hook_all="false" />
+          <fc>false</fc>
+          <show_scrollbar>true</show_scrollbar>
+          <font>
+            <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+          </font>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-1ab698cd:1586d27a42e:-62d1</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Velocity</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>151</width>
+            <x>12</x>
+            <name>Label Orientation_1</name>
+            <y>30</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules>
+              <rule name="Disable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).VELO</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-1ab698cd:1586d27a42e:-62d0</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>130</width>
+            <x>168</x>
+            <y>24</y>
+            <maximum>7.0</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-1ab698cd:1586d27a42e:-62b9</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Homing Velocity</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>151</width>
+            <x>12</x>
+            <name>Label Orientation_1</name>
+            <y>72</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules>
+              <rule name="Disable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).HVEL</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-1ab698cd:1586d27a42e:-62b8</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>130</width>
+            <x>168</x>
+            <y>66</y>
+            <maximum>7.0</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-1ab698cd:1586d27a42e:-6298</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Acc. time</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>151</width>
+            <x>12</x>
+            <name>Label Orientation_1</name>
+            <y>114</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules>
+              <rule name="Disable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).ACCL</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-1ab698cd:1586d27a42e:-6297</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>130</width>
+            <x>168</x>
+            <y>108</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+            <toggle_button>false</toggle_button>
+            <border_style>6</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <push_action_index>0</push_action_index>
+            <rules>
+              <rule name="Enable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>-1ab698cd:1586d27a42e:-5fde</wuid>
+            <pv_value />
+            <text>RESET</text>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>25</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <image></image>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <border_color>
+              <color name="Button Grey" red="180" green="180" blue="180" />
+            </border_color>
+            <widget_type>Action Button</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Button Grey" red="180" green="180" blue="180" />
+            </background_color>
+            <width>61</width>
+            <x>12</x>
+            <name>Action Button Template</name>
+            <y>231</y>
+            <style>0</style>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false">
+              <action type="WRITE_PV">
+                <pv_name>$(PREFIX_MTR):$(PMAC_MTR)-ACTMTR.PROC</pv_name>
+                <value>1</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description></description>
+              </action>
+            </actions>
+            <font>
+              <opifont.name fontName="OpenSans" height="10" style="1">Small Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-1168daa3:158859bc9c3:-2f8d</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Position CONS</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>151</width>
+            <x>12</x>
+            <name>Label Orientation_1</name>
+            <y>156</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules>
+              <rule name="Disable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==1 || pv1==0">
+                  <value>false</value>
+                </exp>
+                <exp bool_exp="pv0==0 &amp;&amp; pv1==1">
+                  <value>true</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+                <pv trig="true">LNS-ISRC-010:PBI-EM:VER-BRAKE_SET</pv>
+              </rule>
+            </rules>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).VAL</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-2f8c</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>130</width>
+            <x>168</x>
+            <y>150</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+            <toggle_button>false</toggle_button>
+            <border_style>6</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <push_action_index>0</push_action_index>
+            <rules>
+              <rule name="Enable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==1 &amp;&amp; pv1==0">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==0 || pv1==1">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">LNS-ISRC-010:PBI-EM:VER-BRAKE_SET</pv>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-8e0</wuid>
+            <pv_value />
+            <text>MOVE</text>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>25</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <image></image>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Action Button</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Button" red="178" green="178" blue="178" />
+            </background_color>
+            <width>73</width>
+            <x>180</x>
+            <name>Action Button Template_3</name>
+            <y>198</y>
+            <style>0</style>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false">
+              <action type="WRITE_PV">
+                <pv_name>$(PREFIX_MTR):$(PMAC_MTR).SPMG</pv_name>
+                <value>2</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description></description>
+              </action>
+            </actions>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+            <toggle_button>false</toggle_button>
+            <border_style>6</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <push_action_index>0</push_action_index>
+            <rules>
+              <rule name="Enable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-3d9</wuid>
+            <pv_value />
+            <text>STOP</text>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>25</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <image></image>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Action Button</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </background_color>
+            <width>73</width>
+            <x>90</x>
+            <name>Action Button Template_3</name>
+            <y>198</y>
+            <style>0</style>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false">
+              <action type="WRITE_PV">
+                <pv_name>$(PREFIX_MTR):$(PMAC_MTR).SPMG</pv_name>
+                <value>0</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description></description>
+              </action>
+            </actions>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.BoolSwitch" version="1.0.0">
+            <toggle_button>true</toggle_button>
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <push_action_index>0</push_action_index>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <bit>-1</bit>
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-380</wuid>
+            <on_color>
+              <color name="Green Off" red="0" green="30" blue="0" />
+            </on_color>
+            <show_confirm_dialog>0</show_confirm_dialog>
+            <password></password>
+            <pv_value />
+            <released_action_index>1</released_action_index>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>52</height>
+            <on_label>OFF</on_label>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>LNS-ISRC-010:PBI-EM:VER-BRAKE_GET</pv_name>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Boolean Switch</widget_type>
+            <off_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </off_color>
+            <confirm_message>Are your sure you want to do this?</confirm_message>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color red="240" green="240" blue="240" />
+            </background_color>
+            <boolean_label_position>0</boolean_label_position>
+            <width>49</width>
+            <x>271</x>
+            <name>Boolean Switch</name>
+            <data_type>0</data_type>
+            <y>204</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false">
+              <action type="WRITE_PV">
+                <pv_name>LNS-ISRC-010:PBI-EM:VER-BRAKE_SET</pv_name>
+                <value>1</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description></description>
+              </action>
+              <action type="WRITE_PV">
+                <pv_name>LNS-ISRC-010:PBI-EM:VER-BRAKE_SET</pv_name>
+                <value>0</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description></description>
+              </action>
+            </actions>
+            <show_boolean_label>false</show_boolean_label>
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <off_label>ON</off_label>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-227</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>brake</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>80</width>
+            <x>240</x>
+            <name>Label</name>
+            <y>185</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="0">Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+            <toggle_button>false</toggle_button>
+            <border_style>6</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <push_action_index>0</push_action_index>
+            <rules>
+              <rule name="Enable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0==0">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==1">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>71173f98:1598d71be83:-4366</wuid>
+            <pv_value />
+            <text>HOME</text>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>25</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <image></image>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <border_color>
+              <color name="Button Grey" red="180" green="180" blue="180" />
+            </border_color>
+            <widget_type>Action Button</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Button Grey" red="180" green="180" blue="180" />
+            </background_color>
+            <width>61</width>
+            <x>12</x>
+            <name>Action Button Template</name>
+            <y>198</y>
+            <style>0</style>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false">
+              <action type="WRITE_PV">
+                <pv_name>LNS-ISRC-010:PBI-EMV:PROC-AUTO-HOME</pv_name>
+                <value>1</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description></description>
+              </action>
+            </actions>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+        </widget>
+        <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+          <border_style>0</border_style>
+          <tooltip></tooltip>
+          <rules />
+          <enabled>true</enabled>
+          <wuid>4b16a64d:158af4f8f37:-7f5c</wuid>
+          <transparent>true</transparent>
+          <lock_children>false</lock_children>
+          <scripts />
+          <height>259</height>
+          <border_width>1</border_width>
+          <scale_options>
+            <width_scalable>true</width_scalable>
+            <height_scalable>true</height_scalable>
+            <keep_wh_ratio>false</keep_wh_ratio>
+          </scale_options>
+          <macros>
+            <include_parent_macros>true</include_parent_macros>
+          </macros>
+          <visible>false</visible>
+          <border_color>
+            <color red="0" green="128" blue="255" />
+          </border_color>
+          <widget_type>Grouping Container</widget_type>
+          <background_color>
+            <color red="240" green="240" blue="240" />
+          </background_color>
+          <width>324</width>
+          <x>1</x>
+          <name>BPS</name>
+          <y>1</y>
+          <foreground_color>
+            <color red="192" green="192" blue="192" />
+          </foreground_color>
+          <actions hook="false" hook_all="false" />
+          <fc>false</fc>
+          <show_scrollbar>true</show_scrollbar>
+          <font>
+            <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+          </font>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>4b16a64d:158af4f8f37:-7f46</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Voltage</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>67</width>
+            <x>12</x>
+            <name>Label Orientation_2</name>
+            <y>96</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>4b16a64d:158af4f8f37:-7f44</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Current</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>73</width>
+            <x>6</x>
+            <name>Label Orientation_3</name>
+            <y>54</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>LNS-ISRC-010:PBI-EM:BPS1-CurS</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_3</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>4b16a64d:158af4f8f37:-7f43</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>91</width>
+            <x>90</x>
+            <y>48</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>4b16a64d:158af4f8f37:-7f3b</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>VERTICAL</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>199</width>
+            <x>66</x>
+            <name>Label_164</name>
+            <y>12</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="0">Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>4b16a64d:158af4f8f37:-7f27</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text>######</text>
+            <rotation_angle>0.0</rotation_angle>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <show_units>true</show_units>
+            <height>31</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>LNS-ISRC-010:PBI-EM:BPS1-CurR</pv_name>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Update</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <wrap_words>false</wrap_words>
+            <format_type>0</format_type>
+            <background_color>
+              <color red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>198</x>
+            <name>Text Update</name>
+            <y>48</y>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>4b16a64d:158af4f8f37:-7f1b</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text>######</text>
+            <rotation_angle>0.0</rotation_angle>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <show_units>true</show_units>
+            <height>31</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>LNS-ISRC-010:PBI-EM:BPS1-VolR</pv_name>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Update</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <wrap_words>false</wrap_words>
+            <format_type>0</format_type>
+            <background_color>
+              <color red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>198</x>
+            <name>Text Update</name>
+            <y>90</y>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>LNS-ISRC-010:PBI-EM:BPS1-VolS</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_3</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>4b16a64d:158af4f8f37:-6180</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>91</width>
+            <x>90</x>
+            <y>90</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="KeyboardEntry" red="0" green="255" blue="255" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+        </widget>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.RoundedRectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-4223</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <corner_height>16</corner_height>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1099</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <corner_width>16</corner_width>
+        <line_style>0</line_style>
+        <widget_type>Rounded Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </background_color>
+        <width>1681</width>
+        <x>414</x>
+        <name>Rounded Rectangle_5</name>
+        <y>18</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.RoundedRectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-47901338:158955bc5eb:-344b</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <corner_height>16</corner_height>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>208</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <corner_width>16</corner_width>
+        <line_style>0</line_style>
+        <widget_type>Rounded Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </background_color>
+        <width>205</width>
+        <x>420</x>
+        <name>Rounded Rectangle_7</name>
+        <y>894</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>0</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-47901338:158955bc5eb:-31fa</wuid>
+        <transparent>true</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(PREFIX_SCAN):$(CALC)-PROJ-X</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>100</width>
+        <x>540</x>
+        <name>Text Update</name>
+        <y>912</y>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.RoundedRectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-16429ab9:158444d4181:-7ba7</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <corner_height>16</corner_height>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>79</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <corner_width>16</corner_width>
+        <line_style>0</line_style>
+        <widget_type>Rounded Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Border Grey" red="150" green="150" blue="150" />
+        </background_color>
+        <width>350</width>
+        <x>29</x>
+        <name>Rounded Rectangle</name>
+        <y>1038</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.LED" version="1.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <effect_3d>true</effect_3d>
+        <bit>-1</bit>
+        <pv_value />
+        <height>36</height>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv_name>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>LED</widget_type>
+        <name>LED</name>
+        <actions hook="false" hook_all="false" />
+        <show_boolean_label>false</show_boolean_label>
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-4cec</wuid>
+        <on_color>
+          <color red="0" green="255" blue="0" />
+        </on_color>
+        <scripts />
+        <border_alarm_sensitive>true</border_alarm_sensitive>
+        <on_label>ON</on_label>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <off_color>
+          <color red="0" green="100" blue="0" />
+        </off_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color red="240" green="240" blue="240" />
+        </background_color>
+        <square_led>true</square_led>
+        <width>32</width>
+        <x>336</x>
+        <data_type>0</data_type>
+        <y>1066</y>
+        <foreground_color>
+          <color red="192" green="192" blue="192" />
+        </foreground_color>
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <off_label>OFF</off_label>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.polyline" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>1</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <arrows>0</arrows>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-4a2d</wuid>
+        <transparent>false</transparent>
+        <points>
+          <point x="30" y="393" />
+          <point x="378" y="393" />
+          <point x="378" y="393" />
+          <point x="378" y="393" />
+          <point x="378" y="393" />
+        </points>
+        <fill_arrow>true</fill_arrow>
+        <pv_value />
+        <alpha>255</alpha>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>0</line_style>
+        <arrow_length>20</arrow_length>
+        <widget_type>Polyline</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </background_color>
+        <width>349</width>
+        <x>30</x>
+        <name>Polyline</name>
+        <y>393</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-4ab2</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>Position</text>
+        <scripts />
+        <height>25</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="panelArea" red="240" green="240" blue="240" />
+        </background_color>
+        <width>229</width>
+        <x>96</x>
+        <name>Label_156</name>
+        <y>381</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>1e771979:1565068c2e3:-3e44</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>START position</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>151</width>
+        <x>42</x>
+        <name>Label Orientation_7</name>
+        <y>420</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(NAME_MTR).P4SP</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-3e43</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>414</y>
+        <maximum>0.0</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>-200.0</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>1e771979:1565068c2e3:-3d91</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>END position</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>104</width>
+        <x>71</x>
+        <name>Label Orientation_7</name>
+        <y>462</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(NAME_MTR).P4EP</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-3d90</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>456</y>
+        <maximum>1.7976931348623157E308</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>-1.7976931348623157E308</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.polyline" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>1</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <arrows>0</arrows>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-33bf</wuid>
+        <transparent>false</transparent>
+        <points>
+          <point x="29" y="597" />
+          <point x="377" y="597" />
+          <point x="377" y="597" />
+          <point x="377" y="597" />
+          <point x="377" y="597" />
+        </points>
+        <fill_arrow>true</fill_arrow>
+        <pv_value />
+        <alpha>255</alpha>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>0</line_style>
+        <arrow_length>20</arrow_length>
+        <widget_type>Polyline</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </background_color>
+        <width>349</width>
+        <x>29</x>
+        <name>Polyline</name>
+        <y>597</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-33be</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>Angle</text>
+        <scripts />
+        <height>25</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="panelArea" red="240" green="240" blue="240" />
+        </background_color>
+        <width>229</width>
+        <x>96</x>
+        <name>Label_156</name>
+        <y>585</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>1e771979:1565068c2e3:-33b3</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Number of positions</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>199</width>
+        <x>30</x>
+        <name>Label Orientation_7</name>
+        <y>502</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(NAME_MTR).NPTS</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-33a9</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>496</y>
+        <maximum>100.0</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>0.0</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>1e771979:1565068c2e3:-335c</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Step size</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>199</width>
+        <x>30</x>
+        <name>Label Orientation_7</name>
+        <y>547</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(NAME_MTR).P4SI</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-335b</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>541</y>
+        <maximum>1.7976931348623157E308</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>-1.7976931348623157E308</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>1e771979:1565068c2e3:-31f0</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Nb Angles</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>84</width>
+        <x>99</x>
+        <name>Label Orientation_2</name>
+        <y>715</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(NAME_PS).NPTS</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input_2</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-31ef</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>709</y>
+        <maximum>400.0</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>0.0</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+        <toggle_button>false</toggle_button>
+        <border_style>6</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <push_action_index>0</push_action_index>
+        <rules>
+          <rule name="Enable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==0 || pv1==1||pv2==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==1 &amp;&amp; pv1==0 &amp;&amp; pv2==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+            <pv trig="true">${PREFIX_SCAN}:$(PROC)-AUTO-HOME</pv>
+            <pv trig="true">${PREFIX_SCAN}:SWITCH_H_GET</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-2a00</wuid>
+        <pv_value />
+        <text>ABORT</text>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>55</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <image></image>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Action Button</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </background_color>
+        <width>146</width>
+        <x>45</x>
+        <name>Abort Scan</name>
+        <y>1056</y>
+        <style>0</style>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="true">
+          <action type="WRITE_PV">
+            <pv_name>${PREFIX_SCAN}:$(NAME_MTR)-ABORT.PROC</pv_name>
+            <value>1</value>
+            <timeout>10</timeout>
+            <confirm_message></confirm_message>
+            <description>Abort Scan</description>
+          </action>
+        </actions>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+        <toggle_button>false</toggle_button>
+        <border_style>6</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <push_action_index>0</push_action_index>
+        <rules>
+          <rule name="Enable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==0 &amp;&amp; pv1==0 &amp;&amp; pv2==0 &amp;&amp; pv3==0 &amp;&amp; pv4==0 &amp;&amp; pv5==0">
+              <value>true</value>
+            </exp>
+            <exp bool_exp="pv0==1 || pv1==0 || pv2==0 || pv3==0 || pv4==0 || pv5==0">
+              <value>false</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM1</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM2</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM3</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM4</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM5</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-2a01</wuid>
+        <pv_value />
+        <text>START</text>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>55</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <image></image>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Action Button</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="IO Button" red="178" green="178" blue="178" />
+        </background_color>
+        <width>103</width>
+        <x>216</x>
+        <name>Start Scan</name>
+        <y>1056</y>
+        <style>0</style>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false">
+          <action type="WRITE_PV">
+            <pv_name>${PREFIX_SCAN}:$(NAME_MTR).EXSC</pv_name>
+            <value>1</value>
+            <timeout>10</timeout>
+            <confirm_message></confirm_message>
+            <description>Start SCAN</description>
+          </action>
+        </actions>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>1e771979:1565068c2e3:-31f4</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>MRAD  MIN</text>
+        <scripts />
+        <height>25</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>101</width>
+        <x>83</x>
+        <name>Label Orientation_7</name>
+        <y>669</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(PROC)-AngleMin-SP</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-31f3</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>666</y>
+        <maximum>1.7976931348623157E308</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>-1.7976931348623157E308</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>-cae44c:157dd221fed:-75d1</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Step size</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>144</width>
+        <x>60</x>
+        <name>Label Orientation_2</name>
+        <y>756</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:${PROC}-StepAngle</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input_2</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>-cae44c:157dd221fed:-75d0</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>750</y>
+        <maximum>1.7976931348623157E308</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>-1.7976931348623157E308</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>4ad471b5:157e1276406:-740b</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>MRAD MAX</text>
+        <scripts />
+        <height>25</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>99</width>
+        <x>82</x>
+        <name>Label Orientation_1</name>
+        <y>624</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Disable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>false</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>true</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+          </rule>
+        </rules>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>true</show_units>
+        <height>31</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(PROC)-AngleMax-SP</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>4ad471b5:157e1276406:-740a</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>121</width>
+        <x>228</x>
+        <y>624</y>
+        <maximum>1.7976931348623157E308</maximum>
+        <foreground_color>
+          <color name="KeyboardEntry" red="0" green="255" blue="255" />
+        </foreground_color>
+        <minimum>-1.7976931348623157E308</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-20a75393:15809f6e4ee:-700a</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>CONFIGURATION</text>
+        <scripts />
+        <height>32</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>true</wrap_words>
+        <background_color>
+          <color name="SubPanel" red="176" green="218" blue="249" />
+        </background_color>
+        <width>349</width>
+        <x>30</x>
+        <name>Label_15</name>
+        <y>39</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <show_scrollbar>false</show_scrollbar>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.intensityGraph" version="1.0.0">
+        <vertial_profile_y_pv_value />
+        <y_axis_show_minor_ticks>true</y_axis_show_minor_ticks>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)</tooltip>
+        <x_axis_show_minor_ticks>true</x_axis_show_minor_ticks>
+        <roi_0_w_pv_value />
+        <roi_0_visible>true</roi_0_visible>
+        <horizon_profile_x_pv_name>$(PREFIX_SCAN):CALC-PROJ-Xabsc</horizon_profile_x_pv_name>
+        <height>798</height>
+        <border_width>1</border_width>
+        <graph_area_width>1290</graph_area_width>
+        <y_axis_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </y_axis_scale_font>
+        <roi_0_x_pv></roi_0_x_pv>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <x_axis_minimum>-200.0</x_axis_minimum>
+        <y_axis_maximum>80.0</y_axis_maximum>
+        <pixel_info_pv_value />
+        <x_axis_maximum>0.0</x_axis_maximum>
+        <vertial_profile_x_pv_value />
+        <roi_0_title>ROI 0</roi_0_title>
+        <actions hook="false" hook_all="false" />
+        <border_style>0</border_style>
+        <rgb_mode>false</rgb_mode>
+        <roi_1_title>ROI 1</roi_1_title>
+        <crop_left>0</crop_left>
+        <roi_1_y_pv_value />
+        <x_axis_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </x_axis_scale_font>
+        <data_width>0</data_width>
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-6ffb</wuid>
+        <roi_1_visible>true</roi_1_visible>
+        <y_axis_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </y_axis_title_font>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <graph_area_height>737</graph_area_height>
+        <x_axis_visible>true</x_axis_visible>
+        <roi_0_y_pv_value />
+        <roi_1_h_pv_value />
+        <vertical_profile_x_pv_name>$(PREFIX_SCAN):CALC-PROJ-Yabsc</vertical_profile_x_pv_name>
+        <pixel_info_pv_name></pixel_info_pv_name>
+        <roi_0_width_pv></roi_0_width_pv>
+        <x_axis_axis_color>
+          <color red="0" green="0" blue="0" />
+        </x_axis_axis_color>
+        <roi_0_h_pv_value />
+        <roi_1_x_pv></roi_1_x_pv>
+        <background_color>
+          <color red="240" green="240" blue="240" />
+        </background_color>
+        <x_axis_axis_title>mm</x_axis_axis_title>
+        <width>1405</width>
+        <x>660</x>
+        <y>100</y>
+        <maximum>5.0</maximum>
+        <data_height>0</data_height>
+        <minimum>-1.0</minimum>
+        <crop_right>0</crop_right>
+        <crop_top>0</crop_top>
+        <roi_color>
+          <color red="0" green="255" blue="255" />
+        </roi_color>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+        <roi_0_y_pv></roi_0_y_pv>
+        <rules>
+          <rule name="DataHeight" prop_id="data_height" out_exp="true">
+            <exp bool_exp="pv0&gt;0">
+              <value>pv0</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_PS).NPTS</pv>
+          </rule>
+          <rule name="DataWidth" prop_id="data_width" out_exp="true">
+            <exp bool_exp="pv0&gt;0">
+              <value>pv0</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).NPTS</pv>
+          </rule>
+          <rule name="XMax" prop_id="x_axis_maximum" out_exp="true">
+            <exp bool_exp="pv0!=0">
+              <value>pv0</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).P4EP</pv>
+          </rule>
+          <rule name="XMin" prop_id="x_axis_minimum" out_exp="true">
+            <exp bool_exp="pv0!=0">
+              <value>pv0</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).P4SP</pv>
+          </rule>
+          <rule name="YMax" prop_id="y_axis_maximum" out_exp="true">
+            <exp bool_exp="pv0!=0">
+              <value>pv0</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(PROC)-AngleMax-SP</pv>
+          </rule>
+          <rule name="YMin" prop_id="y_axis_minimum" out_exp="true">
+            <exp bool_exp="pv0!=0">
+              <value>pv0</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(PROC)-AngleMin-SP</pv>
+          </rule>
+        </rules>
+        <horizon_profile_y_pv_value />
+        <roi_1_x_pv_value />
+        <roi_count>2</roi_count>
+        <roi_1_y_pv></roi_1_y_pv>
+        <pv_value />
+        <color_map>
+          <interpolate>true</interpolate>
+          <autoscale>true</autoscale>
+          <map>2</map>
+        </color_map>
+        <show_ramp>true</show_ramp>
+        <y_axis_axis_title>mrad</y_axis_axis_title>
+        <horizon_profile_y_pv_name>$(PREFIX_SCAN):CALC-PROJ-Xwf</horizon_profile_y_pv_name>
+        <single_line_profiling>false</single_line_profiling>
+        <y_axis_minimum>-80.0</y_axis_minimum>
+        <visible>true</visible>
+        <roi_1_w_pv_value />
+        <vertical_profile_y_pv_name>$(PREFIX_SCAN):CALC-PROJ-Ywf</vertical_profile_y_pv_name>
+        <x_axis_major_tick_step_hint>50</x_axis_major_tick_step_hint>
+        <pv_name>$(PREFIX_SCAN):BUFF-CURRENT</pv_name>
+        <roi_0_height_pv></roi_0_height_pv>
+        <widget_type>Intensity Graph</widget_type>
+        <name>Intensity Graph</name>
+        <y_axis_axis_color>
+          <color red="0" green="0" blue="0" />
+        </y_axis_axis_color>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <roi_1_height_pv></roi_1_height_pv>
+        <roi_1_width_pv></roi_1_width_pv>
+        <y_axis_major_tick_step_hint>50</y_axis_major_tick_step_hint>
+        <scripts />
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <x_axis_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </x_axis_title_font>
+        <crop_bottom>0</crop_bottom>
+        <y_axis_visible>true</y_axis_visible>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <horizon_profile_x_pv_value />
+        <roi_0_x_pv_value />
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.tank" version="1.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <effect_3d>true</effect_3d>
+        <scale_font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </scale_font>
+        <pv_value />
+        <show_scale>true</show_scale>
+        <scale_format></scale_format>
+        <height>5</height>
+        <fill_color>
+          <color red="0" green="0" blue="255" />
+        </fill_color>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Tank</widget_type>
+        <name>Tank</name>
+        <show_hi>true</show_hi>
+        <actions hook="false" hook_all="false" />
+        <show_lo>true</show_lo>
+        <border_style>0</border_style>
+        <show_lolo>true</show_lolo>
+        <show_minor_ticks>true</show_minor_ticks>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <show_markers>true</show_markers>
+        <color_hihi>
+          <color red="255" green="0" blue="0" />
+        </color_hihi>
+        <show_hihi>true</show_hihi>
+        <log_scale>false</log_scale>
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-568c</wuid>
+        <level_hihi>90.0</level_hihi>
+        <color_hi>
+          <color red="255" green="128" blue="0" />
+        </color_hi>
+        <color_lo>
+          <color red="255" green="128" blue="0" />
+        </color_lo>
+        <scripts />
+        <border_alarm_sensitive>true</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <fillcolor_alarm_sensitive>false</fillcolor_alarm_sensitive>
+        <color_fillbackground>
+          <color red="192" green="192" blue="192" />
+        </color_fillbackground>
+        <major_tick_step_hint>50</major_tick_step_hint>
+        <level_hi>80.0</level_hi>
+        <transparent_background>true</transparent_background>
+        <level_lo>20.0</level_lo>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <limits_from_pv>true</limits_from_pv>
+        <background_color>
+          <color red="240" green="240" blue="240" />
+        </background_color>
+        <level_lolo>10.0</level_lolo>
+        <width>475</width>
+        <x>522</x>
+        <y>1008</y>
+        <maximum>100.0</maximum>
+        <color_lolo>
+          <color red="255" green="0" blue="0" />
+        </color_lolo>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <minimum>0.0</minimum>
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-4219</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>MEASURE</text>
+        <scripts />
+        <height>32</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>true</wrap_words>
+        <background_color>
+          <color name="SubPanel" red="176" green="218" blue="249" />
+        </background_color>
+        <width>1681</width>
+        <x>414</x>
+        <name>Label_15</name>
+        <y>39</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <show_scrollbar>false</show_scrollbar>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.RoundedRectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-3a8f</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <corner_height>16</corner_height>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1099</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <corner_width>16</corner_width>
+        <line_style>0</line_style>
+        <widget_type>Rounded Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color red="186" green="189" blue="182" />
+        </background_color>
+        <width>319</width>
+        <x>2136</x>
+        <name>Rounded Rectangle_5</name>
+        <y>18</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.tab" version="1.0.0">
+        <active_tab>0</active_tab>
+        <tooltip></tooltip>
+        <height>597</height>
+        <border_width>1</border_width>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <tab_0_foreground_color>
+          <color red="0" green="0" blue="0" />
+        </tab_0_foreground_color>
+        <actions hook="false" hook_all="false" />
+        <border_style>0</border_style>
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-3a8b</wuid>
+        <background_color>
+          <color red="186" green="189" blue="182" />
+        </background_color>
+        <width>319</width>
+        <x>2136</x>
+        <horizontal_tabs>true</horizontal_tabs>
+        <y>82</y>
+        <rules />
+        <macros>
+          <include_parent_macros>true</include_parent_macros>
+        </macros>
+        <visible>true</visible>
+        <tab_0_background_color>
+          <color red="186" green="189" blue="182" />
+        </tab_0_background_color>
+        <widget_type>Tabbed Container</widget_type>
+        <name>Tabbed Container</name>
+        <minimum_tab_height>10</minimum_tab_height>
+        <tab_0_font>
+          <opifont.name fontName="OpenSans" height="10" style="1">Small Bold</opifont.name>
+        </tab_0_font>
+        <tab_0_title>SCANNING</tab_0_title>
+        <scripts />
+        <tab_count>1</tab_count>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <tab_0_icon_path></tab_0_icon_path>
+        <tab_0_enabled>true</tab_0_enabled>
+        <foreground_color>
+          <color red="192" green="192" blue="192" />
+        </foreground_color>
+        <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+          <border_style>0</border_style>
+          <tooltip></tooltip>
+          <rules />
+          <enabled>true</enabled>
+          <wuid>-16429ab9:1582e68df9a:-3a8a</wuid>
+          <transparent>true</transparent>
+          <lock_children>false</lock_children>
+          <scripts />
+          <height>565</height>
+          <border_width>1</border_width>
+          <scale_options>
+            <width_scalable>true</width_scalable>
+            <height_scalable>true</height_scalable>
+            <keep_wh_ratio>false</keep_wh_ratio>
+          </scale_options>
+          <macros>
+            <include_parent_macros>true</include_parent_macros>
+          </macros>
+          <visible>true</visible>
+          <border_color>
+            <color red="0" green="128" blue="255" />
+          </border_color>
+          <widget_type>Grouping Container</widget_type>
+          <background_color>
+            <color red="240" green="240" blue="240" />
+          </background_color>
+          <width>317</width>
+          <x>1</x>
+          <name>SCANNING</name>
+          <y>1</y>
+          <foreground_color>
+            <color red="192" green="192" blue="192" />
+          </foreground_color>
+          <actions hook="false" hook_all="false" />
+          <fc>false</fc>
+          <show_scrollbar>true</show_scrollbar>
+          <font>
+            <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+          </font>
+          <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <line_width>0</line_width>
+            <horizontal_fill>true</horizontal_fill>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-460a3b47:15868b634f9:-7035</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <alpha>255</alpha>
+            <bg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </bg_gradient_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>325</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <gradient>false</gradient>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <anti_alias>true</anti_alias>
+            <line_style>0</line_style>
+            <widget_type>Rectangle</widget_type>
+            <fg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </fg_gradient_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color red="136" green="138" blue="133" />
+            </background_color>
+            <width>295</width>
+            <x>12</x>
+            <name>Rectangle_1</name>
+            <y>228</y>
+            <fill_level>0.0</fill_level>
+            <foreground_color>
+              <color red="255" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <line_color>
+              <color red="128" green="0" blue="255" />
+            </line_color>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <line_width>0</line_width>
+            <horizontal_fill>true</horizontal_fill>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-460a3b47:15868b634f9:-7106</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <alpha>255</alpha>
+            <bg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </bg_gradient_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>193</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <gradient>false</gradient>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <anti_alias>true</anti_alias>
+            <line_style>0</line_style>
+            <widget_type>Rectangle</widget_type>
+            <fg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </fg_gradient_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color red="136" green="138" blue="133" />
+            </background_color>
+            <width>295</width>
+            <x>12</x>
+            <name>Rectangle_1</name>
+            <y>18</y>
+            <fill_level>0.0</fill_level>
+            <foreground_color>
+              <color red="255" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <line_color>
+              <color red="128" green="0" blue="255" />
+            </line_color>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>4ad471b5:157e1276406:-781e</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>PS Horizontal</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>125</width>
+            <x>38</x>
+            <name>Label Orientation_7</name>
+            <y>36</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_PS)hor-SP</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>4ad471b5:157e1276406:-781d</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>186</x>
+            <y>30</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>4ad471b5:157e1276406:-780f</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>PS Vertical</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>127</width>
+            <x>30</x>
+            <name>Label Orientation_7</name>
+            <y>84</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_PS)ver-SP</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>4ad471b5:157e1276406:-780e</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>186</x>
+            <y>78</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>79429b6c:157dd491a6d:-7dd7</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Angle STEP ...</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>151</width>
+            <x>25</x>
+            <name>Label Orientation_7</name>
+            <y>132</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>${PREFIX_SCAN}:$(NAME_PS)-NORD_POS</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>79429b6c:157dd491a6d:-7dd6</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>186</x>
+            <y>126</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>0</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>${PREFIX_SCAN}:$(NAME_MTR)-NORD_POS</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>true</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_3</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>-16429ab9:1582e68df9a:-6dec</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>186</x>
+            <y>240</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <fontdata fontName="Sans" height="10" style="1" />
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>-16429ab9:1582e68df9a:-3c09</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Pos STEP ...</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>172</width>
+            <x>15</x>
+            <name>Label Orientation_1</name>
+            <y>246</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.bytemonitor" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-422a</wuid>
+            <on_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </on_color>
+            <horizontal>false</horizontal>
+            <pv_value />
+            <numBits>1</numBits>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>28</height>
+            <border_width>0</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).MSTA</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <bitReverse>true</bitReverse>
+            <label />
+            <widget_type>Byte Monitor</widget_type>
+            <off_color>
+              <color name="IO Grid" red="215" green="215" blue="215" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <square_led>true</square_led>
+            <startBit>13</startBit>
+            <width>70</width>
+            <x>201</x>
+            <name>Byte Monitor Template</name>
+            <y>438</y>
+            <foreground_color>
+              <color name="IO InputPV Fg" red="0" green="32" blue="92" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-3dc7</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>LOW Limit </text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>83</width>
+            <x>52</x>
+            <name>Label_164</name>
+            <y>442</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-38d5</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>HIGH Limit </text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>93</width>
+            <x>52</x>
+            <name>Label_164</name>
+            <y>478</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.bytemonitor" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-38d6</wuid>
+            <on_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </on_color>
+            <horizontal>false</horizontal>
+            <pv_value />
+            <numBits>1</numBits>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>28</height>
+            <border_width>0</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).MSTA</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <bitReverse>true</bitReverse>
+            <label />
+            <widget_type>Byte Monitor</widget_type>
+            <off_color>
+              <color name="IO Grid" red="215" green="215" blue="215" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <square_led>true</square_led>
+            <startBit>2</startBit>
+            <width>70</width>
+            <x>201</x>
+            <name>Byte Monitor Template</name>
+            <y>474</y>
+            <foreground_color>
+              <color name="IO InputPV Fg" red="0" green="32" blue="92" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.bytemonitor" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-38ce</wuid>
+            <on_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </on_color>
+            <horizontal>false</horizontal>
+            <pv_value />
+            <numBits>1</numBits>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>28</height>
+            <border_width>0</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).MOVN</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <bitReverse>true</bitReverse>
+            <label />
+            <widget_type>Byte Monitor</widget_type>
+            <off_color>
+              <color name="IO Grid" red="215" green="215" blue="215" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <square_led>true</square_led>
+            <startBit>0</startBit>
+            <width>70</width>
+            <x>201</x>
+            <name>Byte Monitor Template</name>
+            <y>330</y>
+            <foreground_color>
+              <color name="IO InputPV Fg" red="0" green="32" blue="92" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-38cd</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Motor is moving ...</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>151</width>
+            <x>25</x>
+            <name>Label_164</name>
+            <y>334</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text></text>
+            <rotation_angle>0.0</rotation_angle>
+            <show_units>true</show_units>
+            <height>31</height>
+            <multiline_input>false</multiline_input>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).RBV</pv_name>
+            <selector_type>0</selector_type>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Input</widget_type>
+            <confirm_message></confirm_message>
+            <name>Text Input_3</name>
+            <style>0</style>
+            <actions hook="false" hook_all="false" />
+            <border_style>3</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-356b</wuid>
+            <transparent>false</transparent>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <format_type>0</format_type>
+            <limits_from_pv>false</limits_from_pv>
+            <background_color>
+              <color name="TextBackground" red="70" green="70" blue="70" />
+            </background_color>
+            <width>100</width>
+            <x>186</x>
+            <y>288</y>
+            <maximum>1.7976931348623157E308</maximum>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <minimum>-1.7976931348623157E308</minimum>
+            <font>
+              <fontdata fontName="Sans" height="10" style="1" />
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>false</enabled>
+            <wuid>59fc39f9:158487e5950:-356a</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Position in course</text>
+            <scripts />
+            <height>20</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <width>166</width>
+            <x>12</x>
+            <name>Label Orientation_1</name>
+            <y>294</y>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.bytemonitor" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-33a7</wuid>
+            <on_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </on_color>
+            <horizontal>false</horizontal>
+            <pv_value />
+            <numBits>1</numBits>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>28</height>
+            <border_width>0</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).MSTA</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <bitReverse>true</bitReverse>
+            <label />
+            <widget_type>Byte Monitor</widget_type>
+            <off_color>
+              <color name="IO Grid" red="215" green="215" blue="215" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <square_led>true</square_led>
+            <startBit>1</startBit>
+            <width>70</width>
+            <x>201</x>
+            <name>Byte Monitor Template</name>
+            <y>366</y>
+            <foreground_color>
+              <color name="IO InputPV Fg" red="0" green="32" blue="92" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-33a6</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Motor is placed</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>125</width>
+            <x>38</x>
+            <name>Label_164</name>
+            <y>370</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-26fe</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>HV is ramping ...</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>196</width>
+            <x>6</x>
+            <name>Label_164</name>
+            <y>178</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.bytemonitor" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-26ff</wuid>
+            <on_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </on_color>
+            <horizontal>false</horizontal>
+            <pv_value />
+            <numBits>1</numBits>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>28</height>
+            <border_width>0</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>${PREFIX_SCAN}:$(NAME_PS).BUSY</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <bitReverse>true</bitReverse>
+            <label />
+            <widget_type>Byte Monitor</widget_type>
+            <off_color>
+              <color name="IO Grid" red="215" green="215" blue="215" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <square_led>true</square_led>
+            <startBit>0</startBit>
+            <width>70</width>
+            <x>201</x>
+            <name>Byte Monitor Template</name>
+            <y>174</y>
+            <foreground_color>
+              <color name="IO InputPV Fg" red="0" green="32" blue="92" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <line_width>4</line_width>
+            <horizontal_fill>true</horizontal_fill>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules>
+              <rule name="Visible" prop_id="visible" out_exp="false">
+                <exp bool_exp="pv0==1">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==0">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_PS).BUSY</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-2314</wuid>
+            <transparent>true</transparent>
+            <pv_value />
+            <alpha>255</alpha>
+            <bg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </bg_gradient_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>193</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>${PREFIX_SCAN}:$(NAME_PS).BUSY</pv_name>
+            <gradient>false</gradient>
+            <border_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </border_color>
+            <anti_alias>true</anti_alias>
+            <line_style>0</line_style>
+            <widget_type>Rectangle</widget_type>
+            <fg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </fg_gradient_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </background_color>
+            <width>295</width>
+            <x>12</x>
+            <name>Rectangle</name>
+            <y>18</y>
+            <fill_level>0.0</fill_level>
+            <foreground_color>
+              <color red="255" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <line_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </line_color>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-460a3b47:15868b634f9:-6f5c</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Motor is Homed</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>125</width>
+            <x>38</x>
+            <name>Label_164</name>
+            <y>406</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.bytemonitor" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <enabled>true</enabled>
+            <wuid>-460a3b47:15868b634f9:-6f52</wuid>
+            <on_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </on_color>
+            <horizontal>false</horizontal>
+            <pv_value />
+            <numBits>1</numBits>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>28</height>
+            <border_width>0</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).MSTA</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <bitReverse>true</bitReverse>
+            <label />
+            <widget_type>Byte Monitor</widget_type>
+            <off_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <square_led>true</square_led>
+            <startBit>14</startBit>
+            <width>70</width>
+            <x>201</x>
+            <name>Byte Monitor Template</name>
+            <y>402</y>
+            <foreground_color>
+              <color name="IO InputPV Fg" red="0" green="32" blue="92" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <line_width>4</line_width>
+            <horizontal_fill>true</horizontal_fill>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules>
+              <rule name="Visible" prop_id="visible" out_exp="false">
+                <exp bool_exp="pv0==1">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==0">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">$(PREFIX_MTR):$(PMAC_MTR).MOVN</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>59fc39f9:158487e5950:-2172</wuid>
+            <transparent>true</transparent>
+            <pv_value />
+            <alpha>255</alpha>
+            <bg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </bg_gradient_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>325</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>$(PREFIX_MTR):$(PMAC_MTR).MOVN</pv_name>
+            <gradient>false</gradient>
+            <border_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </border_color>
+            <anti_alias>true</anti_alias>
+            <line_style>0</line_style>
+            <widget_type>Rectangle</widget_type>
+            <fg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </fg_gradient_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </background_color>
+            <width>295</width>
+            <x>12</x>
+            <name>Rectangle_1</name>
+            <y>228</y>
+            <fill_level>0.0</fill_level>
+            <foreground_color>
+              <color red="255" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <line_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </line_color>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>-1168daa3:158859bc9c3:-6028</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Brake ON</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>83</width>
+            <x>52</x>
+            <name>Label_164</name>
+            <y>514</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.bytemonitor" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-79b8</wuid>
+            <on_color>
+              <color name="Field Background Grey" red="240" green="240" blue="240" />
+            </on_color>
+            <horizontal>false</horizontal>
+            <pv_value />
+            <numBits>1</numBits>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <height>28</height>
+            <border_width>0</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>LNS-ISRC-010:PBI-EM:VER-BRAKE_GET</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <bitReverse>true</bitReverse>
+            <label />
+            <widget_type>Byte Monitor</widget_type>
+            <off_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Background" red="255" green="255" blue="205" />
+            </background_color>
+            <square_led>true</square_led>
+            <startBit>0</startBit>
+            <width>70</width>
+            <x>201</x>
+            <name>Byte Monitor Template</name>
+            <y>510</y>
+            <foreground_color>
+              <color name="IO InputPV Fg" red="0" green="32" blue="92" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+            </font>
+          </widget>
+        </widget>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-3a7c</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>STATUS</text>
+        <scripts />
+        <height>32</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>true</wrap_words>
+        <background_color>
+          <color name="SubPanel" red="176" green="218" blue="249" />
+        </background_color>
+        <width>319</width>
+        <x>2136</x>
+        <name>Label_15</name>
+        <y>39</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <show_scrollbar>false</show_scrollbar>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.polyline" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>5</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <arrows>0</arrows>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-16429ab9:1582e68df9a:-363a</wuid>
+        <transparent>false</transparent>
+        <points>
+          <point x="29" y="1038" />
+          <point x="377" y="1038" />
+          <point x="377" y="1038" />
+          <point x="377" y="1038" />
+          <point x="377" y="1038" />
+        </points>
+        <fill_arrow>true</fill_arrow>
+        <pv_value />
+        <alpha>255</alpha>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>0</line_style>
+        <arrow_length>20</arrow_length>
+        <widget_type>Polyline</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </background_color>
+        <width>349</width>
+        <x>29</x>
+        <name>Polyline</name>
+        <y>1038</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>2</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text></text>
+        <rotation_angle>0.0</rotation_angle>
+        <show_units>false</show_units>
+        <height>22</height>
+        <multiline_input>false</multiline_input>
+        <border_width>1</border_width>
+        <visible>true</visible>
+        <pv_name>$(PREFIX_MTR):$(PMAC_MTR).RBV</pv_name>
+        <selector_type>0</selector_type>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Input</widget_type>
+        <confirm_message></confirm_message>
+        <name>Text Input_9</name>
+        <style>0</style>
+        <actions hook="false" hook_all="false" />
+        <border_style>3</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <enabled>true</enabled>
+        <wuid>-16429ab9:158444d4181:-628c</wuid>
+        <transparent>false</transparent>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <format_type>0</format_type>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>100</width>
+        <x>1205</x>
+        <y>876</y>
+        <maximum>1.7976931348623157E308</maximum>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <minimum>-1.7976931348623157E308</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Visible" prop_id="visible" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>true</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>false</value>
+            </exp>
+            <pv trig="true">$(PREFIX_MTR):$(PMAC_MTR).MOVN</pv>
+          </rule>
+        </rules>
+        <enabled>false</enabled>
+        <wuid>59fc39f9:158487e5950:-4c5d</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>MOTOR IS MOVING ...</text>
+        <scripts />
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>181</width>
+        <x>1020</x>
+        <name>Label</name>
+        <y>877</y>
+        <foreground_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.xyGraph" version="1.0.0">
+        <axis_1_scale_format></axis_1_scale_format>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(trace_0_y_pv)
+$(trace_0_y_pv_value)</tooltip>
+        <trace_0_concatenate_data>false</trace_0_concatenate_data>
+        <trace_0_trace_type>0</trace_0_trace_type>
+        <border_width>1</border_width>
+        <border_style>0</border_style>
+        <axis_0_grid_color>
+          <color red="200" green="200" blue="200" />
+        </axis_0_grid_color>
+        <trace_0_name>$(trace_0_y_pv)</trace_0_name>
+        <trace_0_update_mode>0</trace_0_update_mode>
+        <wuid>-1168daa3:158859bc9c3:6e0</wuid>
+        <transparent>false</transparent>
+        <axis_0_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </axis_0_title_font>
+        <background_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </background_color>
+        <x>639</x>
+        <y>912</y>
+        <trace_0_x_axis_index>0</trace_0_x_axis_index>
+        <axis_count>2</axis_count>
+        <pv_value />
+        <trace_0_buffer_size>100</trace_0_buffer_size>
+        <axis_1_maximum>1.0</axis_1_maximum>
+        <axis_0_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_0_scale_font>
+        <trigger_pv></trigger_pv>
+        <widget_type>XY Graph</widget_type>
+        <axis_1_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_1_axis_color>
+        <axis_0_scale_format></axis_0_scale_format>
+        <axis_1_log_scale>false</axis_1_log_scale>
+        <title></title>
+        <trace_0_visible>true</trace_0_visible>
+        <show_legend>false</show_legend>
+        <axis_0_axis_title>mm</axis_0_axis_title>
+        <axis_0_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_0_axis_color>
+        <axis_0_dash_grid_line>true</axis_0_dash_grid_line>
+        <trace_0_point_style>0</trace_0_point_style>
+        <trace_0_line_width>1</trace_0_line_width>
+        <axis_0_time_format>0</axis_0_time_format>
+        <trace_count>1</trace_count>
+        <axis_1_show_grid>true</axis_1_show_grid>
+        <axis_1_dash_grid_line>true</axis_1_dash_grid_line>
+        <show_toolbar>false</show_toolbar>
+        <axis_0_visible>true</axis_0_visible>
+        <axis_0_show_grid>true</axis_0_show_grid>
+        <trace_0_y_axis_index>1</trace_0_y_axis_index>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <axis_0_maximum>1.0</axis_0_maximum>
+        <height>181</height>
+        <trigger_pv_value />
+        <axis_1_grid_color>
+          <color red="200" green="200" blue="200" />
+        </axis_1_grid_color>
+        <actions hook="false" hook_all="false" />
+        <axis_0_log_scale>false</axis_0_log_scale>
+        <trace_0_x_pv_value />
+        <axis_0_auto_scale_threshold>0.0</axis_0_auto_scale_threshold>
+        <rules />
+        <axis_1_visible>true</axis_1_visible>
+        <trace_0_update_delay>1</trace_0_update_delay>
+        <pv_name>$(PREFIX_SCAN):$(CALC)-PROJ-Xwf</pv_name>
+        <name>XY Graph</name>
+        <axis_0_auto_scale>true</axis_0_auto_scale>
+        <axis_0_minimum>-100.0</axis_0_minimum>
+        <axis_1_axis_title></axis_1_axis_title>
+        <axis_1_auto_scale>true</axis_1_auto_scale>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <trace_0_y_pv>$(PREFIX_SCAN):$(CALC)-PROJ-Xwf</trace_0_y_pv>
+        <trace_0_plot_mode>0</trace_0_plot_mode>
+        <enabled>true</enabled>
+        <trace_0_x_pv>$(PREFIX_SCAN):$(CALC)-PROJ-Xabsc</trace_0_x_pv>
+        <axis_1_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_1_scale_font>
+        <axis_1_time_format>0</axis_1_time_format>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_plot_area_border>true</show_plot_area_border>
+        <width>1384</width>
+        <axis_1_minimum>-1.0</axis_1_minimum>
+        <title_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </title_font>
+        <trace_0_y_pv_value />
+        <plot_area_background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </plot_area_background_color>
+        <axis_1_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </axis_1_title_font>
+        <visible>true</visible>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <scripts />
+        <trace_0_point_size>4</trace_0_point_size>
+        <trace_0_trace_color>
+          <color red="21" green="21" blue="196" />
+        </trace_0_trace_color>
+        <trace_0_anti_alias>true</trace_0_anti_alias>
+        <axis_1_auto_scale_threshold>0.1</axis_1_auto_scale_threshold>
+        <foreground_color>
+          <color red="0" green="0" blue="255" />
+        </foreground_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.xyGraph" version="1.0.0">
+        <axis_1_scale_format></axis_1_scale_format>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(trace_0_y_pv)
+$(trace_0_y_pv_value)</tooltip>
+        <trace_0_concatenate_data>false</trace_0_concatenate_data>
+        <trace_0_trace_type>0</trace_0_trace_type>
+        <border_width>1</border_width>
+        <border_style>0</border_style>
+        <axis_0_grid_color>
+          <color red="200" green="200" blue="200" />
+        </axis_0_grid_color>
+        <trace_0_name>$(trace_0_y_pv)</trace_0_name>
+        <trace_0_update_mode>0</trace_0_update_mode>
+        <wuid>-1168daa3:158859bc9c3:50e</wuid>
+        <transparent>false</transparent>
+        <axis_0_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </axis_0_title_font>
+        <background_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </background_color>
+        <x>432</x>
+        <y>100</y>
+        <trace_0_x_axis_index>0</trace_0_x_axis_index>
+        <axis_count>2</axis_count>
+        <pv_value />
+        <trace_0_buffer_size>500</trace_0_buffer_size>
+        <axis_1_maximum>100.0</axis_1_maximum>
+        <axis_0_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_0_scale_font>
+        <trigger_pv></trigger_pv>
+        <widget_type>XY Graph</widget_type>
+        <axis_1_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_1_axis_color>
+        <axis_0_scale_format></axis_0_scale_format>
+        <axis_1_log_scale>false</axis_1_log_scale>
+        <title></title>
+        <trace_0_visible>true</trace_0_visible>
+        <show_legend>false</show_legend>
+        <axis_0_axis_title></axis_0_axis_title>
+        <axis_0_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_0_axis_color>
+        <axis_0_dash_grid_line>true</axis_0_dash_grid_line>
+        <trace_0_point_style>0</trace_0_point_style>
+        <trace_0_line_width>1</trace_0_line_width>
+        <axis_0_time_format>0</axis_0_time_format>
+        <trace_count>1</trace_count>
+        <axis_1_show_grid>true</axis_1_show_grid>
+        <axis_1_dash_grid_line>true</axis_1_dash_grid_line>
+        <show_toolbar>false</show_toolbar>
+        <axis_0_visible>true</axis_0_visible>
+        <axis_0_show_grid>true</axis_0_show_grid>
+        <trace_0_y_axis_index>1</trace_0_y_axis_index>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <axis_0_maximum>100.0</axis_0_maximum>
+        <height>795</height>
+        <trigger_pv_value />
+        <axis_1_grid_color>
+          <color red="200" green="200" blue="200" />
+        </axis_1_grid_color>
+        <actions hook="false" hook_all="false" />
+        <axis_0_log_scale>false</axis_0_log_scale>
+        <trace_0_x_pv_value />
+        <axis_0_auto_scale_threshold>0.1</axis_0_auto_scale_threshold>
+        <rules />
+        <axis_1_visible>true</axis_1_visible>
+        <trace_0_update_delay>10</trace_0_update_delay>
+        <pv_name></pv_name>
+        <name>XY Graph</name>
+        <axis_0_auto_scale>true</axis_0_auto_scale>
+        <axis_0_minimum>-100.0</axis_0_minimum>
+        <axis_1_axis_title>mrad</axis_1_axis_title>
+        <axis_1_auto_scale>true</axis_1_auto_scale>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <trace_0_y_pv>$(PREFIX_SCAN):$(CALC)-PROJ-Yabsc</trace_0_y_pv>
+        <trace_0_plot_mode>0</trace_0_plot_mode>
+        <enabled>true</enabled>
+        <trace_0_x_pv>$(PREFIX_SCAN):$(CALC)-PROJ-Ywf</trace_0_x_pv>
+        <axis_1_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_1_scale_font>
+        <axis_1_time_format>0</axis_1_time_format>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_plot_area_border>true</show_plot_area_border>
+        <width>217</width>
+        <axis_1_minimum>-100.0</axis_1_minimum>
+        <title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </title_font>
+        <trace_0_y_pv_value />
+        <plot_area_background_color>
+          <color red="255" green="255" blue="255" />
+        </plot_area_background_color>
+        <axis_1_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </axis_1_title_font>
+        <visible>true</visible>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <scripts />
+        <trace_0_point_size>4</trace_0_point_size>
+        <trace_0_trace_color>
+          <color red="21" green="21" blue="196" />
+        </trace_0_trace_color>
+        <trace_0_anti_alias>false</trace_0_anti_alias>
+        <axis_1_auto_scale_threshold>0.0</axis_1_auto_scale_threshold>
+        <foreground_color>
+          <color red="0" green="0" blue="255" />
+        </foreground_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>-47901338:158955bc5eb:-3243</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>X Mean</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>121</width>
+        <x>420</x>
+        <name>Label Orientation_2</name>
+        <y>912</y>
+        <foreground_color>
+          <color name="White" red="255" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>-47901338:158955bc5eb:-3235</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>X' Mean</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>121</width>
+        <x>420</x>
+        <name>Label Orientation_2</name>
+        <y>942</y>
+        <foreground_color>
+          <color name="White" red="255" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>0</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-47901338:158955bc5eb:-31f2</wuid>
+        <transparent>true</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(CALC)-PROJ-Y</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>100</width>
+        <x>540</x>
+        <name>Text Update</name>
+        <y>942</y>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>4b16a64d:158af4f8f37:-7b9f</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Tension MRAD MAX</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>168</width>
+        <x>36</x>
+        <name>Label Orientation_3</name>
+        <y>857</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>4b16a64d:158af4f8f37:-7b9e</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>true</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>31</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(PROC)-VoltMaxP1</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="70" green="70" blue="70" />
+        </background_color>
+        <width>160</width>
+        <x>209</x>
+        <name>Text Update</name>
+        <y>851</y>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>4b16a64d:158af4f8f37:-7b9d</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>true</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>31</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(PROC)-VoltMinP1</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="70" green="70" blue="70" />
+        </background_color>
+        <width>160</width>
+        <x>209</x>
+        <name>Text Update_1</name>
+        <y>893</y>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>4b16a64d:158af4f8f37:-7ae3</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Tension MRAD MIN</text>
+        <scripts />
+        <height>25</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>168</width>
+        <x>36</x>
+        <name>Label Orientation_3</name>
+        <y>899</y>
+        <foreground_color>
+          <color name="IO Foreground" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>0</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>82148ce:158b4de09bc:-7db2</wuid>
+        <transparent>true</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(CALC)-RMS-SIZE</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>100</width>
+        <x>540</x>
+        <name>Text Update</name>
+        <y>978</y>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>82148ce:158b4de09bc:-7db1</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>SIGMA X</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>121</width>
+        <x>420</x>
+        <name>Label Orientation_2</name>
+        <y>978</y>
+        <foreground_color>
+          <color name="White" red="255" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>82148ce:158b4de09bc:-7db0</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>SIGMA X'</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>121</width>
+        <x>420</x>
+        <name>Label Orientation_3</name>
+        <y>1012</y>
+        <foreground_color>
+          <color name="White" red="255" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>0</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>82148ce:158b4de09bc:-7daf</wuid>
+        <transparent>true</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(CALC)-RMS-ANGLE</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>100</width>
+        <x>540</x>
+        <name>Text Update_1</name>
+        <y>1012</y>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>false</enabled>
+        <wuid>-254931a3:158b5a49183:-7dd1</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>SIGMA XX'</text>
+        <scripts />
+        <height>20</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color name="IO Background" red="255" green="255" blue="205" />
+        </background_color>
+        <width>121</width>
+        <x>420</x>
+        <name>Label Orientation_3</name>
+        <y>1047</y>
+        <foreground_color>
+          <color name="White" red="255" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>0</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-254931a3:158b5a49183:-7dd0</wuid>
+        <transparent>true</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>${PREFIX_SCAN}:$(CALC)-SIGMA</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>100</width>
+        <x>540</x>
+        <name>Text Update_1</name>
+        <y>1047</y>
+        <foreground_color>
+          <color name="Green On" red="0" green="255" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.tab" version="1.0.0">
+        <active_tab>0</active_tab>
+        <tooltip></tooltip>
+        <height>354</height>
+        <border_width>1</border_width>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <tab_0_foreground_color>
+          <color red="0" green="0" blue="0" />
+        </tab_0_foreground_color>
+        <actions hook="false" hook_all="false" />
+        <border_style>0</border_style>
+        <enabled>true</enabled>
+        <wuid>60f6e55b:158baae9c78:-7f2b</wuid>
+        <background_color>
+          <color red="240" green="240" blue="240" />
+        </background_color>
+        <width>319</width>
+        <x>2136</x>
+        <horizontal_tabs>true</horizontal_tabs>
+        <y>678</y>
+        <rules />
+        <macros>
+          <include_parent_macros>true</include_parent_macros>
+        </macros>
+        <visible>true</visible>
+        <tab_0_background_color>
+          <color red="183" green="189" blue="182" />
+        </tab_0_background_color>
+        <widget_type>Tabbed Container</widget_type>
+        <name>Tabbed Container_2</name>
+        <minimum_tab_height>10</minimum_tab_height>
+        <tab_0_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </tab_0_font>
+        <tab_0_title>PLC-STATUS</tab_0_title>
+        <scripts />
+        <tab_count>1</tab_count>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <tab_0_icon_path></tab_0_icon_path>
+        <tab_0_enabled>true</tab_0_enabled>
+        <foreground_color>
+          <color red="192" green="192" blue="192" />
+        </foreground_color>
+        <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+          <border_style>0</border_style>
+          <tooltip></tooltip>
+          <rules />
+          <enabled>true</enabled>
+          <wuid>60f6e55b:158baae9c78:-7f2a</wuid>
+          <transparent>true</transparent>
+          <lock_children>false</lock_children>
+          <scripts />
+          <height>318</height>
+          <border_width>1</border_width>
+          <scale_options>
+            <width_scalable>true</width_scalable>
+            <height_scalable>true</height_scalable>
+            <keep_wh_ratio>false</keep_wh_ratio>
+          </scale_options>
+          <macros>
+            <include_parent_macros>true</include_parent_macros>
+          </macros>
+          <visible>true</visible>
+          <border_color>
+            <color red="0" green="128" blue="255" />
+          </border_color>
+          <widget_type>Grouping Container</widget_type>
+          <background_color>
+            <color red="240" green="240" blue="240" />
+          </background_color>
+          <width>317</width>
+          <x>1</x>
+          <name>PLC-STATUS</name>
+          <y>1</y>
+          <foreground_color>
+            <color red="192" green="192" blue="192" />
+          </foreground_color>
+          <actions hook="false" hook_all="false" />
+          <fc>false</fc>
+          <show_scrollbar>true</show_scrollbar>
+          <font>
+            <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+          </font>
+          <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <line_width>0</line_width>
+            <horizontal_fill>true</horizontal_fill>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f15</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <alpha>255</alpha>
+            <bg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </bg_gradient_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>301</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <gradient>false</gradient>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <anti_alias>true</anti_alias>
+            <line_style>0</line_style>
+            <widget_type>Rectangle</widget_type>
+            <fg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </fg_gradient_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color red="136" green="138" blue="133" />
+            </background_color>
+            <width>295</width>
+            <x>12</x>
+            <name>Rectangle</name>
+            <y>6</y>
+            <fill_level>0.0</fill_level>
+            <foreground_color>
+              <color red="255" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <line_color>
+              <color red="128" green="0" blue="255" />
+            </line_color>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f14</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Temp BEAM Stop</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>134</width>
+            <x>28</x>
+            <name>Label_164</name>
+            <y>30</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f13</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text>######</text>
+            <rotation_angle>0.0</rotation_angle>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <show_units>true</show_units>
+            <height>31</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>INFN-SRC:INTK-VBS:TEMP</pv_name>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Update</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <wrap_words>false</wrap_words>
+            <format_type>0</format_type>
+            <background_color>
+              <color red="70" green="70" blue="70" />
+            </background_color>
+            <width>112</width>
+            <x>174</x>
+            <name>Text Update</name>
+            <y>24</y>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f12</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text>######</text>
+            <rotation_angle>0.0</rotation_angle>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <show_units>true</show_units>
+            <height>31</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name>INFN-SRC:INTK-VS:TEMP</pv_name>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Update</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <wrap_words>false</wrap_words>
+            <format_type>0</format_type>
+            <background_color>
+              <color red="70" green="70" blue="70" />
+            </background_color>
+            <width>112</width>
+            <x>174</x>
+            <name>Text Update_1</name>
+            <y>66</y>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+            <toggle_button>false</toggle_button>
+            <border_style>6</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <push_action_index>0</push_action_index>
+            <rules>
+              <rule name="Enable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0 &gt;= 200">
+                  <value>false</value>
+                </exp>
+                <exp bool_exp="pv0&lt;=200">
+                  <value>true</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).P4SI</pv>
+              </rule>
+            </rules>
+            <enabled>false</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f11</wuid>
+            <pv_value />
+            <text>HORIZONTAL</text>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>55</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <image></image>
+            <visible>true</visible>
+            <pv_name>INFN-SRC:INTK-HMI:VH_SELECT</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Action Button</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Button" red="178" green="178" blue="178" />
+            </background_color>
+            <width>133</width>
+            <x>46</x>
+            <name>Start Scan</name>
+            <y>126</y>
+            <style>0</style>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false">
+              <action type="WRITE_PV">
+                <pv_name>INFN-SRC:INTK-HMI:VH_SELECT</pv_name>
+                <value>1</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description>Select HORIZONTAL</description>
+              </action>
+            </actions>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.LED" version="1.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <bit>-1</bit>
+            <pv_value />
+            <height>23</height>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>INFN-SRC:INTK-HMI:VH_SELECT</pv_name>
+            <border_color>
+              <color name="Blue" red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>LED</widget_type>
+            <name>LED</name>
+            <actions hook="false" hook_all="false" />
+            <show_boolean_label>false</show_boolean_label>
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f10</wuid>
+            <on_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </on_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <on_label>ON</on_label>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>true</keep_wh_ratio>
+            </scale_options>
+            <off_color>
+              <color name="Field Background Grey" red="240" green="240" blue="240" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Field Background Grey" red="240" green="240" blue="240" />
+            </background_color>
+            <square_led>false</square_led>
+            <width>23</width>
+            <x>234</x>
+            <data_type>0</data_type>
+            <y>142</y>
+            <foreground_color>
+              <color name="Button Grey" red="180" green="180" blue="180" />
+            </foreground_color>
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <off_label>OFF</off_label>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.LED" version="1.0.0">
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)</tooltip>
+            <rules />
+            <effect_3d>true</effect_3d>
+            <bit>-1</bit>
+            <pv_value />
+            <height>23</height>
+            <border_width>1</border_width>
+            <visible>true</visible>
+            <pv_name>INFN-SRC:INTK-HMI:VH_SELECT</pv_name>
+            <border_color>
+              <color name="Blue" red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>LED</widget_type>
+            <name>LED_1</name>
+            <actions hook="false" hook_all="false" />
+            <show_boolean_label>false</show_boolean_label>
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f0f</wuid>
+            <on_color>
+              <color name="Field Background Grey" red="240" green="240" blue="240" />
+            </on_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <on_label>ON</on_label>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>true</keep_wh_ratio>
+            </scale_options>
+            <off_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </off_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Field Background Grey" red="240" green="240" blue="240" />
+            </background_color>
+            <square_led>false</square_led>
+            <width>23</width>
+            <x>234</x>
+            <data_type>0</data_type>
+            <y>208</y>
+            <foreground_color>
+              <color name="Button Grey" red="180" green="180" blue="180" />
+            </foreground_color>
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <off_label>OFF</off_label>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+            <toggle_button>false</toggle_button>
+            <border_style>6</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <push_action_index>0</push_action_index>
+            <rules>
+              <rule name="Enable" prop_id="enabled" out_exp="false">
+                <exp bool_exp="pv0 &gt;= 200">
+                  <value>false</value>
+                </exp>
+                <exp bool_exp="pv0&lt;=200">
+                  <value>true</value>
+                </exp>
+                <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).P4SI</pv>
+              </rule>
+            </rules>
+            <enabled>false</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f0e</wuid>
+            <pv_value />
+            <text>VERTICAL</text>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>55</height>
+            <border_width>2</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <image></image>
+            <visible>true</visible>
+            <pv_name>INFN-SRC:INTK-HMI:VH_SELECT</pv_name>
+            <border_color>
+              <color name="IO Border" red="215" green="215" blue="215" />
+            </border_color>
+            <widget_type>Action Button</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="IO Button" red="178" green="178" blue="178" />
+            </background_color>
+            <width>133</width>
+            <x>46</x>
+            <name>Start Scan_1</name>
+            <y>192</y>
+            <style>0</style>
+            <foreground_color>
+              <color name="IO Foreground" red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false">
+              <action type="WRITE_PV">
+                <pv_name>INFN-SRC:INTK-HMI:VH_SELECT</pv_name>
+                <value>1</value>
+                <timeout>10</timeout>
+                <confirm_message></confirm_message>
+                <description>Select VERTICAL</description>
+              </action>
+            </actions>
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>60f6e55b:158baae9c78:-7f0d</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Temp SLIT</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>134</width>
+            <x>24</x>
+            <name>Label_165</name>
+            <y>72</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <line_width>4</line_width>
+            <horizontal_fill>true</horizontal_fill>
+            <alarm_pulsing>false</alarm_pulsing>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <rules>
+              <rule name="Visible" prop_id="visible" out_exp="false">
+                <exp bool_exp="pv0==1 || pv1==1||pv2==1||pv3==1||pv4==1">
+                  <value>true</value>
+                </exp>
+                <exp bool_exp="pv0==0 &amp;&amp; pv1==0 &amp;&amp; pv2==0 &amp;&amp; pv3==0 &amp;&amp; pv4==0">
+                  <value>false</value>
+                </exp>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM1</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM2</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM3</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM4</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM5</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>-25f0d7e:158d972c59b:-7f2b</wuid>
+            <transparent>true</transparent>
+            <pv_value />
+            <alpha>255</alpha>
+            <bg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </bg_gradient_color>
+            <scripts />
+            <border_alarm_sensitive>false</border_alarm_sensitive>
+            <height>301</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <gradient>false</gradient>
+            <border_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </border_color>
+            <anti_alias>true</anti_alias>
+            <line_style>0</line_style>
+            <widget_type>Rectangle</widget_type>
+            <fg_gradient_color>
+              <color red="255" green="255" blue="255" />
+            </fg_gradient_color>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <background_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </background_color>
+            <width>295</width>
+            <x>12</x>
+            <name>Rectangle</name>
+            <y>6</y>
+            <fill_level>0.0</fill_level>
+            <foreground_color>
+              <color red="255" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+            </font>
+            <line_color>
+              <color name="Major" red="255" green="0" blue="0" />
+            </line_color>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+            <border_style>0</border_style>
+            <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+            <alarm_pulsing>false</alarm_pulsing>
+            <precision>2</precision>
+            <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules>
+              <rule name="status" prop_id="text" out_exp="false">
+                <exp bool_exp="pv0==1 || pv1==1 || pv2==1 || pv3==1|| pv4==1">
+                  <value>Error</value>
+                </exp>
+                <exp bool_exp="pv0==1 &amp;&amp; pv1==0 &amp;&amp; pv2==0 &amp;&amp; pv3==0 &amp;&amp; pv4==0">
+                  <value>OK</value>
+                </exp>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM1</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM2</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM3</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM4</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM5</pv>
+              </rule>
+              <rule name="Color" prop_id="foreground_color" out_exp="false">
+                <exp bool_exp="pv0==1 || pv1==1 || pv2==1 || pv3==1|| pv4==1">
+                  <value>
+                    <color name="Major" red="255" green="0" blue="0" />
+                  </value>
+                </exp>
+                <exp bool_exp="pv0==1 &amp;&amp; pv1==1 &amp;&amp; pv2==1 &amp;&amp; pv3==1 &amp;&amp; pv4==1">
+                  <value>
+                    <color name="Green On" red="0" green="255" blue="0" />
+                  </value>
+                </exp>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM1</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM2</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM3</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM4</pv>
+                <pv trig="true">INFN-SRC:INTK-HMI:FM5</pv>
+              </rule>
+            </rules>
+            <enabled>true</enabled>
+            <wuid>100e174:1598cdb59c9:-78c8</wuid>
+            <transparent>false</transparent>
+            <pv_value />
+            <auto_size>false</auto_size>
+            <text>OK</text>
+            <rotation_angle>0.0</rotation_angle>
+            <scripts />
+            <border_alarm_sensitive>true</border_alarm_sensitive>
+            <show_units>true</show_units>
+            <height>31</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <pv_name></pv_name>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <precision_from_pv>false</precision_from_pv>
+            <widget_type>Text Update</widget_type>
+            <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+            <wrap_words>false</wrap_words>
+            <format_type>0</format_type>
+            <background_color>
+              <color red="70" green="70" blue="70" />
+            </background_color>
+            <width>112</width>
+            <x>174</x>
+            <name>Text Update_1</name>
+            <y>264</y>
+            <foreground_color>
+              <color name="Green On" red="0" green="255" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+            </font>
+          </widget>
+          <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+            <border_style>0</border_style>
+            <tooltip></tooltip>
+            <horizontal_alignment>1</horizontal_alignment>
+            <rules />
+            <enabled>true</enabled>
+            <wuid>100e174:1598cdb59c9:-78c7</wuid>
+            <transparent>true</transparent>
+            <auto_size>false</auto_size>
+            <text>Status</text>
+            <scripts />
+            <height>20</height>
+            <border_width>1</border_width>
+            <scale_options>
+              <width_scalable>true</width_scalable>
+              <height_scalable>true</height_scalable>
+              <keep_wh_ratio>false</keep_wh_ratio>
+            </scale_options>
+            <visible>true</visible>
+            <vertical_alignment>1</vertical_alignment>
+            <border_color>
+              <color red="0" green="128" blue="255" />
+            </border_color>
+            <widget_type>Label</widget_type>
+            <wrap_words>false</wrap_words>
+            <background_color>
+              <color red="255" green="255" blue="255" />
+            </background_color>
+            <width>134</width>
+            <x>24</x>
+            <name>Label_165</name>
+            <y>270</y>
+            <foreground_color>
+              <color red="0" green="0" blue="0" />
+            </foreground_color>
+            <actions hook="false" hook_all="false" />
+            <font>
+              <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+            </font>
+          </widget>
+        </widget>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+        <toggle_button>false</toggle_button>
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <push_action_index>0</push_action_index>
+        <rules>
+          <rule name="Enable" prop_id="enabled" out_exp="false">
+            <exp bool_exp="pv0==0 &amp;&amp; pv1==0">
+              <value>true</value>
+            </exp>
+            <exp bool_exp="pv0==1 || pv1==1">
+              <value>false</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_MTR).BUSY</pv>
+            <pv trig="true">${PREFIX_SCAN}:$(NAME_PS).BUSY</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>-61dcfd6b:158bac54bbd:-7a9a</wuid>
+        <pv_value />
+        <text>Extract DATA</text>
+        <scripts>
+          <path pathString="Scripts/ExtracData.py" checkConnect="true" sfe="false" seoe="false">
+            <pv trig="true">loc://StartExtract</pv>
+            <pv trig="false">${PREFIX_SCAN}:$(NAME_PS).NPTS</pv>
+            <pv trig="false">${PREFIX_SCAN}:$(NAME_MTR).NPTS</pv>
+            <pv trig="false">${PREFIX_SCAN}:${CALC}-Energy-SP</pv>
+            <pv trig="false">$(DTACQ-NAME):CARD0:SAMPLINGRATE-RB</pv>
+            <pv trig="false">${PREFIX_SCAN}:$(NAME_MTR).P4SI</pv>
+            <pv trig="false">$(PREFIX_SCAN):BUFF-CURRENT</pv>
+            <pv trig="false">$(PREFIX_SCAN):BUFF-ANGLE</pv>
+            <pv trig="false">$(PREFIX_SCAN):BUFF-MTR-POS</pv>
+          </path>
+        </scripts>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>57</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <image></image>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Action Button</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Button Grey" red="180" green="180" blue="180" />
+        </background_color>
+        <width>166</width>
+        <x>2220</x>
+        <name>Action Button</name>
+        <y>1049</y>
+        <style>0</style>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false">
+          <action type="WRITE_PV">
+            <pv_name>loc://StartExtract</pv_name>
+            <value>1</value>
+            <timeout>10</timeout>
+            <confirm_message></confirm_message>
+            <description></description>
+          </action>
+        </actions>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="Visible" prop_id="visible" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>true</value>
+            </exp>
+            <exp bool_exp="pv0==0">
+              <value>false</value>
+            </exp>
+            <pv trig="true">${PREFIX_SCAN}:$(PROC)-AUTO-HOME</pv>
+          </rule>
+        </rules>
+        <enabled>false</enabled>
+        <wuid>7feef39:159b7455f16:-7060</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>STOPPING IN PROGRESS ...</text>
+        <scripts />
+        <height>60</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>505</width>
+        <x>1086</x>
+        <name>Label</name>
+        <y>150</y>
+        <foreground_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="19" style="1">Header 1</opifont.name>
+        </font>
+      </widget>
+    </widget>
+    <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+      <border_style>0</border_style>
+      <tooltip></tooltip>
+      <rules />
+      <enabled>true</enabled>
+      <wuid>2fea3147:153609206ed:-7765</wuid>
+      <transparent>true</transparent>
+      <lock_children>false</lock_children>
+      <scripts />
+      <height>1129</height>
+      <border_width>1</border_width>
+      <scale_options>
+        <width_scalable>true</width_scalable>
+        <height_scalable>true</height_scalable>
+        <keep_wh_ratio>false</keep_wh_ratio>
+      </scale_options>
+      <macros>
+        <include_parent_macros>true</include_parent_macros>
+      </macros>
+      <visible>false</visible>
+      <border_color>
+        <color red="0" green="128" blue="255" />
+      </border_color>
+      <widget_type>Grouping Container</widget_type>
+      <background_color>
+        <color red="240" green="240" blue="240" />
+      </background_color>
+      <width>2489</width>
+      <x>1</x>
+      <name>DTACQ</name>
+      <y>1</y>
+      <foreground_color>
+        <color red="192" green="192" blue="192" />
+      </foreground_color>
+      <actions hook="false" hook_all="false" />
+      <fc>false</fc>
+      <show_scrollbar>true</show_scrollbar>
+      <font>
+        <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+      </font>
+      <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-eb7</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>936</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>0</line_style>
+        <widget_type>Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </background_color>
+        <width>1483</width>
+        <x>0</x>
+        <name>Rectangle</name>
+        <y>43</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>0</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>0</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>1e771979:1565068c2e3:-483e</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME):CARD0-STAT-RB</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color red="0" green="0" blue="0" />
+        </background_color>
+        <width>148</width>
+        <x>1104</x>
+        <name>Text Update</name>
+        <y>24</y>
+        <foreground_color>
+          <color name="TextDynamic" red="0" green="244" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7781</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>0</line_style>
+        <widget_type>Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color red="186" green="189" blue="182" />
+        </background_color>
+        <width>160</width>
+        <x>408</x>
+        <name>Rectangle_2</name>
+        <y>850</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.xyGraph" version="1.0.0">
+        <axis_1_scale_format></axis_1_scale_format>
+        <trace_2_x_axis_index>0</trace_2_x_axis_index>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(trace_0_y_pv)
+$(trace_0_y_pv_value)</tooltip>
+        <trace_0_concatenate_data>false</trace_0_concatenate_data>
+        <trace_0_trace_type>0</trace_0_trace_type>
+        <trace_4_line_width>3</trace_4_line_width>
+        <border_width>1</border_width>
+        <trace_3_point_size>4</trace_3_point_size>
+        <trace_1_x_axis_index>0</trace_1_x_axis_index>
+        <border_style>0</border_style>
+        <axis_0_grid_color>
+          <color red="78" green="154" blue="6" />
+        </axis_0_grid_color>
+        <axis_2_visible>false</axis_2_visible>
+        <trace_0_name>$(trace_0_y_pv)</trace_0_name>
+        <axis_2_minimum>0.0</axis_2_minimum>
+        <trace_0_update_mode>0</trace_0_update_mode>
+        <trace_1_x_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR_XMS</trace_1_x_pv>
+        <wuid>-3d4af206:15877d6a498:-7780</wuid>
+        <transparent>false</transparent>
+        <trace_1_update_mode>0</trace_1_update_mode>
+        <axis_0_title_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_0_title_font>
+        <trace_2_update_mode>0</trace_2_update_mode>
+        <background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </background_color>
+        <trace_3_update_mode>0</trace_3_update_mode>
+        <x>408</x>
+        <y>120</y>
+        <trace_4_update_mode>0</trace_4_update_mode>
+        <trace_3_x_axis_index>0</trace_3_x_axis_index>
+        <trace_0_x_axis_index>0</trace_0_x_axis_index>
+        <axis_count>3</axis_count>
+        <trace_4_x_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR:RCURSOR_X</trace_4_x_pv>
+        <trace_3_y_pv_value />
+        <trace_1_point_size>4</trace_1_point_size>
+        <trace_1_anti_alias>false</trace_1_anti_alias>
+        <pv_value />
+        <axis_2_grid_color>
+          <color red="200" green="200" blue="200" />
+        </axis_2_grid_color>
+        <trace_0_buffer_size>520</trace_0_buffer_size>
+        <trace_2_buffer_size>520</trace_2_buffer_size>
+        <axis_1_maximum>10.0</axis_1_maximum>
+        <axis_0_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_0_scale_font>
+        <trigger_pv></trigger_pv>
+        <trace_4_update_delay>1</trace_4_update_delay>
+        <widget_type>XY Graph</widget_type>
+        <trace_2_line_width>1</trace_2_line_width>
+        <trace_4_plot_mode>0</trace_4_plot_mode>
+        <trace_3_concatenate_data>false</trace_3_concatenate_data>
+        <trace_4_x_pv_value />
+        <axis_1_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_1_axis_color>
+        <axis_0_scale_format></axis_0_scale_format>
+        <axis_1_log_scale>false</axis_1_log_scale>
+        <title></title>
+        <trace_0_visible>true</trace_0_visible>
+        <trace_4_buffer_size>2</trace_4_buffer_size>
+        <trace_1_name>$(trace_1_y_pv)</trace_1_name>
+        <trace_3_anti_alias>false</trace_3_anti_alias>
+        <trace_1_y_pv_value />
+        <axis_2_auto_scale>true</axis_2_auto_scale>
+        <trace_4_y_pv>loc://val(-100,100)</trace_4_y_pv>
+        <show_legend>false</show_legend>
+        <trace_3_visible>true</trace_3_visible>
+        <trace_4_x_axis_index>0</trace_4_x_axis_index>
+        <trace_3_name>$(trace_3_y_pv)</trace_3_name>
+        <axis_0_axis_title>ms</axis_0_axis_title>
+        <axis_0_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_0_axis_color>
+        <axis_2_scale_font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </axis_2_scale_font>
+        <trace_3_update_delay>1</trace_3_update_delay>
+        <trace_2_update_delay>1</trace_2_update_delay>
+        <trace_4_point_style>0</trace_4_point_style>
+        <axis_0_dash_grid_line>false</axis_0_dash_grid_line>
+        <trace_0_point_style>2</trace_0_point_style>
+        <trace_1_point_style>2</trace_1_point_style>
+        <trace_0_line_width>1</trace_0_line_width>
+        <axis_2_y_axis>false</axis_2_y_axis>
+        <trace_3_x_pv_value />
+        <axis_0_time_format>0</axis_0_time_format>
+        <trace_count>5</trace_count>
+        <axis_1_show_grid>true</axis_1_show_grid>
+        <trace_3_x_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR:LCURSOR_X</trace_3_x_pv>
+        <trace_2_trace_color>
+          <color name="Primary Blue" red="0" green="148" blue="202" />
+        </trace_2_trace_color>
+        <trace_4_visible>true</trace_4_visible>
+        <axis_1_dash_grid_line>true</axis_1_dash_grid_line>
+        <trace_3_buffer_size>2</trace_3_buffer_size>
+        <trace_2_trace_type>0</trace_2_trace_type>
+        <trace_3_line_width>3</trace_3_line_width>
+        <show_toolbar>true</show_toolbar>
+        <axis_0_visible>true</axis_0_visible>
+        <axis_0_show_grid>true</axis_0_show_grid>
+        <trace_0_y_axis_index>1</trace_0_y_axis_index>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <trace_1_y_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR_Y</trace_1_y_pv>
+        <trace_2_concatenate_data>false</trace_2_concatenate_data>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <trace_2_y_pv_value />
+        <trace_2_anti_alias>false</trace_2_anti_alias>
+        <axis_0_maximum>6.0</axis_0_maximum>
+        <trace_1_y_axis_index>1</trace_1_y_axis_index>
+        <trace_2_name>$(trace_2_y_pv)</trace_2_name>
+        <height>451</height>
+        <trace_2_visible>false</trace_2_visible>
+        <trigger_pv_value />
+        <trace_3_y_pv>loc://val(-100,100)</trace_3_y_pv>
+        <axis_1_grid_color>
+          <color red="78" green="154" blue="6" />
+        </axis_1_grid_color>
+        <actions hook="false" hook_all="false" />
+        <trace_2_point_size>4</trace_2_point_size>
+        <trace_4_concatenate_data>false</trace_4_concatenate_data>
+        <axis_2_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_2_axis_color>
+        <axis_0_log_scale>false</axis_0_log_scale>
+        <trace_0_x_pv_value />
+        <axis_0_auto_scale_threshold>0.0</axis_0_auto_scale_threshold>
+        <rules />
+        <axis_1_visible>true</axis_1_visible>
+        <axis_2_show_grid>false</axis_2_show_grid>
+        <trace_3_y_axis_index>1</trace_3_y_axis_index>
+        <trace_0_update_delay>1</trace_0_update_delay>
+        <trace_1_concatenate_data>false</trace_1_concatenate_data>
+        <trace_1_trace_color>
+          <color red="242" green="26" blue="26" />
+        </trace_1_trace_color>
+        <trace_3_trace_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </trace_3_trace_color>
+        <pv_name></pv_name>
+        <axis_2_log_scale>false</axis_2_log_scale>
+        <axis_2_auto_scale_threshold>0.0</axis_2_auto_scale_threshold>
+        <name>XY Graph</name>
+        <trace_1_trace_type>0</trace_1_trace_type>
+        <axis_0_auto_scale>true</axis_0_auto_scale>
+        <axis_0_minimum>-6.0</axis_0_minimum>
+        <trace_2_y_axis_index>1</trace_2_y_axis_index>
+        <trace_1_update_delay>1</trace_1_update_delay>
+        <axis_2_dash_grid_line>false</axis_2_dash_grid_line>
+        <axis_1_axis_title>mA</axis_1_axis_title>
+        <trace_2_x_pv_value />
+        <axis_1_auto_scale>false</axis_1_auto_scale>
+        <trace_1_line_width>1</trace_1_line_width>
+        <trace_3_trace_type>1</trace_3_trace_type>
+        <trace_2_y_pv>$(DTACQ-NAME)-$(DEVICE_HV2):VoltR_Y</trace_2_y_pv>
+        <trace_1_plot_mode>0</trace_1_plot_mode>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <axis_2_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </axis_2_title_font>
+        <trace_3_point_style>0</trace_3_point_style>
+        <trace_0_y_pv>$(DTACQ-NAME)V-$(DEVICE_FC):CurrR_Y</trace_0_y_pv>
+        <trace_2_point_style>2</trace_2_point_style>
+        <trace_0_plot_mode>0</trace_0_plot_mode>
+        <trace_4_trace_type>1</trace_4_trace_type>
+        <enabled>true</enabled>
+        <trace_0_x_pv>$(DTACQ-NAME)V-$(DEVICE_FC):CurrR_XMS</trace_0_x_pv>
+        <axis_1_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_1_scale_font>
+        <axis_1_time_format>0</axis_1_time_format>
+        <axis_2_time_format>0</axis_2_time_format>
+        <axis_2_left_bottom_side>false</axis_2_left_bottom_side>
+        <trace_3_plot_mode>0</trace_3_plot_mode>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <axis_2_maximum>22.0</axis_2_maximum>
+        <show_plot_area_border>false</show_plot_area_border>
+        <width>895</width>
+        <trace_1_x_pv_value />
+        <axis_1_minimum>-10.0</axis_1_minimum>
+        <title_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </title_font>
+        <trace_4_anti_alias>false</trace_4_anti_alias>
+        <trace_0_y_pv_value />
+        <trace_1_visible>false</trace_1_visible>
+        <plot_area_background_color>
+          <color red="0" green="0" blue="0" />
+        </plot_area_background_color>
+        <trace_4_point_size>4</trace_4_point_size>
+        <axis_1_title_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_1_title_font>
+        <visible>true</visible>
+        <axis_2_axis_title>ms</axis_2_axis_title>
+        <trace_4_trace_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </trace_4_trace_color>
+        <trace_1_buffer_size>520</trace_1_buffer_size>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <axis_2_scale_format></axis_2_scale_format>
+        <trace_4_y_pv_value />
+        <scripts />
+        <trace_0_point_size>3</trace_0_point_size>
+        <trace_0_trace_color>
+          <color red="0" green="255" blue="0" />
+        </trace_0_trace_color>
+        <trace_0_anti_alias>false</trace_0_anti_alias>
+        <trace_4_name>$(trace_4_y_pv)</trace_4_name>
+        <axis_1_auto_scale_threshold>0.0</axis_1_auto_scale_threshold>
+        <trace_4_y_axis_index>1</trace_4_y_axis_index>
+        <trace_2_plot_mode>0</trace_2_plot_mode>
+        <trace_2_x_pv>$(DTACQ-NAME)-$(DEVICE_HV2):VoltR_XMS</trace_2_x_pv>
+        <foreground_color>
+          <color red="0" green="0" blue="255" />
+        </foreground_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.RoundedRectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-777f</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <corner_height>16</corner_height>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>97</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <corner_width>16</corner_width>
+        <line_style>0</line_style>
+        <widget_type>Rounded Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </background_color>
+        <width>349</width>
+        <x>36</x>
+        <name>Rounded Rectangle_4</name>
+        <y>126</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-777d</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>ms</text>
+        <scripts />
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>40</width>
+        <x>328</x>
+        <name>Label_16</name>
+        <y>178</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="10" style="1">Small Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.RoundedRectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>0</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-777c</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <corner_height>16</corner_height>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>97</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <corner_width>16</corner_width>
+        <line_style>0</line_style>
+        <widget_type>Rounded Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </background_color>
+        <width>349</width>
+        <x>36</x>
+        <name>Rounded Rectangle_5</name>
+        <y>246</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="128" green="0" blue="255" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.polyline" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>2</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <arrows>1</arrows>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-777b</wuid>
+        <transparent>false</transparent>
+        <points>
+          <point x="213" y="180" />
+          <point x="156" y="180" />
+          <point x="156" y="180" />
+        </points>
+        <fill_arrow>true</fill_arrow>
+        <pv_value />
+        <alpha>255</alpha>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>2</line_style>
+        <arrow_length>20</arrow_length>
+        <widget_type>Polyline</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color red="0" green="0" blue="0" />
+        </background_color>
+        <width>58</width>
+        <x>156</x>
+        <name>Polyline_1</name>
+        <y>180</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.polyline" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>2</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <arrows>1</arrows>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7779</wuid>
+        <transparent>false</transparent>
+        <points>
+          <point x="213" y="300" />
+          <point x="156" y="300" />
+          <point x="156" y="300" />
+        </points>
+        <fill_arrow>true</fill_arrow>
+        <pv_value />
+        <alpha>255</alpha>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>1</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>2</line_style>
+        <arrow_length>20</arrow_length>
+        <widget_type>Polyline</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color red="0" green="0" blue="0" />
+        </background_color>
+        <width>58</width>
+        <x>156</x>
+        <name>Polyline_2</name>
+        <y>300</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7778</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>ms</text>
+        <scripts />
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>40</width>
+        <x>328</x>
+        <name>Label_18</name>
+        <y>298</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="10" style="1">Small Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7777</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>FC Curr</text>
+        <scripts />
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="0" green="0" blue="0" />
+        </background_color>
+        <width>160</width>
+        <x>408</x>
+        <name>Label_11</name>
+        <y>870</y>
+        <foreground_color>
+          <color name="TextDynamic" red="0" green="244" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7776</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>false</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)V-$(DEVICE_FC):CurrR:AVG</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>567</x>
+        <name>Text Update_3</name>
+        <y>870</y>
+        <foreground_color>
+          <color name="Minor" red="255" green="128" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7775</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>false</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)V-$(DEVICE_FC):CurrR:MAX</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>716</x>
+        <name>Text Update_1</name>
+        <y>870</y>
+        <foreground_color>
+          <color red="114" green="159" blue="207" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7774</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>false</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)V-$(DEVICE_FC):CurrR:MIN</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>865</x>
+        <name>Text Update_2</name>
+        <y>870</y>
+        <foreground_color>
+          <color red="252" green="233" blue="79" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <line_width>1</line_width>
+        <horizontal_fill>true</horizontal_fill>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7773</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <alpha>255</alpha>
+        <bg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </bg_gradient_color>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>22</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <gradient>false</gradient>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <anti_alias>true</anti_alias>
+        <line_style>0</line_style>
+        <widget_type>Rectangle</widget_type>
+        <fg_gradient_color>
+          <color red="255" green="255" blue="255" />
+        </fg_gradient_color>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color red="186" green="189" blue="182" />
+        </background_color>
+        <width>448</width>
+        <x>567</x>
+        <name>Rectangle_1</name>
+        <y>849</y>
+        <fill_level>0.0</fill_level>
+        <foreground_color>
+          <color red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+        <line_color>
+          <color red="0" green="0" blue="0" />
+        </line_color>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7772</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Max</text>
+        <scripts />
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>150</width>
+        <x>716</x>
+        <name>Label_5</name>
+        <y>850</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7771</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Min</text>
+        <scripts />
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>150</width>
+        <x>865</x>
+        <name>Label_22</name>
+        <y>850</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7770</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Average</text>
+        <scripts />
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>150</width>
+        <x>567</x>
+        <name>Label_21</name>
+        <y>850</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-776f</wuid>
+        <transparent>true</transparent>
+        <auto_size>false</auto_size>
+        <text>Main GRAPH</text>
+        <scripts />
+        <height>20</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="255" green="255" blue="255" />
+        </background_color>
+        <width>115</width>
+        <x>840</x>
+        <name>Label_25</name>
+        <y>96</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.spinner" version="1.0.0">
+        <border_style>6</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="BorderRule" prop_id="border_style" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>9</value>
+            </exp>
+            <pv trig="true">$(pv_name).SIMM</pv>
+          </rule>
+        </rules>
+        <enabled>false</enabled>
+        <wuid>-3d4af206:15877d6a498:-7769</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <scripts />
+        <buttons_on_left>false</buttons_on_left>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>31</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME):CARD0:TRIGGER:PRETRIGGER_ms</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <format>0</format>
+        <horizontal_buttons_layout>false</horizontal_buttons_layout>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Spinner</widget_type>
+        <step_increment>1.0</step_increment>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <limits_from_pv>true</limits_from_pv>
+        <background_color>
+          <color red="70" green="70" blue="70" />
+        </background_color>
+        <page_increment>10.0</page_increment>
+        <width>115</width>
+        <x>54</x>
+        <name>Spinner Template_10</name>
+        <y>168</y>
+        <maximum>10.0</maximum>
+        <foreground_color>
+          <color red="0" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <minimum>0.0</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.spinner" version="1.0.0">
+        <border_style>6</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="BorderRule" prop_id="border_style" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>9</value>
+            </exp>
+            <pv trig="true">$(pv_name).SIMM</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7768</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <scripts />
+        <buttons_on_left>false</buttons_on_left>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>31</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME):CARD0:NSAMPLES_ms</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <format>0</format>
+        <horizontal_buttons_layout>false</horizontal_buttons_layout>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Spinner</widget_type>
+        <step_increment>0.1</step_increment>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color red="70" green="70" blue="70" />
+        </background_color>
+        <page_increment>10.0</page_increment>
+        <width>115</width>
+        <x>214</x>
+        <name>Spinner Template_1</name>
+        <y>168</y>
+        <maximum>10.0</maximum>
+        <foreground_color>
+          <color red="0" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <minimum>1.0</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.spinner" version="1.0.0">
+        <border_style>6</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="BorderRule" prop_id="border_style" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>9</value>
+            </exp>
+            <pv trig="true">$(pv_name).SIMM</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>-3d4af206:15877d6a498:-7766</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <scripts />
+        <buttons_on_left>false</buttons_on_left>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>31</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)V:RCURSOR_ms</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <format>0</format>
+        <horizontal_buttons_layout>false</horizontal_buttons_layout>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Spinner</widget_type>
+        <step_increment>1.0</step_increment>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color red="70" green="70" blue="70" />
+        </background_color>
+        <page_increment>10.0</page_increment>
+        <width>115</width>
+        <x>214</x>
+        <name>Spinner Template_3</name>
+        <y>288</y>
+        <maximum>100.0</maximum>
+        <foreground_color>
+          <color red="0" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <minimum>-100.0</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-751a</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>HV1 Volt</text>
+        <scripts />
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="0" green="0" blue="0" />
+        </background_color>
+        <width>160</width>
+        <x>408</x>
+        <name>Label_11</name>
+        <y>893</y>
+        <foreground_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-7519</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR:AVG</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>567</x>
+        <name>Text Update_3</name>
+        <y>893</y>
+        <foreground_color>
+          <color name="Minor" red="255" green="128" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-7518</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR:MAX</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>716</x>
+        <name>Text Update_1</name>
+        <y>893</y>
+        <foreground_color>
+          <color red="114" green="159" blue="207" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-7517</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR:MIN</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>865</x>
+        <name>Text Update_2</name>
+        <y>893</y>
+        <foreground_color>
+          <color red="252" green="233" blue="79" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-70a0</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>HV2 Volt</text>
+        <scripts />
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>false</wrap_words>
+        <background_color>
+          <color red="0" green="0" blue="0" />
+        </background_color>
+        <width>160</width>
+        <x>408</x>
+        <name>Label_11</name>
+        <y>916</y>
+        <foreground_color>
+          <color name="Primary Blue" red="0" green="148" blue="202" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-709f</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)-$(DEVICE_HV2):VoltR:AVG</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>true</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>567</x>
+        <name>Text Update_3</name>
+        <y>916</y>
+        <foreground_color>
+          <color name="Minor" red="255" green="128" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-709e</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)-$(DEVICE_HV2):VoltR:MAX</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>716</x>
+        <name>Text Update_1</name>
+        <y>916</y>
+        <foreground_color>
+          <color red="114" green="159" blue="207" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.TextUpdate" version="1.0.0">
+        <border_style>0</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-709d</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <auto_size>false</auto_size>
+        <text>######</text>
+        <rotation_angle>0.0</rotation_angle>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <show_units>true</show_units>
+        <height>24</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)-$(DEVICE_HV2):VoltR:MIN</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Text Update</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <wrap_words>false</wrap_words>
+        <format_type>0</format_type>
+        <background_color>
+          <color name="TextBackground" red="70" green="70" blue="70" />
+        </background_color>
+        <width>150</width>
+        <x>865</x>
+        <name>Text Update_2</name>
+        <y>916</y>
+        <foreground_color>
+          <color red="252" green="233" blue="79" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-f67</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>Display interval</text>
+        <scripts />
+        <height>32</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>true</wrap_words>
+        <background_color>
+          <color name="SubPanel" red="176" green="218" blue="249" />
+        </background_color>
+        <width>349</width>
+        <x>36</x>
+        <name>Label_15</name>
+        <y>126</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <show_scrollbar>false</show_scrollbar>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-f5d</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>Measure interval</text>
+        <scripts />
+        <height>32</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>true</wrap_words>
+        <background_color>
+          <color name="SubPanel" red="176" green="218" blue="249" />
+        </background_color>
+        <width>349</width>
+        <x>36</x>
+        <name>Label_15</name>
+        <y>246</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <show_scrollbar>false</show_scrollbar>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+        <border_style>0</border_style>
+        <tooltip></tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-1168daa3:158859bc9c3:-f53</wuid>
+        <transparent>false</transparent>
+        <auto_size>false</auto_size>
+        <text>FAST ACQUISITION</text>
+        <scripts />
+        <height>32</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <vertical_alignment>1</vertical_alignment>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Label</widget_type>
+        <wrap_words>true</wrap_words>
+        <background_color>
+          <color name="SubPanel" red="176" green="218" blue="249" />
+        </background_color>
+        <width>1483</width>
+        <x>0</x>
+        <name>Label_15</name>
+        <y>12</y>
+        <foreground_color>
+          <color red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <show_scrollbar>false</show_scrollbar>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.spinner" version="1.0.0">
+        <border_style>6</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <precision>3</precision>
+        <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+        <horizontal_alignment>1</horizontal_alignment>
+        <rules>
+          <rule name="BorderRule" prop_id="border_style" out_exp="false">
+            <exp bool_exp="pv0==1">
+              <value>9</value>
+            </exp>
+            <pv trig="true">$(pv_name).SIMM</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>-6047e935:1589bd389ef:-66ec</wuid>
+        <transparent>false</transparent>
+        <pv_value />
+        <scripts />
+        <buttons_on_left>false</buttons_on_left>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>31</height>
+        <border_width>2</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <visible>true</visible>
+        <pv_name>$(DTACQ-NAME)V:LCURSOR_ms</pv_name>
+        <vertical_alignment>1</vertical_alignment>
+        <format>0</format>
+        <horizontal_buttons_layout>false</horizontal_buttons_layout>
+        <border_color>
+          <color name="IO Border" red="215" green="215" blue="215" />
+        </border_color>
+        <precision_from_pv>false</precision_from_pv>
+        <widget_type>Spinner</widget_type>
+        <step_increment>1.0</step_increment>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <limits_from_pv>false</limits_from_pv>
+        <background_color>
+          <color red="70" green="70" blue="70" />
+        </background_color>
+        <page_increment>10.0</page_increment>
+        <width>115</width>
+        <x>54</x>
+        <name>Spinner Template_3</name>
+        <y>288</y>
+        <maximum>100.0</maximum>
+        <foreground_color>
+          <color red="0" green="255" blue="255" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <minimum>-100.0</minimum>
+        <font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.xyGraph" version="1.0.0">
+        <axis_1_scale_format></axis_1_scale_format>
+        <trace_2_x_axis_index>0</trace_2_x_axis_index>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(trace_0_y_pv)
+$(trace_0_y_pv_value)</tooltip>
+        <trace_0_concatenate_data>false</trace_0_concatenate_data>
+        <trace_0_trace_type>0</trace_0_trace_type>
+        <trace_4_line_width>3</trace_4_line_width>
+        <border_width>1</border_width>
+        <trace_3_point_size>4</trace_3_point_size>
+        <trace_1_x_axis_index>0</trace_1_x_axis_index>
+        <border_style>0</border_style>
+        <axis_0_grid_color>
+          <color red="78" green="154" blue="6" />
+        </axis_0_grid_color>
+        <axis_2_visible>false</axis_2_visible>
+        <trace_0_name>$(trace_0_y_pv)</trace_0_name>
+        <axis_2_minimum>0.0</axis_2_minimum>
+        <trace_0_update_mode>0</trace_0_update_mode>
+        <trace_1_x_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR_XMS</trace_1_x_pv>
+        <wuid>-61dcfd6b:158bac54bbd:-7d05</wuid>
+        <transparent>false</transparent>
+        <trace_1_update_mode>0</trace_1_update_mode>
+        <axis_0_title_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_0_title_font>
+        <trace_2_update_mode>0</trace_2_update_mode>
+        <background_color>
+          <color name="Field Background Grey" red="240" green="240" blue="240" />
+        </background_color>
+        <trace_3_update_mode>0</trace_3_update_mode>
+        <x>408</x>
+        <y>582</y>
+        <trace_4_update_mode>0</trace_4_update_mode>
+        <trace_3_x_axis_index>0</trace_3_x_axis_index>
+        <trace_0_x_axis_index>0</trace_0_x_axis_index>
+        <axis_count>3</axis_count>
+        <trace_4_x_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR:RCURSOR_X</trace_4_x_pv>
+        <trace_3_y_pv_value />
+        <trace_1_point_size>4</trace_1_point_size>
+        <trace_1_anti_alias>false</trace_1_anti_alias>
+        <pv_value />
+        <axis_2_grid_color>
+          <color red="200" green="200" blue="200" />
+        </axis_2_grid_color>
+        <trace_0_buffer_size>520</trace_0_buffer_size>
+        <trace_2_buffer_size>520</trace_2_buffer_size>
+        <axis_1_maximum>8.0</axis_1_maximum>
+        <axis_0_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_0_scale_font>
+        <trigger_pv></trigger_pv>
+        <trace_4_update_delay>1</trace_4_update_delay>
+        <widget_type>XY Graph</widget_type>
+        <trace_2_line_width>1</trace_2_line_width>
+        <trace_4_plot_mode>0</trace_4_plot_mode>
+        <trace_3_concatenate_data>false</trace_3_concatenate_data>
+        <trace_4_x_pv_value />
+        <axis_1_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_1_axis_color>
+        <axis_0_scale_format></axis_0_scale_format>
+        <axis_1_log_scale>false</axis_1_log_scale>
+        <title></title>
+        <trace_0_visible>false</trace_0_visible>
+        <trace_4_buffer_size>2</trace_4_buffer_size>
+        <trace_1_name>$(trace_1_y_pv)</trace_1_name>
+        <trace_3_anti_alias>false</trace_3_anti_alias>
+        <trace_1_y_pv_value />
+        <axis_2_auto_scale>true</axis_2_auto_scale>
+        <trace_4_y_pv>loc://val(-100,100)</trace_4_y_pv>
+        <show_legend>false</show_legend>
+        <trace_3_visible>true</trace_3_visible>
+        <trace_4_x_axis_index>0</trace_4_x_axis_index>
+        <trace_3_name>$(trace_3_y_pv)</trace_3_name>
+        <axis_0_axis_title>ms</axis_0_axis_title>
+        <axis_0_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_0_axis_color>
+        <axis_2_scale_font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </axis_2_scale_font>
+        <trace_3_update_delay>1</trace_3_update_delay>
+        <trace_2_update_delay>1</trace_2_update_delay>
+        <trace_4_point_style>0</trace_4_point_style>
+        <axis_0_dash_grid_line>false</axis_0_dash_grid_line>
+        <trace_0_point_style>2</trace_0_point_style>
+        <trace_1_point_style>2</trace_1_point_style>
+        <trace_0_line_width>1</trace_0_line_width>
+        <axis_2_y_axis>false</axis_2_y_axis>
+        <trace_3_x_pv_value />
+        <axis_0_time_format>0</axis_0_time_format>
+        <trace_count>5</trace_count>
+        <axis_1_show_grid>true</axis_1_show_grid>
+        <trace_3_x_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR:LCURSOR_X</trace_3_x_pv>
+        <trace_2_trace_color>
+          <color name="Primary Blue" red="0" green="148" blue="202" />
+        </trace_2_trace_color>
+        <trace_4_visible>true</trace_4_visible>
+        <axis_1_dash_grid_line>true</axis_1_dash_grid_line>
+        <trace_3_buffer_size>2</trace_3_buffer_size>
+        <trace_2_trace_type>0</trace_2_trace_type>
+        <trace_3_line_width>3</trace_3_line_width>
+        <show_toolbar>true</show_toolbar>
+        <axis_0_visible>true</axis_0_visible>
+        <axis_0_show_grid>true</axis_0_show_grid>
+        <trace_0_y_axis_index>1</trace_0_y_axis_index>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>true</keep_wh_ratio>
+        </scale_options>
+        <trace_1_y_pv>$(DTACQ-NAME)-$(DEVICE_HV1):VoltR_Y</trace_1_y_pv>
+        <trace_2_concatenate_data>false</trace_2_concatenate_data>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <trace_2_y_pv_value />
+        <trace_2_anti_alias>false</trace_2_anti_alias>
+        <axis_0_maximum>6.0</axis_0_maximum>
+        <trace_1_y_axis_index>1</trace_1_y_axis_index>
+        <trace_2_name>$(trace_2_y_pv)</trace_2_name>
+        <height>247</height>
+        <trace_2_visible>true</trace_2_visible>
+        <trigger_pv_value />
+        <trace_3_y_pv>loc://val(-100,100)</trace_3_y_pv>
+        <axis_1_grid_color>
+          <color red="78" green="154" blue="6" />
+        </axis_1_grid_color>
+        <actions hook="false" hook_all="false" />
+        <trace_2_point_size>4</trace_2_point_size>
+        <trace_4_concatenate_data>false</trace_4_concatenate_data>
+        <axis_2_axis_color>
+          <color red="0" green="0" blue="0" />
+        </axis_2_axis_color>
+        <axis_0_log_scale>false</axis_0_log_scale>
+        <trace_0_x_pv_value />
+        <axis_0_auto_scale_threshold>0.0</axis_0_auto_scale_threshold>
+        <rules />
+        <axis_1_visible>true</axis_1_visible>
+        <axis_2_show_grid>false</axis_2_show_grid>
+        <trace_3_y_axis_index>1</trace_3_y_axis_index>
+        <trace_0_update_delay>1</trace_0_update_delay>
+        <trace_1_concatenate_data>false</trace_1_concatenate_data>
+        <trace_1_trace_color>
+          <color red="242" green="26" blue="26" />
+        </trace_1_trace_color>
+        <trace_3_trace_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </trace_3_trace_color>
+        <pv_name></pv_name>
+        <axis_2_log_scale>false</axis_2_log_scale>
+        <axis_2_auto_scale_threshold>0.0</axis_2_auto_scale_threshold>
+        <name>XY Graph</name>
+        <trace_1_trace_type>0</trace_1_trace_type>
+        <axis_0_auto_scale>true</axis_0_auto_scale>
+        <axis_0_minimum>-6.0</axis_0_minimum>
+        <trace_2_y_axis_index>1</trace_2_y_axis_index>
+        <trace_1_update_delay>1</trace_1_update_delay>
+        <axis_2_dash_grid_line>false</axis_2_dash_grid_line>
+        <axis_1_axis_title>mA</axis_1_axis_title>
+        <trace_2_x_pv_value />
+        <axis_1_auto_scale>false</axis_1_auto_scale>
+        <trace_1_line_width>1</trace_1_line_width>
+        <trace_3_trace_type>1</trace_3_trace_type>
+        <trace_2_y_pv>$(DTACQ-NAME)-$(DEVICE_HV2):VoltR_Y</trace_2_y_pv>
+        <trace_1_plot_mode>0</trace_1_plot_mode>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <axis_2_title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </axis_2_title_font>
+        <trace_3_point_style>0</trace_3_point_style>
+        <trace_0_y_pv>$(DTACQ-NAME)V-$(DEVICE_FC):CurrR_Y</trace_0_y_pv>
+        <trace_2_point_style>2</trace_2_point_style>
+        <trace_0_plot_mode>0</trace_0_plot_mode>
+        <trace_4_trace_type>1</trace_4_trace_type>
+        <enabled>true</enabled>
+        <trace_0_x_pv>$(DTACQ-NAME)V-$(DEVICE_FC):CurrR_XMS</trace_0_x_pv>
+        <axis_1_scale_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_1_scale_font>
+        <axis_1_time_format>0</axis_1_time_format>
+        <axis_2_time_format>0</axis_2_time_format>
+        <axis_2_left_bottom_side>false</axis_2_left_bottom_side>
+        <trace_3_plot_mode>0</trace_3_plot_mode>
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <axis_2_maximum>22.0</axis_2_maximum>
+        <show_plot_area_border>false</show_plot_area_border>
+        <width>895</width>
+        <trace_1_x_pv_value />
+        <axis_1_minimum>-8.0</axis_1_minimum>
+        <title_font>
+          <opifont.name fontName="Cantarell" height="11" style="1">Default Bold</opifont.name>
+        </title_font>
+        <trace_4_anti_alias>false</trace_4_anti_alias>
+        <trace_0_y_pv_value />
+        <trace_1_visible>true</trace_1_visible>
+        <plot_area_background_color>
+          <color red="0" green="0" blue="0" />
+        </plot_area_background_color>
+        <trace_4_point_size>4</trace_4_point_size>
+        <axis_1_title_font>
+          <opifont.name fontName="OpenSans" height="12" style="1">Normal Bold</opifont.name>
+        </axis_1_title_font>
+        <visible>true</visible>
+        <axis_2_axis_title>ms</axis_2_axis_title>
+        <trace_4_trace_color>
+          <color name="Major" red="255" green="0" blue="0" />
+        </trace_4_trace_color>
+        <trace_1_buffer_size>520</trace_1_buffer_size>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <axis_2_scale_format></axis_2_scale_format>
+        <trace_4_y_pv_value />
+        <scripts />
+        <trace_0_point_size>3</trace_0_point_size>
+        <trace_0_trace_color>
+          <color red="0" green="255" blue="0" />
+        </trace_0_trace_color>
+        <trace_0_anti_alias>false</trace_0_anti_alias>
+        <trace_4_name>$(trace_4_y_pv)</trace_4_name>
+        <axis_1_auto_scale_threshold>0.0</axis_1_auto_scale_threshold>
+        <trace_4_y_axis_index>1</trace_4_y_axis_index>
+        <trace_2_plot_mode>0</trace_2_plot_mode>
+        <trace_2_x_pv>$(DTACQ-NAME)-$(DEVICE_HV2):VoltR_XMS</trace_2_x_pv>
+        <foreground_color>
+          <color red="0" green="0" blue="255" />
+        </foreground_color>
+      </widget>
+    </widget>
+    <widget typeId="org.csstudio.opibuilder.widgets.groupingContainer" version="1.0.0">
+      <border_style>0</border_style>
+      <tooltip></tooltip>
+      <rules />
+      <enabled>true</enabled>
+      <wuid>-25f0d7e:158d972c59b:-7efc</wuid>
+      <transparent>true</transparent>
+      <lock_children>false</lock_children>
+      <scripts />
+      <height>1129</height>
+      <border_width>1</border_width>
+      <scale_options>
+        <width_scalable>true</width_scalable>
+        <height_scalable>true</height_scalable>
+        <keep_wh_ratio>false</keep_wh_ratio>
+      </scale_options>
+      <macros>
+        <include_parent_macros>true</include_parent_macros>
+      </macros>
+      <visible>false</visible>
+      <border_color>
+        <color red="0" green="128" blue="255" />
+      </border_color>
+      <widget_type>Grouping Container</widget_type>
+      <background_color>
+        <color red="240" green="240" blue="240" />
+      </background_color>
+      <width>2489</width>
+      <x>1</x>
+      <name>PLC</name>
+      <y>1</y>
+      <foreground_color>
+        <color red="192" green="192" blue="192" />
+      </foreground_color>
+      <actions hook="false" hook_all="false" />
+      <fc>false</fc>
+      <show_scrollbar>true</show_scrollbar>
+      <font>
+        <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+      </font>
+      <widget typeId="org.csstudio.opibuilder.widgets.linkingContainer" version="1.0.0">
+        <opi_file></opi_file>
+        <border_style>3</border_style>
+        <tooltip></tooltip>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-25f0d7e:158d972c59b:-7e2e</wuid>
+        <scripts>
+          <path pathString="/CSS/emu/Scripts/PlcOpi.js" checkConnect="true" sfe="false" seoe="false">
+            <pv trig="true">loc://pagePLC</pv>
+          </path>
+        </scripts>
+        <height>1060</height>
+        <border_width>1</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <macros>
+          <include_parent_macros>true</include_parent_macros>
+        </macros>
+        <resize_behaviour>0</resize_behaviour>
+        <visible>true</visible>
+        <group_name></group_name>
+        <border_color>
+          <color red="0" green="128" blue="255" />
+        </border_color>
+        <widget_type>Linking Container</widget_type>
+        <background_color>
+          <color name="Container Grey" red="200" green="200" blue="200" />
+        </background_color>
+        <width>2011</width>
+        <x>414</x>
+        <name>Linking Container</name>
+        <y>27</y>
+        <foreground_color>
+          <color red="192" green="192" blue="192" />
+        </foreground_color>
+        <actions hook="false" hook_all="false" />
+        <font>
+          <opifont.name fontName="Cantarell" height="11" style="0">Default</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+        <toggle_button>false</toggle_button>
+        <border_style>14</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)</tooltip>
+        <push_action_index>0</push_action_index>
+        <rules>
+          <rule name="Rule_fault_mode_1,2and3" prop_id="background_color" out_exp="false">
+            <exp bool_exp="pv0 == 1 || pv1==1 ||pv2==1">
+              <value>
+                <color name="Major" red="255" green="0" blue="0" />
+              </value>
+            </exp>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM1</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM2</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM3</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>-25f0d7e:158d972c59b:-7d3b</wuid>
+        <pv_value />
+        <text>Fault mode 1, 2 and 3</text>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>70</height>
+        <border_width>0</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <image></image>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color red="255" green="255" blue="255" />
+        </border_color>
+        <widget_type>Action Button</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Border Grey" red="150" green="150" blue="150" />
+        </background_color>
+        <width>360</width>
+        <x>12</x>
+        <name>Action Button</name>
+        <y>102</y>
+        <style>0</style>
+        <foreground_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false">
+          <action type="WRITE_PV">
+            <pv_name>loc://pagePLC</pv_name>
+            <value>fm123</value>
+            <timeout>10</timeout>
+            <confirm_message></confirm_message>
+            <description></description>
+          </action>
+        </actions>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+        <toggle_button>false</toggle_button>
+        <border_style>14</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)</tooltip>
+        <push_action_index>0</push_action_index>
+        <rules>
+          <rule name="Rule_fault_mode4and5" prop_id="background_color" out_exp="false">
+            <exp bool_exp="pv0==1 || pv1==1">
+              <value>
+                <color name="Major" red="255" green="0" blue="0" />
+              </value>
+            </exp>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM5</pv>
+            <pv trig="true">INFN-SRC:INTK-HMI:FM4</pv>
+          </rule>
+        </rules>
+        <enabled>true</enabled>
+        <wuid>-25f0d7e:158d972c59b:-7d3a</wuid>
+        <pv_value />
+        <text>Fault mode 4 and 5</text>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>70</height>
+        <border_width>0</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <image></image>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color red="255" green="255" blue="255" />
+        </border_color>
+        <widget_type>Action Button</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Border Grey" red="150" green="150" blue="150" />
+        </background_color>
+        <width>360</width>
+        <x>12</x>
+        <name>Action Button_10</name>
+        <y>177</y>
+        <style>0</style>
+        <foreground_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false">
+          <action type="WRITE_PV">
+            <pv_name>loc://pagePLC</pv_name>
+            <value>fm45</value>
+            <timeout>10</timeout>
+            <confirm_message></confirm_message>
+            <description></description>
+          </action>
+        </actions>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+        <toggle_button>false</toggle_button>
+        <border_style>14</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)</tooltip>
+        <push_action_index>0</push_action_index>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-25f0d7e:158d972c59b:-7d39</wuid>
+        <pv_value />
+        <text>Home</text>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>70</height>
+        <border_width>0</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <image></image>
+        <visible>true</visible>
+        <pv_name>loc://pagePLC("home")</pv_name>
+        <border_color>
+          <color red="255" green="255" blue="255" />
+        </border_color>
+        <widget_type>Action Button</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Border Grey" red="150" green="150" blue="150" />
+        </background_color>
+        <width>360</width>
+        <x>12</x>
+        <name>Action Button_6</name>
+        <y>27</y>
+        <style>0</style>
+        <foreground_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false">
+          <action type="WRITE_PV">
+            <pv_name>loc://pagePLC</pv_name>
+            <value>home</value>
+            <timeout>10</timeout>
+            <confirm_message></confirm_message>
+            <description></description>
+          </action>
+        </actions>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+      <widget typeId="org.csstudio.opibuilder.widgets.ActionButton" version="2.0.0">
+        <toggle_button>false</toggle_button>
+        <border_style>14</border_style>
+        <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+        <alarm_pulsing>false</alarm_pulsing>
+        <tooltip>$(pv_name)</tooltip>
+        <push_action_index>0</push_action_index>
+        <rules />
+        <enabled>true</enabled>
+        <wuid>-25f0d7e:158d972c59b:-7d38</wuid>
+        <pv_value />
+        <text>Inputs/outputs value</text>
+        <scripts />
+        <border_alarm_sensitive>false</border_alarm_sensitive>
+        <height>70</height>
+        <border_width>0</border_width>
+        <scale_options>
+          <width_scalable>true</width_scalable>
+          <height_scalable>true</height_scalable>
+          <keep_wh_ratio>false</keep_wh_ratio>
+        </scale_options>
+        <image></image>
+        <visible>true</visible>
+        <pv_name></pv_name>
+        <border_color>
+          <color red="255" green="255" blue="255" />
+        </border_color>
+        <widget_type>Action Button</widget_type>
+        <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+        <background_color>
+          <color name="Container Border Grey" red="150" green="150" blue="150" />
+        </background_color>
+        <width>360</width>
+        <x>12</x>
+        <name>Action Button_13</name>
+        <y>252</y>
+        <style>0</style>
+        <foreground_color>
+          <color name="Black" red="0" green="0" blue="0" />
+        </foreground_color>
+        <actions hook="false" hook_all="false">
+          <action type="WRITE_PV">
+            <pv_name>loc://pagePLC</pv_name>
+            <value>InOut</value>
+            <timeout>10</timeout>
+            <confirm_message></confirm_message>
+            <description></description>
+          </action>
+        </actions>
+        <font>
+          <opifont.name fontName="OpenSans" height="15" style="1">Medium Bold</opifont.name>
+        </font>
+      </widget>
+    </widget>
+  </widget>
+  <widget typeId="org.csstudio.opibuilder.widgets.Rectangle" version="1.0.0">
+    <border_style>0</border_style>
+    <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+    <line_width>1</line_width>
+    <horizontal_fill>true</horizontal_fill>
+    <alarm_pulsing>false</alarm_pulsing>
+    <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+    <rules />
+    <enabled>true</enabled>
+    <wuid>20cc570d:152c6318c71:-19d6</wuid>
+    <transparent>false</transparent>
+    <pv_value />
+    <alpha>255</alpha>
+    <bg_gradient_color>
+      <color name="IO Foreground" red="0" green="0" blue="0" />
+    </bg_gradient_color>
+    <scripts />
+    <border_alarm_sensitive>false</border_alarm_sensitive>
+    <height>80</height>
+    <border_width>2</border_width>
+    <scale_options>
+      <width_scalable>true</width_scalable>
+      <height_scalable>true</height_scalable>
+      <keep_wh_ratio>false</keep_wh_ratio>
+    </scale_options>
+    <visible>true</visible>
+    <pv_name></pv_name>
+    <gradient>false</gradient>
+    <border_color>
+      <color red="0" green="148" blue="202" />
+    </border_color>
+    <anti_alias>true</anti_alias>
+    <line_style>0</line_style>
+    <widget_type>Rectangle</widget_type>
+    <fg_gradient_color>
+      <color name="IO Foreground" red="0" green="0" blue="0" />
+    </fg_gradient_color>
+    <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+    <background_color>
+      <color red="0" green="148" blue="202" />
+    </background_color>
+    <width>2491</width>
+    <x>18</x>
+    <name>Rectangle Template</name>
+    <y>0</y>
+    <fill_level>100.0</fill_level>
+    <foreground_color>
+      <color red="0" green="148" blue="202" />
+    </foreground_color>
+    <actions hook="false" hook_all="false" />
+    <font>
+      <opifont.name fontName="arial" height="10" style="0">IO Normal</opifont.name>
+    </font>
+    <line_color>
+      <color name="IO Line" red="0" green="32" blue="92" />
+    </line_color>
+  </widget>
+  <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+    <border_style>0</border_style>
+    <tooltip></tooltip>
+    <horizontal_alignment>1</horizontal_alignment>
+    <rules />
+    <enabled>false</enabled>
+    <wuid>20cc570d:152c6318c71:-19d2</wuid>
+    <transparent>true</transparent>
+    <auto_size>false</auto_size>
+    <text>EMITTANCE METER</text>
+    <scripts />
+    <height>43</height>
+    <border_width>2</border_width>
+    <scale_options>
+      <width_scalable>true</width_scalable>
+      <height_scalable>true</height_scalable>
+      <keep_wh_ratio>false</keep_wh_ratio>
+    </scale_options>
+    <visible>true</visible>
+    <vertical_alignment>1</vertical_alignment>
+    <border_color>
+      <color name="IO Border" red="215" green="215" blue="215" />
+    </border_color>
+    <widget_type>Label</widget_type>
+    <wrap_words>true</wrap_words>
+    <background_color>
+      <color name="IO Background" red="255" green="255" blue="205" />
+    </background_color>
+    <width>2491</width>
+    <x>18</x>
+    <name>Label Template</name>
+    <y>18</y>
+    <foreground_color>
+      <color red="255" green="255" blue="255" />
+    </foreground_color>
+    <actions hook="false" hook_all="false" />
+    <show_scrollbar>false</show_scrollbar>
+    <font>
+      <fontdata fontName="Titillium" height="28" style="0" />
+    </font>
+  </widget>
+  <widget typeId="org.csstudio.opibuilder.widgets.Label" version="1.0.0">
+    <border_style>0</border_style>
+    <tooltip></tooltip>
+    <horizontal_alignment>1</horizontal_alignment>
+    <rules />
+    <enabled>false</enabled>
+    <wuid>-cae44c:157dd221fed:-6b69</wuid>
+    <transparent>true</transparent>
+    <auto_size>false</auto_size>
+    <text>Status</text>
+    <scripts />
+    <height>20</height>
+    <border_width>2</border_width>
+    <scale_options>
+      <width_scalable>true</width_scalable>
+      <height_scalable>true</height_scalable>
+      <keep_wh_ratio>false</keep_wh_ratio>
+    </scale_options>
+    <visible>true</visible>
+    <vertical_alignment>1</vertical_alignment>
+    <border_color>
+      <color name="IO Border" red="215" green="215" blue="215" />
+    </border_color>
+    <widget_type>Label</widget_type>
+    <wrap_words>false</wrap_words>
+    <background_color>
+      <color name="IO Background" red="255" green="255" blue="205" />
+    </background_color>
+    <width>79</width>
+    <x>2088</x>
+    <name>Label Orientation_7</name>
+    <y>30</y>
+    <foreground_color>
+      <color name="IO Foreground" red="0" green="0" blue="0" />
+    </foreground_color>
+    <actions hook="false" hook_all="false" />
+    <font>
+      <fontdata fontName="Sans" height="10" style="1" />
+    </font>
+  </widget>
+  <widget typeId="org.csstudio.opibuilder.widgets.TextInput" version="2.0.0">
+    <alarm_pulsing>false</alarm_pulsing>
+    <precision>0</precision>
+    <tooltip>$(pv_name)
+$(pv_value)</tooltip>
+    <horizontal_alignment>0</horizontal_alignment>
+    <rules />
+    <pv_value />
+    <auto_size>false</auto_size>
+    <text></text>
+    <rotation_angle>0.0</rotation_angle>
+    <show_units>true</show_units>
+    <height>25</height>
+    <multiline_input>false</multiline_input>
+    <border_width>1</border_width>
+    <visible>true</visible>
+    <pv_name>${PREFIX_SCAN}:$(NAME_MTR).FAZE</pv_name>
+    <selector_type>0</selector_type>
+    <border_color>
+      <color red="0" green="128" blue="255" />
+    </border_color>
+    <precision_from_pv>true</precision_from_pv>
+    <widget_type>Text Input</widget_type>
+    <confirm_message></confirm_message>
+    <name>Text Input_9</name>
+    <style>0</style>
+    <actions hook="false" hook_all="false" />
+    <border_style>3</border_style>
+    <forecolor_alarm_sensitive>false</forecolor_alarm_sensitive>
+    <enabled>true</enabled>
+    <wuid>-cae44c:157dd221fed:-6b63</wuid>
+    <transparent>false</transparent>
+    <scripts />
+    <border_alarm_sensitive>false</border_alarm_sensitive>
+    <scale_options>
+      <width_scalable>true</width_scalable>
+      <height_scalable>true</height_scalable>
+      <keep_wh_ratio>false</keep_wh_ratio>
+    </scale_options>
+    <backcolor_alarm_sensitive>false</backcolor_alarm_sensitive>
+    <format_type>0</format_type>
+    <limits_from_pv>false</limits_from_pv>
+    <background_color>
+      <color name="Black" red="0" green="0" blue="0" />
+    </background_color>
+    <width>322</width>
+    <x>2172</x>
+    <y>27</y>
+    <maximum>1.7976931348623157E308</maximum>
+    <foreground_color>
+      <color name="Major" red="255" green="0" blue="0" />
+    </foreground_color>
+    <minimum>-1.7976931348623157E308</minimum>
+    <font>
+      <opifont.name fontName="OpenSans" height="10" style="1">Small Bold</opifont.name>
+    </font>
+  </widget>
+</display>
\ No newline at end of file
diff --git a/builddir/opi/Scripts/ExtracData.py b/builddir/opi/Scripts/ExtracData.py
new file mode 100644
index 0000000..4a0416f
--- /dev/null
+++ b/builddir/opi/Scripts/ExtracData.py
@@ -0,0 +1,111 @@
+from org.csstudio.opibuilder.scriptUtil import PVUtil
+from os.path import expanduser
+import struct
+import json
+from random import betavariate
+import math
+import array
+import datetime
+import time
+
+localtime=time.localtime(time.time())
+ 
+##### VARS #########
+NameFile="emittance"
+NameFile=NameFile+"_"+str(localtime.tm_year)+"-"+str(localtime.tm_mon)+"-"+str(localtime.tm_mday)+"_"+str(localtime.tm_hour)+"-"+str(localtime.tm_min)+".dat"
+
+NbAngle = 0
+NbAngle= PVUtil.getLong(pvs[1])
+
+NbPos = 0
+NbPos= PVUtil.getLong(pvs[2])
+ 
+Energie = 0
+Energie= PVUtil.getDouble(pvs[3])
+
+Frequence = 0
+Frequence=PVUtil.getDouble(pvs[4])
+
+PasMM = 0
+PasMM=PVUtil.getDouble(pvs[5])
+
+tabCurr=0
+tabCurr=PVUtil.getDoubleArray(pvs[6])
+
+tabAng=0
+tabAng=PVUtil.getDoubleArray(pvs[7])
+
+tabPos=0
+tabPos=PVUtil.getDoubleArray(pvs[8])
+
+###################################################################################
+############################### PLOTWIN ###########################################
+###################################################################################
+
+#### OPEN FILE
+home = expanduser("~")
+PlotFile = open(home+'/data/emit/plotwin/'+NameFile, 'w+')
+PlotFile.write("fichier  emittance: X\n")
+PlotFile.write("HT ion (kV) : %d\n"%(Energie))
+PlotFile.write("frequence (Hz) : %d\n"%(Frequence))
+PlotFile.write("N points temps : 1\n")
+PlotFile.write("pas de position (mm) : %f\n"%(PasMM))
+PlotFile.write("N points  position (mm) : %i\n"%(NbPos))
+PlotFile.write("N points angle (mrad) : %i\n"%(NbAngle))
+ 
+## POSITION
+try:
+	PlotFile.write("vecteur positions (mm) : ")
+	for value in range(0,NbPos):
+    		PlotFile.write("%.2f "%tabPos[value]);
+     		value=value+1
+except IndexError :
+	pass
+	
+## ANGLES
+PlotFile.write("\nvecteur angles (mrad) : ")
+indAngle=0
+for value in range(0,NbAngle):
+    PlotFile.write("%.2f "%tabAng[indAngle]);
+    indAngle=indAngle+NbPos
+
+PlotFile.write("\ntype d'ion : PROTON...")      
+PlotFile.write("\ncolonnes de 1 a 4 : indice de temps / indice position / indice angle / I [Volt] :\n")
+   
+## POSITION/ANGLE/INTENSITY
+indCurrent=0
+indPos=0
+for valuePos in range(0,NbPos):
+    for valueAngle in range(0,NbAngle):
+            PlotFile.write("0\t%i\t%i\t%.4f\n" %(valuePos,valueAngle,tabCurr[indCurrent]));
+            indCurrent=indCurrent+NbPos
+    indPos=indPos+1
+    indCurrent=indPos
+
+PlotFile.close()
+
+
+###################################################################################
+############################### EXTRACT DATA ######################################
+###################################################################################
+
+#### OPEN FILE
+PlotFile = open(home+'/data/emit/averageDataEmit/'+"avg-"+NameFile, 'w+')
+
+## POSITION/ANGLE/INTENSITY
+indAngle=0
+indCurrent=0
+indPos=0
+try:
+	for valuePos in range(0,(NbPos)):	
+			for valueAngle in range(0,NbAngle):
+    				PlotFile.write("\n%.2f\t\t%.2f\t\t%.8f\n " %(tabPos[valuePos],tabAng[indAngle],tabCurr[indCurrent]));
+    				indAngle=indAngle+NbPos
+    				indCurrent=indCurrent+NbPos		
+			indPos=indPos+1
+			indAngle=indPos
+			indCurrent=indPos
+except IndexError :
+	pass
+	
+PlotFile.close()
diff --git a/builddir/opi/Scripts/PlcOpi.js b/builddir/opi/Scripts/PlcOpi.js
new file mode 100644
index 0000000..0c3a04a
--- /dev/null
+++ b/builddir/opi/Scripts/PlcOpi.js
@@ -0,0 +1,19 @@
+importPackage(Packages.org.csstudio.opibuilder.scriptUtil);
+
+var pv0 = PVUtil.getString(pvs[0]);
+
+if (pv0 == "home") {
+	widget.setPropertyValue("opi_file", "");
+	widget.setPropertyValue("opi_file", "/CSS/emu-plc-test/1-Home.opi");
+} else if (pv0 == "fm123") {
+	widget.setPropertyValue("opi_file", "");
+	widget.setPropertyValue("opi_file", "/CSS/emu-plc-test/2-FM1,2,3.opi");
+} else if (pv0 == "fm45") {
+	widget.setPropertyValue("opi_file", "");
+	widget.setPropertyValue("opi_file", "/CSS/emu-plc-test/3-FM4,5.opi");
+} else if (pv0 == "InOut") {
+	widget.setPropertyValue("opi_file", "");
+	widget.setPropertyValue("opi_file", "/CSS/emu-plc-test/4-Inout_value.opi");
+} else {
+	pv0 = "home";
+}
\ No newline at end of file
diff --git a/builddir/startup/EMU.cmd b/builddir/startup/EMU.cmd
new file mode 100644
index 0000000..5a32246
--- /dev/null
+++ b/builddir/startup/EMU.cmd
@@ -0,0 +1,248 @@
+# Required modules ###
+require ifcdaq,0.2.0
+require singlemotion,1.4.6
+require mrfioc2,2.7.13
+require pev,0.1.1
+require ecat2db,0.3.1
+require fastacquisition,1.1.0
+require dataacquisition,1.0.1
+require emu,catane
+require emu-motor-test,catane
+require tpmac,3.11.2
+
+
+### MACROS ###
+# PMAC common macros3       ) 
+epicsEnvSet("PMACPREFIX", "LNS-ISRC-010:PBI-EM-PMAC")
+epicsEnvSet("PMACPORT",   "GEOBRICK_ASYN")
+epicsEnvSet("MOTOR_PORT", "pmac1" )
+epicsEnvSet("NB_AXES", "1" )
+
+# Motor Macros
+epicsEnvSet("EGU",       "mm"   )
+epicsEnvSet("DIR",       "Pos"  )
+epicsEnvSet("MRES",      "0.000249515")
+epicsEnvSet("PREC",      "4"    )
+epicsEnvSet("DHLM",      "4"   )
+epicsEnvSet("DLLM",      "-200"  )
+epicsEnvSet("VELO",      "1.5"    )
+epicsEnvSet("HVEL",      "1.5"    )
+epicsEnvSet("VBAS",      "0.1"  )
+epicsEnvSet("VMAX",      "7"    )
+epicsEnvSet("ACCL",      "10"  )
+epicsEnvSet("BDST",      "0"    )
+epicsEnvSet("INIT",      ""     )
+epicsEnvSet("OFF",       "0"    )
+
+epicsEnvSet("MOTOR_NAME1",  "MTR1")
+epicsEnvSet("AXIS_NO1",     "1")
+
+# Motor Status macros
+epicsEnvSet("SCAN",         "1 second")
+epicsEnvSet("OVERHEAT1",    "MAJOR"   )
+epicsEnvSet("SWITCH_OFF1",  "MINOR"   )
+epicsEnvSet("OVERHEAT2",    "0"       )
+epicsEnvSet("SWITCH_OFF2",  "0"       )
+epicsEnvSet("MOTOR_ERROR1", "0"       )
+epicsEnvSet("MOTOR_ERROR2", "0"       )
+epicsEnvSet("MOTOR_ERROR3", "0"       )
+epicsEnvSet("MOTOR_ERROR4", "0"       )
+
+# EVG Macros 
+epicsEnvSet("SYS"             "SYS0")
+#####NOT NEEDED AT CATANIA epicsEnvSet("EVG"             "EVG0")
+epicsEnvSet("EVG_VMESLOT"     "8")
+
+# EVR Macros
+epicsEnvSet("EVR_PCIDOMAIN",    "0000")
+epicsEnvSet("EVR_PCIBUS",       "05")
+epicsEnvSet("EVR_PCIDEVICE",    "00")
+epicsEnvSet("EVR_PCIFUNCTION",  "0")
+epicsEnvSet("EVR",              "EVR0")
+epicsEnvSet("EVR_PUL0_EVENT",   "14")
+epicsEnvSet("EVR_PUL0_DELAY",   "$(EVR_EV14_OUT0_DELAY=0)")
+epicsEnvSet("EVR_PUL0_WIDTH",   "$(EVR_EV14_OUT0_WIDTH=1000)")
+
+#DAQ macros
+epicsEnvSet("DAQPREFIX",  "LNS-ISRC-010"  )
+epicsEnvSet("DAQBUFSIZE", "1024"         )
+epicsEnvSet("BUFFERSIZE", "40000"         )
+
+#Scanning macros
+epicsEnvSet("SCANPREFIX", "LNS-ISRC-010:PBI-EMV"     )
+epicsEnvSet("SCAN_SLIT", "MTR"          )
+epicsEnvSet("SCAN_EF", "PS"              )
+epicsEnvSet("SCAN_POINTS_EF", "400"     )
+epicsEnvSet("SCAN_POINTS_SLIT", "100"    )
+
+epicsEnvSet(EPICS_CA_MAX_ARRAY_BYTES, 8000000)
+
+# Connection to PMAC and setup for $(NUM_MOTORS) motors
+pmacAsynIPConfigure($(PMACPORT), "10.10.3.42:1025")
+pmacCreateController($(MOTOR_PORT), $(PMACPORT), 0, $(NB_AXES), 50, 300)
+pmacCreateAxis($(MOTOR_PORT), $(AXIS_NO1))
+
+# Initialize EVG
+#####NOT NEEDED AT CATANIA mrmEvgSetupVME($(EVG), $(EVG_VMESLOT), 0x100000, 1, 0x01)
+
+# Initialize EVR
+mrmEvrSetupPCI($(EVR), $(EVR_PCIDOMAIN), $(EVR_PCIBUS), $(EVR_PCIDEVICE), $(EVR_PCIFUNCTION))
+
+# Initialize daq
+ndsCreateDevice(ifcdaq, CARD0, card=0, fmc=2)
+
+### LOAD RECORDS ###
+
+#Load EVG records
+#####NOT NEEDED AT CATANIA dbLoadRecords("evg-vme-230.db", "DEVICE=$(EVG), SYS=$(SYS)")
+
+#Load EVR records
+dbLoadRecords("evr-pmc-230.db", "DEVICE=$(EVR), SYS=$(SYS)")
+dbLoadRecords("evr-softEvent.template", "DEVICE=$(EVR), SYS=$(SYS), EVT=$(EVR_PUL0_EVENT), CODE=$(EVR_PUL0_EVENT)")
+dbLoadRecords("evr-pulserMap.template", "DEVICE=$(EVR), SYS=$(SYS), EVT=$(EVR_PUL0_EVENT), PID=0, F=Trig, ID=0")
+#####NOT NEEDED AT CATANIA dbLoadRecords("evr-pulserMap.template", "DEVICE=$(EVR), SYS=$(SYS), EVT=$(EVR_PUL0_EVENT), PID=1, F=Trig, ID=1")
+
+#
+# Load Single motions records
+#
+
+#
+# Motors
+#
+
+dbLoadRecords("motor.template", "PREFIX=$(PMACPREFIX),MOTOR_NAME=$(MOTOR_NAME1),MOTOR_PORT=$(MOTOR_PORT),AXIS_NO=$(AXIS_NO1),EGU=$(EGU),DIR=$(DIR),MRES=$(MRES),PREC=$(PREC),DHLM=$(DHLM),DLLM=$(DLLM),HVEL=$(HVEL),VELO=$(VELO),VBAS=$(VBAS),VMAX=$(VMAX),ACCL=$(ACCL),BDST=$(BDST),INIT=$(INIT),OFF=$(OFF)")
+
+#dbLoadRecords("get_value_pmac.db")
+#dbLoadRecords("set_value_pmac.db")
+#dbLoadRecords("console.db")
+
+#
+# Motor status
+#
+
+dbLoadRecords("motorStatus.template", "PREFIX=$(PMACPREFIX),MOTOR_NAME=$(MOTOR_NAME1),ASYN_PORT=$(PMACPORT),AXIS_NO=$(AXIS_NO1),SCAN=$(SCAN),EGU=$(EGU),PREC=$(PREC),OVERHEAT1=$(OVERHEAT1),SWITCH_OFF1=$(SWITCH_OFF1),OVERHEAT2=$(OVERHEAT2),SWITCH_OFF2=$(SWITCH_OFF2),MOTOR_ERROR1=$(MOTOR_ERROR1),MOTOR_ERROR2=$(MOTOR_ERROR2),MOTOR_ERROR3=$(MOTOR_ERROR3),MOTOR_ERROR4=$(MOTOR_ERROR4)")
+
+#
+# Homing procedure records
+#
+
+dbLoadRecords("motorHoming.template", "PREFIX=$(PMACPREFIX),MOTOR_NAME=$(MOTOR_NAME1),ASYN_PORT=$(PMACPORT),AXIS_NO=$(AXIS_NO1),PREC=$(PREC),EGU=$(EGU)")
+
+dbLoadRecords("EMU.db", "DEVICE=$(SCANPREFIX), SCAN_SLIT=$(SCAN_SLIT), SCAN_EF=$(SCAN_EF),MTRREC=$(PMACPREFIX):$(MOTOR_NAME1), MAX_POINTS_EF=$(SCAN_POINTS_EF), MAX_POINTS_SLIT=$(SCAN_POINTS_SLIT), DAQNDSPREFIX=$(DAQPREFIX), DAQBUFSIZE=$(DAQBUFSIZE), DET1WF=PBI-EMV-FC:CurrR_Y, DET2WF=PBI-EM-HV1:VoltR_Y, DET3WF=PBI-EM-HV2:VoltR_Y, TR_TL=$(SYS)-$(EVR):Pul0-Ena-Sel, TR_TLTSEL=$(SYS)-$(EVR):Event-$(EVR_PUL0_EVENT)-SP.TIME, PSU_SP=LNS-ISRC-010:PBI-EM:HVhor-SP, PSU_RBV=LNS-ISRC-010:PBI-EM:HVhor-SP, PSU2_SP=LNS-ISRC-010:PBI-EM:HVver-SP, PSU2_RBV=LNS-ISRC-010:PBI-EM:HVver-SP,BUFFERSIZE=$(BUFFERSIZE)")
+
+#
+# Init ETHERCAT module
+ecat2configure(0,500,1,1)
+
+
+#############################################################################
+######################### iocInit ###########################################
+#############################################################################
+iocInit
+
+#### Motor homing
+seq motorHoming "PREFIX=$(PMACPREFIX),MOTOR_NAME=$(MOTOR_NAME1)"
+seq homeMtrAuto "PMACPREFIX=$(PMACPREFIX),MOTOR_NAME1=$(MOTOR_NAME1),DEVICE=$(SCANPREFIX),PREFIX=LNS-ISRC-010"
+seq checkMTRBrake "PMACPREFIX=$(PMACPREFIX),MOTOR_NAME1=$(MOTOR_NAME1),DEVICE=$(SCANPREFIX),PREFIX=LNS-ISRC-010"
+
+#### Simulation of a current with ES4134 from Beckoff
+#seq RampCurrent "PREFIX_PS=LNS-ISRC-010:PBI-EM,CONS_PS2=HVhor-SP,DEVICE=SCAN,SCAN_SLIT=$(SCAN_SLIT)"
+
+
+# SET INTERFACE FROM IFCDAQ TO Allison scanner
+# Forward link wf record to Detector guard
+dbpf $(DAQPREFIX):PBI-EMV-FC:CurrR_Y.FLNK $(SCANPREFIX):DET1-GUARD
+dbpf $(DAQPREFIX):PBI-EM-HV1:VoltR_Y.FLNK $(SCANPREFIX):DET2-GUARD
+dbpf $(DAQPREFIX):PBI-EM-HV2:VoltR_Y.FLNK $(SCANPREFIX):DET3-GUARD
+# Forward link from state record to Detector trigger
+dbpf $(DAQPREFIX):PBI-EM:CARD0-STAT-RB.FLNK $(SCANPREFIX):DAQTRG-DAQSTGUARD
+
+
+# Forward link number of samples rbv to compress N record, so that detetor know number of elements to average over.
+dbpf $(DAQPREFIX):PBI-EM:CARD0:NSAMPLES-RB.FLNK "$(SCANPREFIX):DET1-COMPRESSN"
+
+
+# Set tsel on WF record to event record in EVR
+dbpf $(DAQPREFIX):PBI-EMV-FC:CurrR_Y.TSEL $(SYS)-$(EVR):Event-$(EVR_PUL0_EVENT)-SP.TIME
+dbpf $(DAQPREFIX):PBI-EM-HV1:VoltR_Y.TSEL $(SYS)-$(EVR):Event-$(EVR_PUL0_EVENT)-SP.TIME
+dbpf $(DAQPREFIX):PBI-EM-HV2:VoltR_Y.TSEL $(SYS)-$(EVR):Event-$(EVR_PUL0_EVENT)-SP.TIME
+dbpf $(SYS)-$(EVR):Time-I.TSE -2
+
+############################################################
+################### Configuration Timing ###################
+############################################################
+
+########## TIMING GENERATOR: setup TrgSrc0 to EVENT 14 ######
+## Internal trigger from Mxc1 - TrgSrc0
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVG):TrigEvt0-EvtCode-SP 	 $(EVR_PUL0_EVENT)
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVG):Mxc1-Frequency-SP	 14
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVG):Mxc1-TrigSrc0-SP 	 "Set"
+
+### Setup EVR
+##set the pulser 0 to trigger on output 0
+########## TIMING RECEIVER: setup OUT0 ##############
+
+dbpf $(SYS)-$(EVR):Link-Clk-SP           88.0519    
+dbpf $(SYS)-$(EVR):FrontOut0-Src-SP      0
+dbpf $(SYS)-$(EVR):Pul0-Evt-Trig0-SP 	 $(EVR_PUL0_EVENT)
+dbpf $(SYS)-$(EVR):Pul0-Width-SP         20000
+dbpf $(SYS)-$(EVR):Pul0-Delay-SP         0
+dbpf $(SYS)-$(EVR):FrontOut0-Ena-SP      "Enabled"
+
+### Setup EVR
+##set the pulser 1 to trigger on output 1 for BETSI
+########## TIMING RECEIVER: setup OUT0 ##############
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVR):FrontOut1-Src-SP      1
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVR):Pul1-Evt-Trig1-SP 	 $(EVR_PUL0_EVENT)
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVR):Pul1-Width-SP         20000
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVR):Pul1-Delay-SP         0
+#####NOT NEEDED AT CATANIA  dbpf $(SYS)-$(EVR):FrontOut1-Ena-SP      "Enabled"
+
+### Setup IFCDAQ PVs ###
+# Set trigger repeat to 1
+dbpf $(DAQPREFIX):PBI-EM:CARD0:TriggerRepeat 1
+# Set trigger source to external GPIO
+dbpf $(DAQPREFIX):PBI-EM:CARD0:TRIGGERSOURCE "EXT-GPIO"
+sleep(1)
+dbpf $(DAQPREFIX):PBI-EM:CARD0-STAT ON
+sleep(3)
+dbpf $(DAQPREFIX):PBI-EM:CARD0-STAT RUNNING
+sleep(1)
+dbpf $(DAQPREFIX):PBI-EM:CARD0-STAT RUNNING
+# Set the Frequency to 1MHz
+dbpf $(DAQPREFIX):PBI-EM:CARD0:SAMPLINGRATE 1000000
+
+### Setup reasonable values for sscan record ###
+# Initialize Motor positioners
+dbpf $(SCANPREFIX):$(SCAN_SLIT).P4SP -110
+dbpf $(SCANPREFIX):$(SCAN_SLIT).P4EP -190
+dbpf $(SCANPREFIX):$(SCAN_SLIT).P2SP 1.5
+dbpf $(SCANPREFIX):$(SCAN_SLIT).P2EP 1.5
+dbpf $(SCANPREFIX):$(SCAN_SLIT).P1SP 5
+dbpf $(SCANPREFIX):$(SCAN_SLIT).P1EP 5
+dbpf $(SCANPREFIX):$(SCAN_SLIT).NPTS 11
+#dbpf $(SCANPREFIX):$(SCAN_SLIT).PDLY 0.1
+
+# Initialize Power supply positioners
+dbpf $(SCANPREFIX):PROC-AngleMax-SP 80
+dbpf $(SCANPREFIX):PROC-AngleMin-SP -80
+dbpf $(SCANPREFIX):$(SCAN_EF).NPTS 200
+dbpf $(SCANPREFIX):$(SCAN_EF).PDLY 0.04
+dbpf $(SCANPREFIX):$(SCAN_EF).DDLY 0.02
+dbpf $(SCANPREFIX):$(SCAN_EF).AAWAIT 1
+dbpf $(SCANPREFIX):$(SCAN_EF).P1PR 4
+dbpf $(SCANPREFIX):$(SCAN_EF).P4PR 4
+
+dbpf $(DAQPREFIX):PBI-EM:CARD0:TriggerEdge 1
+dbpf $(DAQPREFIX):PBI-EM:CARD0:NSAMPLES_ms 7
+dbpf $(DAQPREFIX):PBI-EMV:LCURSOR_ms 2
+dbpf $(DAQPREFIX):PBI-EMV:RCURSOR_ms 6
+
+dbpf LNS-ISRC-010:PBI-EMV-FC:CurrR:AVG.MDEL -1
+dbpf LNS-ISRC-010:PBI-EMV-FC:CurrR:AVG.ADEL -1
+dbpf LNS-ISRC-010:PBI-EM-HV1:VoltR:AVG.MDEL -1
+dbpf LNS-ISRC-010:PBI-EM-HV1:VoltR:AVG.ADEL -1
+dbpf LNS-ISRC-010:PBI-EM-HV2:VoltR:AVG.MDEL -1
+dbpf LNS-ISRC-010:PBI-EM-HV2:VoltR:AVG.ADEL -1
+
+
diff --git a/db/EMU_PROCESS.template b/db/EMU_PROCESS.template
index 1743ef9..dca5594 100644
--- a/db/EMU_PROCESS.template
+++ b/db/EMU_PROCESS.template
@@ -3,20 +3,30 @@
 #############################################
 
 record(ao, "$(DEVICE):PROC-AngleMax-SP") {
-  field(FLNK,"$(DEVICE):PROC-VoltMax")
   field(EGU, "mrad")
   field(PINI,"YES")
+  field(FLNK,"$(DEVICE):PROC-VoltMaxP1")
 }
 
-record(calcout, "$(DEVICE):PROC-VoltMax") {
+record(calcout, "$(DEVICE):PROC-VoltMaxP1") {
   field(VAL, "0")
   field(INPA,"$(DEVICE):PROC-AngleMax-SP")
   field(INPB,"$(DEVICE):CALC-FactMRADtoV")
   ### /2000 => conversion in 0/10V  ###
   field(CALC, "(A*B)/2000")
-  field(PREC, "4")  
+  field(PREC, "5")  
   field(EGU,"kV")
-  field(FLNK,"$(DEVICE):PROC-DeltaMaxVolt")  
+  field(OUT,"$(DEVICE):$(SCAN_EF).P4SP PP")
+  field(FLNK,"$(DEVICE):PROC-VoltMaxP2")  
+}
+
+record(calcout,"$(DEVICE):PROC-VoltMaxP2") {
+  field(INPA,"$(DEVICE):PROC-VoltMaxP1")
+  ### DELTA MAX calcul
+  field(CALC, "A>0?A*(-1):A")
+  field(PREC, "5")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE):$(SCAN_EF).P1SP PP")
 }
 
 #############################################
@@ -24,20 +34,30 @@ record(calcout, "$(DEVICE):PROC-VoltMax") {
 #############################################
 
 record(ao, "$(DEVICE):PROC-AngleMin-SP") {
-  field(FLNK,"$(DEVICE):PROC-VoltMin")
   field(EGU, "mrad")
   field(PINI,"YES")
+  field(FLNK,"$(DEVICE):PROC-VoltMinP1")
 }
 
-record(calcout, "$(DEVICE):PROC-VoltMin") {
+record(calcout, "$(DEVICE):PROC-VoltMinP1") {
   field(VAL, "0")
   field(INPA,"$(DEVICE):PROC-AngleMin-SP")
   field(INPB,"$(DEVICE):CALC-FactMRADtoV")
   ### /2000 => conversion in 0/10V
   field(CALC, "(A*B)/2000")
-  field(PREC, "4")  
+  field(PREC, "5")  
   field(EGU,"kV")
-  field(FLNK,"$(DEVICE):PROC-DeltaMaxVolt")  
+  field(OUT,"$(DEVICE):$(SCAN_EF).P4EP PP")
+  field(FLNK,"$(DEVICE):PROC-VoltMinP2")  
+}
+
+record(calcout,"$(DEVICE):PROC-VoltMinP2") {
+  field(INPA,"$(DEVICE):PROC-VoltMinP1")
+  ### DELTA MAX calcul
+  field(CALC, "A*(-1)")
+  field(PREC, "5")  
+  field(EGU,"kV")   
+  field(OUT,"$(DEVICE):$(SCAN_EF).P1EP PP")
 }
 
 #############################################
@@ -64,10 +84,6 @@ record(calcout, "$(DEVICE):PROC-DeltaMinVolt") {
   field(OUT,"$(DEVICE):PROC-VoltMin-SP PP")
 }
 
-record(dfanout,"$(DEVICE):PROC-VoltMax-SP"){
-  field(OUTA,"$(DEVICE):$(SCAN_EF).P1EP PP")
-  field(OUTB,"$(DEVICE):$(SCAN_EF).P4SP PP")
-}
 record(dfanout,"$(DEVICE):PROC-VoltMin-SP"){
   field(OUTA,"$(DEVICE):$(SCAN_EF).P1SP PP")
   field(OUTB,"$(DEVICE):$(SCAN_EF).P4EP PP")
diff --git a/logs.0 b/logs.0
index 7b0b8ef..2e72074 100644
--- a/logs.0
+++ b/logs.0
@@ -1,46 +1,40 @@
-2017-01-25 11:51:49.460 SEVERE [Thread 1] org.csstudio.logging.PluginLogListener (logging) - Unhandled event loop exception
-org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
-	at org.eclipse.swt.SWT.error(SWT.java:4441)
-	at org.eclipse.swt.SWT.error(SWT.java:4356)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:139)
-	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3774)
-	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3412)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
-	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
-	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
-	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
-	at org.csstudio.utility.product.Workbench.runWorkbench(Workbench.java:103)
-	at org.csstudio.startup.application.Application.startApplication(Application.java:264)
-	at org.csstudio.startup.application.Application.start(Application.java:118)
-	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
-	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:497)
-	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
-	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
-	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
-	at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
-Caused by: java.lang.NullPointerException
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.getGeoBoundsFromROI(ROIFigure.java:507)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.updateROIGeoBounds(ROIFigure.java:488)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.access$3(ROIFigure.java:487)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure$3.croppedDataSizeChanged(ROIFigure.java:363)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.updateCroppedDataSize(IntensityGraphFigure.java:1609)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.setDataWidth(IntensityGraphFigure.java:1419)
-	at org.csstudio.opibuilder.widgets.editparts.IntensityGraphEditPart$8.handleChange(IntensityGraphEditPart.java:244)
-	at org.csstudio.opibuilder.properties.WidgetPropertyChangeListener$1.run(WidgetPropertyChangeListener.java:53)
-	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
-	... 26 more
+2017-01-25 17:12:59.457 SEVERE [Thread 50] com.cosylab.epics.caj.impl.CATransport (processRead) - Received payload size (2088976) is larger than configured maximum array size (1600000), disconnecting...
+2017-01-25 17:12:59.457 WARNING [Thread 19267] org.csstudio.opibuilder.util.ErrorHandlerUtil (handleError) - Error from pv connection layer: 
+java.lang.IllegalStateException: Channel not connected.
+	at com.cosylab.epics.caj.CAJChannel.connectionRequiredCheck(CAJChannel.java:1079)
+	at com.cosylab.epics.caj.CAJChannel.get(CAJChannel.java:953)
+	at org.epics.pvmanager.jca.JCAChannelHandler.setup(JCAChannelHandler.java:336)
+	at org.epics.pvmanager.jca.JCAChannelHandler.access$1000(JCAChannelHandler.java:51)
+	at org.epics.pvmanager.jca.JCAChannelHandler$3$1.run(JCAChannelHandler.java:436)
+	at java.lang.Thread.run(Thread.java:745)
+
+2017-01-25 17:12:59.457 WARNING [Thread 19267] org.csstudio.opibuilder.util.ErrorHandlerUtil (handleError) - Error from pv connection layer: 
+java.lang.IllegalStateException: Channel not connected.
+	at com.cosylab.epics.caj.CAJChannel.connectionRequiredCheck(CAJChannel.java:1079)
+	at com.cosylab.epics.caj.CAJChannel.get(CAJChannel.java:953)
+	at org.epics.pvmanager.jca.JCAChannelHandler.setup(JCAChannelHandler.java:336)
+	at org.epics.pvmanager.jca.JCAChannelHandler.access$1000(JCAChannelHandler.java:51)
+	at org.epics.pvmanager.jca.JCAChannelHandler$3$1.run(JCAChannelHandler.java:436)
+	at java.lang.Thread.run(Thread.java:745)
+
+2017-01-25 17:12:59.471 SEVERE [Thread 47] com.cosylab.epics.caj.CAJChannel (resubscribeSubscriptions) - 
+java.lang.IndexOutOfBoundsException
+	at java.nio.Buffer.checkIndex(Buffer.java:546)
+	at java.nio.HeapByteBuffer.putInt(HeapByteBuffer.java:381)
+	at com.cosylab.epics.caj.impl.requests.EventAddRequest.resubscribeSubscription(EventAddRequest.java:167)
+	at com.cosylab.epics.caj.CAJChannel.resubscribeSubscriptions(CAJChannel.java:1278)
+	at com.cosylab.epics.caj.CAJChannel.connectionCompleted(CAJChannel.java:352)
+	at com.cosylab.epics.caj.impl.handlers.CreateChannelResponse.internalHandleResponse(CreateChannelResponse.java:48)
+	at com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler.handleResponse(AbstractCAResponseHandler.java:110)
+	at com.cosylab.epics.caj.impl.CAResponseHandler.handleResponse(CAResponseHandler.java:139)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:509)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:421)
+	at com.cosylab.epics.caj.impl.CATransport.handleEvent(CATransport.java:359)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.handleEvent(LeaderFollowersHandler.java:77)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.processInternal(Reactor.java:400)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.process(Reactor.java:284)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.run(LeaderFollowersHandler.java:91)
+	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
+	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
+	at java.lang.Thread.run(Thread.java:745)
 
-2017-01-25 11:51:49.461 INFO [Thread 1] org.csstudio.opibuilder.widgets.editparts.LinkingContainerEditpart (configureDisplayModel) - /CSS/emu-plc-test/1-Home.opi
-2017-01-25 11:53:41.238 INFO [Thread 1] org.csstudio.opibuilder.widgets.editparts.LinkingContainerEditpart (configureDisplayModel) - 
diff --git a/logs.1 b/logs.1
index d85e68f..078d26f 100644
--- a/logs.1
+++ b/logs.1
@@ -1,136 +1,105 @@
-2017-01-25 11:44:32.646 INFO [Thread 1] org.csstudio.opibuilder.widgets.editparts.LinkingContainerEditpart (configureDisplayModel) - /CSS/emu-plc-test/1-Home.opi
-2017-01-25 11:48:49.905 INFO [Thread 1] org.csstudio.opibuilder.widgets.editparts.LinkingContainerEditpart (configureDisplayModel) - 
-2017-01-25 11:48:50.500 SEVERE [Thread 1] org.csstudio.logging.PluginLogListener (logging) - Unhandled event loop exception
-org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
-	at org.eclipse.swt.SWT.error(SWT.java:4441)
-	at org.eclipse.swt.SWT.error(SWT.java:4356)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:139)
-	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3774)
-	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3412)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
-	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
-	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
-	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
-	at org.csstudio.utility.product.Workbench.runWorkbench(Workbench.java:103)
-	at org.csstudio.startup.application.Application.startApplication(Application.java:264)
-	at org.csstudio.startup.application.Application.start(Application.java:118)
-	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
-	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:497)
-	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
-	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
-	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
-	at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
-Caused by: java.lang.NullPointerException
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.getGeoBoundsFromROI(ROIFigure.java:507)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.updateROIGeoBounds(ROIFigure.java:488)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.access$3(ROIFigure.java:487)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure$3.croppedDataSizeChanged(ROIFigure.java:363)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.updateCroppedDataSize(IntensityGraphFigure.java:1609)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.setDataHeight(IntensityGraphFigure.java:1404)
-	at org.csstudio.opibuilder.widgets.editparts.IntensityGraphEditPart$9.handleChange(IntensityGraphEditPart.java:254)
-	at org.csstudio.opibuilder.properties.WidgetPropertyChangeListener$1.run(WidgetPropertyChangeListener.java:53)
-	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
-	... 26 more
+2017-01-25 17:12:59.456 SEVERE [Thread 50] com.cosylab.epics.caj.CAJChannel (resubscribeSubscriptions) - 
+java.lang.IndexOutOfBoundsException
+	at java.nio.Buffer.checkIndex(Buffer.java:546)
+	at java.nio.HeapByteBuffer.putInt(HeapByteBuffer.java:381)
+	at com.cosylab.epics.caj.impl.requests.EventAddRequest.resubscribeSubscription(EventAddRequest.java:167)
+	at com.cosylab.epics.caj.CAJChannel.resubscribeSubscriptions(CAJChannel.java:1278)
+	at com.cosylab.epics.caj.CAJChannel.connectionCompleted(CAJChannel.java:352)
+	at com.cosylab.epics.caj.impl.handlers.CreateChannelResponse.internalHandleResponse(CreateChannelResponse.java:48)
+	at com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler.handleResponse(AbstractCAResponseHandler.java:110)
+	at com.cosylab.epics.caj.impl.CAResponseHandler.handleResponse(CAResponseHandler.java:139)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:509)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:421)
+	at com.cosylab.epics.caj.impl.CATransport.handleEvent(CATransport.java:359)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.handleEvent(LeaderFollowersHandler.java:77)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.processInternal(Reactor.java:400)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.process(Reactor.java:284)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.run(LeaderFollowersHandler.java:91)
+	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
+	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
+	at java.lang.Thread.run(Thread.java:745)
 
-2017-01-25 11:48:50.500 SEVERE [Thread 1] org.csstudio.logging.PluginLogListener (logging) - Unhandled event loop exception
-org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
-	at org.eclipse.swt.SWT.error(SWT.java:4441)
-	at org.eclipse.swt.SWT.error(SWT.java:4356)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:139)
-	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3774)
-	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3412)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
-	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
-	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
-	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
-	at org.csstudio.utility.product.Workbench.runWorkbench(Workbench.java:103)
-	at org.csstudio.startup.application.Application.startApplication(Application.java:264)
-	at org.csstudio.startup.application.Application.start(Application.java:118)
-	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
-	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:497)
-	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
-	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
-	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
-	at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
-Caused by: java.lang.NullPointerException
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.getGeoBoundsFromROI(ROIFigure.java:507)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.updateROIGeoBounds(ROIFigure.java:488)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.access$3(ROIFigure.java:487)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure$3.croppedDataSizeChanged(ROIFigure.java:363)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.updateCroppedDataSize(IntensityGraphFigure.java:1609)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.setDataWidth(IntensityGraphFigure.java:1419)
-	at org.csstudio.opibuilder.widgets.editparts.IntensityGraphEditPart$8.handleChange(IntensityGraphEditPart.java:244)
-	at org.csstudio.opibuilder.properties.WidgetPropertyChangeListener$1.run(WidgetPropertyChangeListener.java:53)
-	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
-	... 26 more
+2017-01-25 17:12:59.456 SEVERE [Thread 50] com.cosylab.epics.caj.CAJChannel (resubscribeSubscriptions) - 
+java.lang.IndexOutOfBoundsException
+	at java.nio.Buffer.checkIndex(Buffer.java:546)
+	at java.nio.HeapByteBuffer.putInt(HeapByteBuffer.java:381)
+	at com.cosylab.epics.caj.impl.requests.EventAddRequest.resubscribeSubscription(EventAddRequest.java:167)
+	at com.cosylab.epics.caj.CAJChannel.resubscribeSubscriptions(CAJChannel.java:1278)
+	at com.cosylab.epics.caj.CAJChannel.connectionCompleted(CAJChannel.java:352)
+	at com.cosylab.epics.caj.impl.handlers.CreateChannelResponse.internalHandleResponse(CreateChannelResponse.java:48)
+	at com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler.handleResponse(AbstractCAResponseHandler.java:110)
+	at com.cosylab.epics.caj.impl.CAResponseHandler.handleResponse(CAResponseHandler.java:139)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:509)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:421)
+	at com.cosylab.epics.caj.impl.CATransport.handleEvent(CATransport.java:359)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.handleEvent(LeaderFollowersHandler.java:77)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.processInternal(Reactor.java:400)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.process(Reactor.java:284)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.run(LeaderFollowersHandler.java:91)
+	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
+	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
+	at java.lang.Thread.run(Thread.java:745)
 
-2017-01-25 11:48:50.501 INFO [Thread 1] org.csstudio.opibuilder.widgets.editparts.LinkingContainerEditpart (configureDisplayModel) - /CSS/emu-plc-test/1-Home.opi
-2017-01-25 11:51:48.943 INFO [Thread 1] org.csstudio.opibuilder.widgets.editparts.LinkingContainerEditpart (configureDisplayModel) - 
-2017-01-25 11:51:49.459 SEVERE [Thread 1] org.csstudio.logging.PluginLogListener (logging) - Unhandled event loop exception
-org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
-	at org.eclipse.swt.SWT.error(SWT.java:4441)
-	at org.eclipse.swt.SWT.error(SWT.java:4356)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:139)
-	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3774)
-	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3412)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
-	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
-	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
-	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
-	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
-	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
-	at org.csstudio.utility.product.Workbench.runWorkbench(Workbench.java:103)
-	at org.csstudio.startup.application.Application.startApplication(Application.java:264)
-	at org.csstudio.startup.application.Application.start(Application.java:118)
-	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
-	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
-	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
-	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
-	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
-	at java.lang.reflect.Method.invoke(Method.java:497)
-	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
-	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
-	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
-	at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
-Caused by: java.lang.NullPointerException
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.getGeoBoundsFromROI(ROIFigure.java:507)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.updateROIGeoBounds(ROIFigure.java:488)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure.access$3(ROIFigure.java:487)
-	at org.csstudio.swt.widgets.figureparts.ROIFigure$3.croppedDataSizeChanged(ROIFigure.java:363)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.updateCroppedDataSize(IntensityGraphFigure.java:1609)
-	at org.csstudio.swt.widgets.figures.IntensityGraphFigure.setDataHeight(IntensityGraphFigure.java:1404)
-	at org.csstudio.opibuilder.widgets.editparts.IntensityGraphEditPart$9.handleChange(IntensityGraphEditPart.java:254)
-	at org.csstudio.opibuilder.properties.WidgetPropertyChangeListener$1.run(WidgetPropertyChangeListener.java:53)
-	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
-	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:136)
-	... 26 more
+2017-01-25 17:12:59.457 SEVERE [Thread 50] com.cosylab.epics.caj.CAJChannel (resubscribeSubscriptions) - 
+java.lang.IndexOutOfBoundsException
+	at java.nio.Buffer.checkIndex(Buffer.java:546)
+	at java.nio.HeapByteBuffer.putInt(HeapByteBuffer.java:381)
+	at com.cosylab.epics.caj.impl.requests.EventAddRequest.resubscribeSubscription(EventAddRequest.java:167)
+	at com.cosylab.epics.caj.CAJChannel.resubscribeSubscriptions(CAJChannel.java:1278)
+	at com.cosylab.epics.caj.CAJChannel.connectionCompleted(CAJChannel.java:352)
+	at com.cosylab.epics.caj.impl.handlers.CreateChannelResponse.internalHandleResponse(CreateChannelResponse.java:48)
+	at com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler.handleResponse(AbstractCAResponseHandler.java:110)
+	at com.cosylab.epics.caj.impl.CAResponseHandler.handleResponse(CAResponseHandler.java:139)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:509)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:421)
+	at com.cosylab.epics.caj.impl.CATransport.handleEvent(CATransport.java:359)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.handleEvent(LeaderFollowersHandler.java:77)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.processInternal(Reactor.java:400)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.process(Reactor.java:284)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.run(LeaderFollowersHandler.java:91)
+	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
+	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
+	at java.lang.Thread.run(Thread.java:745)
+
+2017-01-25 17:12:59.457 SEVERE [Thread 50] com.cosylab.epics.caj.CAJChannel (resubscribeSubscriptions) - 
+java.lang.IndexOutOfBoundsException
+	at java.nio.Buffer.checkIndex(Buffer.java:546)
+	at java.nio.HeapByteBuffer.putInt(HeapByteBuffer.java:381)
+	at com.cosylab.epics.caj.impl.requests.EventAddRequest.resubscribeSubscription(EventAddRequest.java:167)
+	at com.cosylab.epics.caj.CAJChannel.resubscribeSubscriptions(CAJChannel.java:1278)
+	at com.cosylab.epics.caj.CAJChannel.connectionCompleted(CAJChannel.java:352)
+	at com.cosylab.epics.caj.impl.handlers.CreateChannelResponse.internalHandleResponse(CreateChannelResponse.java:48)
+	at com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler.handleResponse(AbstractCAResponseHandler.java:110)
+	at com.cosylab.epics.caj.impl.CAResponseHandler.handleResponse(CAResponseHandler.java:139)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:509)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:421)
+	at com.cosylab.epics.caj.impl.CATransport.handleEvent(CATransport.java:359)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.handleEvent(LeaderFollowersHandler.java:77)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.processInternal(Reactor.java:400)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.process(Reactor.java:284)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.run(LeaderFollowersHandler.java:91)
+	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
+	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
+	at java.lang.Thread.run(Thread.java:745)
+
+2017-01-25 17:12:59.457 SEVERE [Thread 50] com.cosylab.epics.caj.CAJChannel (resubscribeSubscriptions) - 
+java.lang.IndexOutOfBoundsException
+	at java.nio.Buffer.checkIndex(Buffer.java:546)
+	at java.nio.HeapByteBuffer.putInt(HeapByteBuffer.java:381)
+	at com.cosylab.epics.caj.impl.requests.EventAddRequest.resubscribeSubscription(EventAddRequest.java:167)
+	at com.cosylab.epics.caj.CAJChannel.resubscribeSubscriptions(CAJChannel.java:1278)
+	at com.cosylab.epics.caj.CAJChannel.connectionCompleted(CAJChannel.java:352)
+	at com.cosylab.epics.caj.impl.handlers.CreateChannelResponse.internalHandleResponse(CreateChannelResponse.java:48)
+	at com.cosylab.epics.caj.impl.handlers.AbstractCAResponseHandler.handleResponse(AbstractCAResponseHandler.java:110)
+	at com.cosylab.epics.caj.impl.CAResponseHandler.handleResponse(CAResponseHandler.java:139)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:509)
+	at com.cosylab.epics.caj.impl.CATransport.processRead(CATransport.java:421)
+	at com.cosylab.epics.caj.impl.CATransport.handleEvent(CATransport.java:359)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.handleEvent(LeaderFollowersHandler.java:77)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.processInternal(Reactor.java:400)
+	at com.cosylab.epics.caj.impl.reactor.Reactor.process(Reactor.java:284)
+	at com.cosylab.epics.caj.impl.reactor.lf.LeaderFollowersHandler.run(LeaderFollowersHandler.java:91)
+	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
+	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
+	at java.lang.Thread.run(Thread.java:745)
 
diff --git a/opi/EMU.opi b/opi/EMU.opi
index 5015cc4..9422d06 100644
--- a/opi/EMU.opi
+++ b/opi/EMU.opi
@@ -6373,7 +6373,7 @@ $(pv_value)</tooltip>
         <wuid>4b16a64d:158af4f8f37:-7b9f</wuid>
         <transparent>true</transparent>
         <auto_size>false</auto_size>
-        <text>TENSION MAX</text>
+        <text>Tension MRAD MAX</text>
         <scripts />
         <height>20</height>
         <border_width>2</border_width>
@@ -6392,7 +6392,7 @@ $(pv_value)</tooltip>
         <background_color>
           <color name="IO Background" red="255" green="255" blue="205" />
         </background_color>
-        <width>115</width>
+        <width>168</width>
         <x>36</x>
         <name>Label Orientation_3</name>
         <y>857</y>
@@ -6431,7 +6431,7 @@ $(pv_value)</tooltip>
           <keep_wh_ratio>false</keep_wh_ratio>
         </scale_options>
         <visible>true</visible>
-        <pv_name>${PREFIX_SCAN}:$(PROC)-VoltMax</pv_name>
+        <pv_name>${PREFIX_SCAN}:$(PROC)-VoltMaxP1</pv_name>
         <vertical_alignment>1</vertical_alignment>
         <border_color>
           <color red="0" green="128" blue="255" />
@@ -6445,7 +6445,7 @@ $(pv_value)</tooltip>
           <color red="70" green="70" blue="70" />
         </background_color>
         <width>160</width>
-        <x>168</x>
+        <x>209</x>
         <name>Text Update</name>
         <y>851</y>
         <foreground_color>
@@ -6483,7 +6483,7 @@ $(pv_value)</tooltip>
           <keep_wh_ratio>false</keep_wh_ratio>
         </scale_options>
         <visible>true</visible>
-        <pv_name>${PREFIX_SCAN}:$(PROC)-VoltMin</pv_name>
+        <pv_name>${PREFIX_SCAN}:$(PROC)-VoltMinP1</pv_name>
         <vertical_alignment>1</vertical_alignment>
         <border_color>
           <color red="0" green="128" blue="255" />
@@ -6497,7 +6497,7 @@ $(pv_value)</tooltip>
           <color red="70" green="70" blue="70" />
         </background_color>
         <width>160</width>
-        <x>168</x>
+        <x>209</x>
         <name>Text Update_1</name>
         <y>893</y>
         <foreground_color>
@@ -6517,9 +6517,9 @@ $(pv_value)</tooltip>
         <wuid>4b16a64d:158af4f8f37:-7ae3</wuid>
         <transparent>true</transparent>
         <auto_size>false</auto_size>
-        <text>TENSION MIN</text>
+        <text>Tension MRAD MIN</text>
         <scripts />
-        <height>20</height>
+        <height>25</height>
         <border_width>2</border_width>
         <scale_options>
           <width_scalable>true</width_scalable>
@@ -6536,7 +6536,7 @@ $(pv_value)</tooltip>
         <background_color>
           <color name="IO Background" red="255" green="255" blue="205" />
         </background_color>
-        <width>115</width>
+        <width>168</width>
         <x>36</x>
         <name>Label Orientation_3</name>
         <y>899</y>
diff --git a/startup/EMU.cmd b/startup/EMU.cmd
index 631bd02..5a32246 100644
--- a/startup/EMU.cmd
+++ b/startup/EMU.cmd
@@ -230,6 +230,8 @@ dbpf $(SCANPREFIX):$(SCAN_EF).NPTS 200
 dbpf $(SCANPREFIX):$(SCAN_EF).PDLY 0.04
 dbpf $(SCANPREFIX):$(SCAN_EF).DDLY 0.02
 dbpf $(SCANPREFIX):$(SCAN_EF).AAWAIT 1
+dbpf $(SCANPREFIX):$(SCAN_EF).P1PR 4
+dbpf $(SCANPREFIX):$(SCAN_EF).P4PR 4
 
 dbpf $(DAQPREFIX):PBI-EM:CARD0:TriggerEdge 1
 dbpf $(DAQPREFIX):PBI-EM:CARD0:NSAMPLES_ms 7
-- 
GitLab