diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/pressure.js b/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/pressure.js
deleted file mode 100644
index 69bc63fca2bcd99120cd0ad3346e12efd6585517..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/pressure.js
+++ /dev/null
@@ -1,78 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var tooltip  = "N/A";
-
-var debug = widget.getEffectiveMacros().getValue("DEBUG");
-if (debug) {
-	debug = debug[0];
-	switch (debug) {
-		case '1':
-		case 'Y':
-		case 'y':
-		case 'T':
-		case 't':
-			debug = true;
-			break;
-
-		default:
-			debug = false;
-	}
-}
-else
-	debug = false;
-
-if (debug)
-	Logger = org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger();
-else {
-	Logger = new Object();
-	Logger.info = function() {}
-	Logger.warning = function() {}
-	Logger.severe = function(text) { org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe(text);}
-}
-
-function log_pv(pv) {
-	try {
-		Logger.info(pv + ": " + PVUtil.getString(pv));
-	} catch (err) {
-		Logger.severe(err);
-	}
-}
-
-try {
-	var pvStat   = PVUtil.getString(pvs[0]);
-	var pvPrsStr = PVUtil.getString(pvs[2]);
-	var pvUnit   = PVUtil.getString(pvs[3]);
-
-	log_pv(pvs[0]);
-	log_pv(pvs[1]);
-	log_pv(pvs[2]);
-
-	var pressure;
-	try {
-		var vtype = PVUtil.getVType(pvs[1]);
-
-		FormatOption = org.csstudio.display.builder.model.properties.FormatOption;
-		FormatOptionHandler = org.csstudio.display.builder.model.util.FormatOptionHandler;
-
-		pressure = FormatOptionHandler.format(vtype, FormatOption.EXPONENTIAL, 3, true);
-	} catch (err) {
-	}
-
-	if (pvStat == "ON") {
-		if (!pressure)
-			tooltip = pvPrsStr + " " + pvUnit;
-		else
-			tooltip = pressure;
-	} else if (pvStat == "OVER-RANGE" || pvStat == "UNDER-RANGE") {
-		if (!pressure)
-			tooltip = PVUtil.getDouble(pvs[1]) + " " + pvUnit;
-		else
-			tooltip = pressure;
-	} else
-		tooltip = pvPrsStr;
-} catch (err) {
-	Logger.severe(err);
-}
-
-widget.setPropertyValue("tooltip", tooltip);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/pressure.py b/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/pressure.py
new file mode 100644
index 0000000000000000000000000000000000000000..daf29b6277f59c31bbab8fb9d9c622b9be4240a1
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/pressure.py
@@ -0,0 +1,43 @@
+from org.csstudio.display.builder.runtime.script import PVUtil
+from org.csstudio.display.builder.runtime.script import ScriptUtil
+
+tooltip  = "N/A"
+
+try:
+    pvStat   = PVUtil.getString(pvs[0]).upper()
+    pvPrsStr = PVUtil.getString(pvs[2])
+    pvUnit   = PVUtil.getString(pvs[3])
+
+    try:
+        from org.phoebus.ui.vtype import FormatOption, FormatOptionHandler
+    except ImportError:
+        try:
+            from org.csstudio.display.builder.model.properties import FormatOption
+            from org.csstudio.display.builder.model.util import FormatOptionHandler
+        except Exception as e:
+            ScriptUtil.getLogger().severe(str(e))
+
+    try:
+        vtype = PVUtil.getVType(pvs[1])
+
+        pressure = FormatOptionHandler.format(vtype, FormatOption.EXPONENTIAL, 2, True)
+    except Exception as e:
+        ScriptUtil.getLogger().severe(str(e))
+        pressure = None
+
+    if pvStat == "ON":
+        if pressure is None:
+            tooltip = pvPrsStr + " " + pvUnit
+        else:
+            tooltip = pressure
+    elif pvStat == "OVER-RANGE" or pvStat == "UNDER-RANGE":
+        if pressure is None:
+            tooltip = str(PVUtil.getDouble(pvs[1])) + " " + pvUnit
+        else:
+            tooltip = pressure
+    else:
+        tooltip = pvPrsStr
+except Exception as e:
+    ScriptUtil.getLogger().severe(str(e))
+
+widget.setPropertyValue("tooltip", tooltip)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vgc/vac_vgc.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vgc/vac_vgc.bob
index 9b5a71b5809731fff6105bd7c86efede957faaa5..1f489285274074af0c8c23364097abc9a6aa1665 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vgc/vac_vgc.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vgc/vac_vgc.bob
@@ -99,7 +99,7 @@
       </action>
     </actions>
     <scripts>
-      <script file="../COMMON/pressure.js">
+      <script file="../COMMON/pressure.py">
         <pv_name>$(vacPREFIX):PrsStatR</pv_name>
         <pv_name>$(vacPREFIX):PrsR</pv_name>
         <pv_name>$(vacPREFIX):PrsR-STR</pv_name>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vgd/vac_vgd.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vgd/vac_vgd.bob
index 071c89ff9690981b7190888009aa5b74bb51d810..559c63c5cfbbcfffab645d4ffbbd645f56259c75 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vgd/vac_vgd.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vgd/vac_vgd.bob
@@ -99,7 +99,7 @@
       </action>
     </actions>
     <scripts>
