From cc69162b4b6f4ffe39063ec2ee88b0b33c10fda6 Mon Sep 17 00:00:00 2001
From: Philipp Oleynik <pholey@utu.fi>
Date: Mon, 3 Jan 2022 17:47:24 +0200
Subject: [PATCH] Agilent pressure bug fixed

---
 pumpAgilent.py | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/pumpAgilent.py b/pumpAgilent.py
index 75c02b4..aeac2f3 100755
--- a/pumpAgilent.py
+++ b/pumpAgilent.py
@@ -79,8 +79,14 @@ class pumpAgilent:
     def getPressure(self):
         stat = self.serWriteAndRecieve(b"\002\200\062\062\064\060\003\070\067")
         if stat is not None:
-            stat = stat[4: 12]
-            return float(stat)
+            print(":".join("{:02x}".format(ord(c)) for c in stat))
+            hdr = stat.find("2240")
+            stat = stat[hdr + 3: hdr + 11]
+            try:
+                pressure = float(stat)
+            except ValueError:
+                pressure = 1.20E+03
+            return pressure
         return 1.20E+03
 
     def getRpm(self):
-- 
GitLab