diff --git a/deploy/packaging/debian/rfxdevices.noarch b/deploy/packaging/debian/rfxdevices.noarch
index d34ed467e0..278d075a04 100644
--- a/deploy/packaging/debian/rfxdevices.noarch
+++ b/deploy/packaging/debian/rfxdevices.noarch
@@ -16,6 +16,7 @@
./usr/local/mdsplus/pydevices/RfxDevices/DIO2_ENCDEC.py
./usr/local/mdsplus/pydevices/RfxDevices/DIO4.py
./usr/local/mdsplus/pydevices/RfxDevices/DTACQ_SUPERVISOR.py
+./usr/local/mdsplus/pydevices/RfxDevices/ELAD.py
./usr/local/mdsplus/pydevices/RfxDevices/ELPROBES_CFG.py
./usr/local/mdsplus/pydevices/RfxDevices/EPFE.py
./usr/local/mdsplus/pydevices/RfxDevices/EPFEM.py
@@ -61,6 +62,7 @@
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_DTT.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_DTT_PCS.py
+./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_DTT_VS.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_FLUXMAP.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_GENERIC.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_LEV_CTRLR.py
@@ -132,6 +134,7 @@
./usr/local/mdsplus/pydevices/RfxDevices/SPIDER_SM.py
./usr/local/mdsplus/pydevices/RfxDevices/STK_TEMP.py
./usr/local/mdsplus/pydevices/RfxDevices/STREAM_SETUP.py
+./usr/local/mdsplus/pydevices/RfxDevices/TRIG_HUB.py
./usr/local/mdsplus/pydevices/RfxDevices/ZELOS2150GV.py
./usr/local/mdsplus/pydevices/RfxDevices/__init__.py
./usr/local/mdsplus/pydevices/RfxDevices/_version.py
@@ -846,6 +849,7 @@
./usr/local/mdsplus/tdi/RfxDevices/pxdtest.fun
./usr/local/mdsplus/tdi/RfxDevices/sawtooth.fun
./usr/local/mdsplus/tdi/RfxDevices/sawtooth1.fun
+./usr/local/mdsplus/tdi/RfxDevices/setAbsoluteTime.py
./usr/local/mdsplus/tdi/RfxDevices/setversion.fun
./usr/local/mdsplus/tdi/RfxDevices/shotsDate.fun
./usr/local/mdsplus/tdi/RfxDevices/sigBit.fun
diff --git a/deploy/packaging/redhat/rfxdevices.noarch b/deploy/packaging/redhat/rfxdevices.noarch
index 86cf20bab8..041642ad7e 100644
--- a/deploy/packaging/redhat/rfxdevices.noarch
+++ b/deploy/packaging/redhat/rfxdevices.noarch
@@ -17,6 +17,7 @@
./usr/local/mdsplus/pydevices/RfxDevices/DIO2_ENCDEC.py
./usr/local/mdsplus/pydevices/RfxDevices/DIO4.py
./usr/local/mdsplus/pydevices/RfxDevices/DTACQ_SUPERVISOR.py
+./usr/local/mdsplus/pydevices/RfxDevices/ELAD.py
./usr/local/mdsplus/pydevices/RfxDevices/ELPROBES_CFG.py
./usr/local/mdsplus/pydevices/RfxDevices/EPFE.py
./usr/local/mdsplus/pydevices/RfxDevices/EPFEM.py
@@ -62,6 +63,7 @@
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_DTT.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_DTT_PCS.py
+./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_DTT_VS.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_FLUXMAP.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_GENERIC.py
./usr/local/mdsplus/pydevices/RfxDevices/MARTE2_SIMULINK_LEV_CTRLR.py
@@ -133,6 +135,7 @@
./usr/local/mdsplus/pydevices/RfxDevices/SPIDER_SM.py
./usr/local/mdsplus/pydevices/RfxDevices/STK_TEMP.py
./usr/local/mdsplus/pydevices/RfxDevices/STREAM_SETUP.py
+./usr/local/mdsplus/pydevices/RfxDevices/TRIG_HUB.py
./usr/local/mdsplus/pydevices/RfxDevices/ZELOS2150GV.py
./usr/local/mdsplus/pydevices/RfxDevices/__init__.py
./usr/local/mdsplus/pydevices/RfxDevices/_version.py
@@ -848,6 +851,7 @@
./usr/local/mdsplus/tdi/RfxDevices/pxdtest.fun
./usr/local/mdsplus/tdi/RfxDevices/sawtooth.fun
./usr/local/mdsplus/tdi/RfxDevices/sawtooth1.fun
+./usr/local/mdsplus/tdi/RfxDevices/setAbsoluteTime.py
./usr/local/mdsplus/tdi/RfxDevices/setversion.fun
./usr/local/mdsplus/tdi/RfxDevices/shotsDate.fun
./usr/local/mdsplus/tdi/RfxDevices/sigBit.fun
diff --git a/java/jdevices/src/main/java/RFX_RPADCSetup.java b/java/jdevices/src/main/java/RFX_RPADCSetup.java
index 6b0db7d65a..79492a9b3b 100644
--- a/java/jdevices/src/main/java/RFX_RPADCSetup.java
+++ b/java/jdevices/src/main/java/RFX_RPADCSetup.java
@@ -55,17 +55,21 @@ private void initComponents() {
deviceField10 = new DeviceField();
deviceField6 = new DeviceField();
deviceField3 = new DeviceField();
+ jPanel9 = new javax.swing.JPanel();
+ deviceField12 = new DeviceField();
+ deviceField13 = new DeviceField();
+ deviceField14 = new DeviceField();
jPanel5 = new javax.swing.JPanel();
deviceField5 = new DeviceField();
- setDeviceProvider("ropc1.rfx.local:8100");
+ setDeviceProvider("localhost:8000");
setDeviceTitle("RedPitaya ADC");
setDeviceType("RFX_RPADC");
setHeight(300);
setWidth(800);
getContentPane().add(deviceButtons1, java.awt.BorderLayout.PAGE_END);
- jPanel1.setLayout(new java.awt.GridLayout(7, 1));
+ jPanel1.setLayout(new java.awt.GridLayout(8, 1));
deviceField1.setIdentifier("");
deviceField1.setLabelString("Comment:");
@@ -112,7 +116,7 @@ private void initComponents() {
jPanel1.add(jPanel4);
- deviceChoice4.setChoiceItems(new String[] {"INTERNAL", "EXTERNAL", "SYNC", "TRIG_EXTERNAL", "TRIG_SYNC"});
+ deviceChoice4.setChoiceItems(new String[] {"INTERNAL", "TRIG_EXTERNAL", "EXTERNAL", "HIGHWAY"});
deviceChoice4.setIdentifier("");
deviceChoice4.setLabelString("Clock Mode:");
deviceChoice4.setOffsetNid(14);
@@ -158,13 +162,33 @@ private void initComponents() {
jPanel8.add(deviceField6);
deviceField3.setIdentifier("");
- deviceField3.setLabelString("Dead time: ");
- deviceField3.setNumCols(8);
- deviceField3.setOffsetNid(34);
+ deviceField3.setLabelString("Timing Highway event code: ");
+ deviceField3.setNumCols(4);
+ deviceField3.setOffsetNid(23);
jPanel8.add(deviceField3);
jPanel1.add(jPanel8);
+ deviceField12.setIdentifier("");
+ deviceField12.setLabelString("Dead Time(s):");
+ deviceField12.setNumCols(6);
+ deviceField12.setOffsetNid(34);
+ jPanel9.add(deviceField12);
+
+ deviceField13.setIdentifier("");
+ deviceField13.setLabelString("Offset A (raw):");
+ deviceField13.setNumCols(6);
+ deviceField13.setOffsetNid(35);
+ jPanel9.add(deviceField13);
+
+ deviceField14.setIdentifier("");
+ deviceField14.setLabelString("Offset B (raw): ");
+ deviceField14.setNumCols(6);
+ deviceField14.setOffsetNid(22);
+ jPanel9.add(deviceField14);
+
+ jPanel1.add(jPanel9);
+
deviceField5.setIdentifier("");
deviceField5.setLabelString("Trigger: ");
deviceField5.setNumCols(35);
@@ -186,6 +210,9 @@ private void initComponents() {
private DeviceField deviceField1;
private DeviceField deviceField10;
private DeviceField deviceField11;
+ private DeviceField deviceField12;
+ private DeviceField deviceField13;
+ private DeviceField deviceField14;
private DeviceField deviceField2;
private DeviceField deviceField3;
private DeviceField deviceField4;
@@ -202,5 +229,6 @@ private void initComponents() {
private javax.swing.JPanel jPanel6;
private javax.swing.JPanel jPanel7;
private javax.swing.JPanel jPanel8;
+ private javax.swing.JPanel jPanel9;
// End of variables declaration//GEN-END:variables
}
diff --git a/java/jdevices/src/main/java/TRIG_HUBSetup.java b/java/jdevices/src/main/java/TRIG_HUBSetup.java
new file mode 100644
index 0000000000..39a0d6ecce
--- /dev/null
+++ b/java/jdevices/src/main/java/TRIG_HUBSetup.java
@@ -0,0 +1,358 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+/**
+ *
+ * @author mdsplus
+ */
+public class TRIG_HUBSetup extends DeviceSetup {
+
+ /**
+ * Creates new form TRIG_HUBSetup
+ */
+ public TRIG_HUBSetup() {
+ initComponents();
+ }
+
+ /**
+ * This method is called from within the constructor to initialize the form.
+ * WARNING: Do NOT modify this code. The content of this method is always
+ * regenerated by the Form Editor.
+ */
+ @SuppressWarnings("unchecked")
+ // //GEN-BEGIN:initComponents
+ private void initComponents() {
+
+ jPanel1 = new javax.swing.JPanel();
+ jPanel2 = new javax.swing.JPanel();
+ deviceField1 = new DeviceField();
+ deviceField2 = new DeviceField();
+ jPanel3 = new javax.swing.JPanel();
+ deviceField3 = new DeviceField();
+ jPanel4 = new javax.swing.JPanel();
+ deviceField4 = new DeviceField();
+ deviceField5 = new DeviceField();
+ deviceField6 = new DeviceField();
+ deviceField7 = new DeviceField();
+ deviceField8 = new DeviceField();
+ deviceButtons1 = new DeviceButtons();
+ jTabbedPane1 = new javax.swing.JTabbedPane();
+ jPanel5 = new javax.swing.JPanel();
+ jPanel6 = new javax.swing.JPanel();
+ deviceField9 = new DeviceField();
+ deviceField10 = new DeviceField();
+ jPanel7 = new javax.swing.JPanel();
+ deviceField11 = new DeviceField();
+ jPanel8 = new javax.swing.JPanel();
+ jPanel9 = new javax.swing.JPanel();
+ deviceField12 = new DeviceField();
+ deviceField13 = new DeviceField();
+ jPanel10 = new javax.swing.JPanel();
+ deviceField14 = new DeviceField();
+ jPanel11 = new javax.swing.JPanel();
+ jPanel12 = new javax.swing.JPanel();
+ deviceField15 = new DeviceField();
+ deviceField16 = new DeviceField();
+ jPanel13 = new javax.swing.JPanel();
+ deviceField17 = new DeviceField();
+ jPanel14 = new javax.swing.JPanel();
+ jPanel15 = new javax.swing.JPanel();
+ deviceField18 = new DeviceField();
+ deviceField19 = new DeviceField();
+ jPanel16 = new javax.swing.JPanel();
+ deviceField20 = new DeviceField();
+ jPanel17 = new javax.swing.JPanel();
+ jPanel18 = new javax.swing.JPanel();
+ deviceField21 = new DeviceField();
+ deviceField22 = new DeviceField();
+ jPanel19 = new javax.swing.JPanel();
+ deviceField23 = new DeviceField();
+ jPanel20 = new javax.swing.JPanel();
+ jPanel21 = new javax.swing.JPanel();
+ deviceField24 = new DeviceField();
+ deviceField25 = new DeviceField();
+ jPanel22 = new javax.swing.JPanel();
+ deviceField26 = new DeviceField();
+
+ setDeviceProvider("localhost:8101");
+ setDeviceTitle("Trigger Hub");
+ setDeviceType("TRIG_HUB");
+ setHeight(300);
+ setWidth(750);
+
+ jPanel1.setLayout(new java.awt.GridLayout(3, 1));
+
+ deviceField1.setIdentifier("");
+ deviceField1.setLabelString("Comment: ");
+ deviceField1.setNumCols(20);
+ deviceField1.setOffsetNid(1);
+ deviceField1.setTextOnly(true);
+ jPanel2.add(deviceField1);
+
+ deviceField2.setIdentifier("");
+ deviceField2.setLabelString("IP: ");
+ deviceField2.setOffsetNid(2);
+ deviceField2.setTextOnly(true);
+ jPanel2.add(deviceField2);
+
+ jPanel1.add(jPanel2);
+
+ deviceField3.setIdentifier("");
+ deviceField3.setLabelString("RP Signal:");
+ deviceField3.setNumCols(25);
+ deviceField3.setOffsetNid(3);
+ jPanel3.add(deviceField3);
+
+ jPanel1.add(jPanel3);
+
+ deviceField4.setIdentifier("");
+ deviceField4.setLabelString("Parent Idx:");
+ deviceField4.setNumCols(4);
+ deviceField4.setOffsetNid(9);
+ jPanel4.add(deviceField4);
+
+ deviceField5.setIdentifier("");
+ deviceField5.setLabelString("Child 1 Idx: ");
+ deviceField5.setNumCols(4);
+ deviceField5.setOffsetNid(10);
+ jPanel4.add(deviceField5);
+
+ deviceField6.setIdentifier("");
+ deviceField6.setLabelString("Child 2 Idx: ");
+ deviceField6.setNumCols(4);
+ deviceField6.setOffsetNid(11);
+ jPanel4.add(deviceField6);
+
+ deviceField7.setIdentifier("");
+ deviceField7.setLabelString("Child 3 Idx: ");
+ deviceField7.setNumCols(4);
+ deviceField7.setOffsetNid(12);
+ jPanel4.add(deviceField7);
+
+ deviceField8.setIdentifier("");
+ deviceField8.setLabelString("Child 4 Idx: ");
+ deviceField8.setNumCols(4);
+ deviceField8.setOffsetNid(13);
+ jPanel4.add(deviceField8);
+
+ jPanel1.add(jPanel4);
+
+ getContentPane().add(jPanel1, java.awt.BorderLayout.PAGE_START);
+ getContentPane().add(deviceButtons1, java.awt.BorderLayout.PAGE_END);
+
+ jPanel5.setLayout(new java.awt.GridLayout(2, 1));
+
+ deviceField9.setIdentifier("");
+ deviceField9.setLabelString("Delay: ");
+ deviceField9.setNumCols(20);
+ deviceField9.setOffsetNid(15);
+ jPanel6.add(deviceField9);
+
+ deviceField10.setIdentifier("");
+ deviceField10.setLabelString("Hub Path: ");
+ deviceField10.setNumCols(25);
+ deviceField10.setOffsetNid(16);
+ jPanel6.add(deviceField10);
+
+ jPanel5.add(jPanel6);
+
+ deviceField11.setIdentifier("");
+ deviceField11.setLabelString("In Signal Path: ");
+ deviceField11.setNumCols(30);
+ deviceField11.setOffsetNid(17);
+ jPanel7.add(deviceField11);
+
+ jPanel5.add(jPanel7);
+
+ jTabbedPane1.addTab("In1", jPanel5);
+
+ jPanel8.setLayout(new java.awt.GridLayout(2, 1));
+
+ deviceField12.setIdentifier("");
+ deviceField12.setLabelString("Delay: ");
+ deviceField12.setNumCols(20);
+ deviceField12.setOffsetNid(20);
+ jPanel9.add(deviceField12);
+
+ deviceField13.setIdentifier("");
+ deviceField13.setLabelString("Hub Path: ");
+ deviceField13.setNumCols(25);
+ deviceField13.setOffsetNid(21);
+ jPanel9.add(deviceField13);
+
+ jPanel8.add(jPanel9);
+
+ deviceField14.setIdentifier("");
+ deviceField14.setLabelString("In Signal Path: ");
+ deviceField14.setNumCols(30);
+ deviceField14.setOffsetNid(22);
+ jPanel10.add(deviceField14);
+
+ jPanel8.add(jPanel10);
+
+ jTabbedPane1.addTab("In2", jPanel8);
+
+ jPanel11.setLayout(new java.awt.GridLayout(2, 1));
+
+ deviceField15.setIdentifier("");
+ deviceField15.setLabelString("Delay: ");
+ deviceField15.setNumCols(20);
+ deviceField15.setOffsetNid(25);
+ jPanel12.add(deviceField15);
+
+ deviceField16.setIdentifier("");
+ deviceField16.setLabelString("Hub Path: ");
+ deviceField16.setNumCols(25);
+ deviceField16.setOffsetNid(26);
+ jPanel12.add(deviceField16);
+
+ jPanel11.add(jPanel12);
+
+ deviceField17.setIdentifier("");
+ deviceField17.setLabelString("In Signal Path: ");
+ deviceField17.setNumCols(30);
+ deviceField17.setOffsetNid(27);
+ jPanel13.add(deviceField17);
+
+ jPanel11.add(jPanel13);
+
+ jTabbedPane1.addTab("In3", jPanel11);
+
+ jPanel14.setLayout(new java.awt.GridLayout(2, 1));
+
+ deviceField18.setIdentifier("");
+ deviceField18.setLabelString("Delay: ");
+ deviceField18.setNumCols(20);
+ deviceField18.setOffsetNid(30);
+ jPanel15.add(deviceField18);
+
+ deviceField19.setIdentifier("");
+ deviceField19.setLabelString("Hub Path: ");
+ deviceField19.setNumCols(25);
+ deviceField19.setOffsetNid(31);
+ jPanel15.add(deviceField19);
+
+ jPanel14.add(jPanel15);
+
+ deviceField20.setIdentifier("");
+ deviceField20.setLabelString("In Signal Path: ");
+ deviceField20.setNumCols(30);
+ deviceField20.setOffsetNid(32);
+ jPanel16.add(deviceField20);
+
+ jPanel14.add(jPanel16);
+
+ jTabbedPane1.addTab("In4", jPanel14);
+
+ jPanel17.setLayout(new java.awt.GridLayout(2, 1));
+
+ deviceField21.setIdentifier("");
+ deviceField21.setLabelString("Delay: ");
+ deviceField21.setNumCols(20);
+ deviceField21.setOffsetNid(35);
+ jPanel18.add(deviceField21);
+
+ deviceField22.setIdentifier("");
+ deviceField22.setLabelString("Hub Path: ");
+ deviceField22.setNumCols(25);
+ deviceField22.setOffsetNid(36);
+ jPanel18.add(deviceField22);
+
+ jPanel17.add(jPanel18);
+
+ deviceField23.setIdentifier("");
+ deviceField23.setLabelString("In Signal Path: ");
+ deviceField23.setNumCols(30);
+ deviceField23.setOffsetNid(37);
+ jPanel19.add(deviceField23);
+
+ jPanel17.add(jPanel19);
+
+ jTabbedPane1.addTab("In5", jPanel17);
+
+ jPanel20.setLayout(new java.awt.GridLayout(2, 1));
+
+ deviceField24.setIdentifier("");
+ deviceField24.setLabelString("Delay: ");
+ deviceField24.setNumCols(20);
+ deviceField24.setOffsetNid(40);
+ jPanel21.add(deviceField24);
+
+ deviceField25.setIdentifier("");
+ deviceField25.setLabelString("Hub Path: ");
+ deviceField25.setNumCols(25);
+ deviceField25.setOffsetNid(41);
+ jPanel21.add(deviceField25);
+
+ jPanel20.add(jPanel21);
+
+ deviceField26.setIdentifier("");
+ deviceField26.setLabelString("In Signal Path: ");
+ deviceField26.setNumCols(30);
+ deviceField26.setOffsetNid(42);
+ jPanel22.add(deviceField26);
+
+ jPanel20.add(jPanel22);
+
+ jTabbedPane1.addTab("In6", jPanel20);
+
+ getContentPane().add(jTabbedPane1, java.awt.BorderLayout.CENTER);
+ }// //GEN-END:initComponents
+
+
+ // Variables declaration - do not modify//GEN-BEGIN:variables
+ private DeviceButtons deviceButtons1;
+ private DeviceField deviceField1;
+ private DeviceField deviceField10;
+ private DeviceField deviceField11;
+ private DeviceField deviceField12;
+ private DeviceField deviceField13;
+ private DeviceField deviceField14;
+ private DeviceField deviceField15;
+ private DeviceField deviceField16;
+ private DeviceField deviceField17;
+ private DeviceField deviceField18;
+ private DeviceField deviceField19;
+ private DeviceField deviceField2;
+ private DeviceField deviceField20;
+ private DeviceField deviceField21;
+ private DeviceField deviceField22;
+ private DeviceField deviceField23;
+ private DeviceField deviceField24;
+ private DeviceField deviceField25;
+ private DeviceField deviceField26;
+ private DeviceField deviceField3;
+ private DeviceField deviceField4;
+ private DeviceField deviceField5;
+ private DeviceField deviceField6;
+ private DeviceField deviceField7;
+ private DeviceField deviceField8;
+ private DeviceField deviceField9;
+ private javax.swing.JPanel jPanel1;
+ private javax.swing.JPanel jPanel10;
+ private javax.swing.JPanel jPanel11;
+ private javax.swing.JPanel jPanel12;
+ private javax.swing.JPanel jPanel13;
+ private javax.swing.JPanel jPanel14;
+ private javax.swing.JPanel jPanel15;
+ private javax.swing.JPanel jPanel16;
+ private javax.swing.JPanel jPanel17;
+ private javax.swing.JPanel jPanel18;
+ private javax.swing.JPanel jPanel19;
+ private javax.swing.JPanel jPanel2;
+ private javax.swing.JPanel jPanel20;
+ private javax.swing.JPanel jPanel21;
+ private javax.swing.JPanel jPanel22;
+ private javax.swing.JPanel jPanel3;
+ private javax.swing.JPanel jPanel4;
+ private javax.swing.JPanel jPanel5;
+ private javax.swing.JPanel jPanel6;
+ private javax.swing.JPanel jPanel7;
+ private javax.swing.JPanel jPanel8;
+ private javax.swing.JPanel jPanel9;
+ private javax.swing.JTabbedPane jTabbedPane1;
+ // End of variables declaration//GEN-END:variables
+}
diff --git a/java/jdevices/src/main/resources/RFX_RPADCSetup.form b/java/jdevices/src/main/resources/RFX_RPADCSetup.form
index 66722a6802..7614b2500a 100644
--- a/java/jdevices/src/main/resources/RFX_RPADCSetup.form
+++ b/java/jdevices/src/main/resources/RFX_RPADCSetup.form
@@ -2,7 +2,7 @@