-      <script file="../COMMON/pressure.js">
+      <script file="../COMMON/pressure.py">
         <pv_name>$(vacPREFIX):PrsStatR</pv_name>
         <pv_name>$(vacPREFIX):PrsR</pv_name>
         <pv_name>$(vacPREFIX):PrsR-STR</pv_name>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vgp/vac_vgp.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vgp/vac_vgp.bob
index 2c7727d5792c1c42039f652851fdd2e3d2a64546..817da1f490df940ba3915f35bea602b40bafb2ad 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vgp/vac_vgp.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vgp/vac_vgp.bob
@@ -99,7 +99,7 @@
       </action>
     </actions>
     <scripts>
-      <script file="../COMMON/pressure.js">
+      <script file="../COMMON/pressure.py">
         <pv_name>$(vacPREFIX):PrsStatR</pv_name>
         <pv_name>$(vacPREFIX):PrsR</pv_name>
         <pv_name>$(vacPREFIX):PrsR-STR</pv_name>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/pressure.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/pressure.js
deleted file mode 100644
index 7bb1ff88dfa2b5dd6a546adbddf72ac9a409d380..0000000000000000000000000000000000000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/pressure.js
+++ /dev/null
@@ -1,68 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var tooltip  = "N/A";
-
-var debug = widget.getEffectiveMacros().getValue("DEBUG");
-if (debug) {
-	debug = debug[0];
-	switch (debug) {
-		case '1':
-		case 'Y':
-		case 'y':
-		case 'T':
-		case 't':
-			debug = true;
-			break;
-
-		default:
-			debug = false;
-	}
-}
-else
-	debug = false;
-
-if (debug)
-	Logger = org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger();
-else {
-	Logger = new Object();
-	Logger.info = function() {}
-	Logger.warning = function() {}
-	Logger.severe = function(text) { org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe(text);}
-}
-
-function log_pv(pv) {
-	try {
-		Logger.info(pv + ": " + PVUtil.getString(pv));
-	} catch (err) {
-		Logger.severe(err);
-	}
-}
-
-try {
-	var pvStat   = PVUtil.getString(pvs[0]);
-	var pvPrsStr = PVUtil.getString(pvs[2]);
-
-	log_pv(pvs[0]);
-	log_pv(pvs[1]);
-	log_pv(pvs[2]);
-
-	if (pvStat == "Open") {
-		try {
-			var vtype = PVUtil.getVType(pvs[1]);
-
-			FormatOption = org.csstudio.display.builder.model.properties.FormatOption;
-			FormatOptionHandler = org.csstudio.display.builder.model.util.FormatOptionHandler;
-
-			tooltip = FormatOptionHandler.format(vtype, FormatOption.EXPONENTIAL, 3, true);
-		} catch (err) {
-			var pvUnit   = PVUtil.getString(pvs[3]);
-			tooltip = pvPrsStr + " " + pvUnit;
-		}
-	} else
-		tooltip = pvPrsStr;
-} catch (err) {
-	Logger.severe(err);
-}
-
-widget.setPropertyValue("tooltip", tooltip);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/pressure.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/pressure.py
new file mode 100644
index 0000000000000000000000000000000000000000..9d47fdc6d3000e7ef412f4fb8af21c12465cd256
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/pressure.py
@@ -0,0 +1,32 @@
+from org.csstudio.display.builder.runtime.script import PVUtil
+from org.csstudio.display.builder.runtime.script import ScriptUtil
+
+tooltip  = "N/A"
+
+try:
+    pvStat   = PVUtil.getString(pvs[0]).upper()
+    pvPrsStr = PVUtil.getString(pvs[2])
+
+    if pvStat == "OPEN":
+        try:
+            from org.phoebus.ui.vtype import FormatOption, FormatOptionHandler
+        except ImportError:
+            try:
+                from org.csstudio.display.builder.model.properties import FormatOption
+                from org.csstudio.display.builder.model.util import FormatOptionHandler
+            except Exception as e:
+                ScriptUtil.getLogger().severe(str(e))
+
+        try:
+            vtype = PVUtil.getVType(pvs[1])
+
+            tooltip = FormatOptionHandler.format(vtype, FormatOption.EXPONENTIAL, 2, True)
+        except:
+            pvUnit  = PVUtil.getString(pvs[3])
+            tooltip = pvPrsStr + " " + pvUnit
+    else:
+        tooltip = pvPrsStr
+except Exception as e:
+    ScriptUtil.getLogger().severe(str(e))
+
+widget.setPropertyValue("tooltip", tooltip)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/vac_vvmc.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/vac_vvmc.bob
index f9cae2e1b99bbd3b84adb81ad68808aa549da9c8..4e983a38ab877e7f91c7b063770fdc74ae0ab66d 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/vac_vvmc.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvmc/vac_vvmc.bob
@@ -85,7 +85,7 @@
       </action>
     </actions>
     <scripts>
-      <script file="pressure.js">
+      <script file="pressure.py">
         <pv_name>$(vacPREFIX):FlwStatR</pv_name>
         <pv_name>$(vacPREFIX):FlwR</pv_name>
         <pv_name>$(vacPREFIX):FlwR-STR</pv_name>