diff --git a/ohmpi.py b/ohmpi.py
index 0762b1a5b0679400346d1d39f269e1e85828f7f7..804410710197f4043e274258c94eca1001068dbe 100644
--- a/ohmpi.py
+++ b/ohmpi.py
@@ -1009,16 +1009,19 @@ class OhmPi(object):
                     "CPU temp [degC]": CPUTemperature().temperature,
                     "Nb samples [-]": self.nb_samples,
                     "fulldata": fulldata,
-                    "I_stack [mA]": np.mean(i_stack)
-                    "I_std [mA]": np.std(i_stack)
-                    "I_per_stack [mA]": np.mean(i_stack,axis=1)
-                    "Vmn_stack [mA]": np.mean(vmn_stack)
-                    "Vmn_std [mA]": np.std(vmn_stack)
-                    "Vmn_per_stack [mA]": np.mean(vmn_stack, axis=1)
-                    "R_stack [ohm]": np.mean(vmn_stack) / np.mean(i_stack)
-                    "R_std [ohm]": np.std(vmn_stack) / np.std(i_stack)    ### TODO: check if this is statistically right
-                    "R_per_stack [Ohm]": np.mean(vmn_stack, axis=1)/np.mean(i_stack, axis=1)
+                    "I_stack [mA]": np.mean(i_stack),
+                    "I_std [mA]": np.mean(np.array([np.std(i_stack[::2]),np.std(i_stack[1::2])])),
+                    "I_per_stack [mA]": np.array([np.mean(i_stack[i*2:i*2+2]) for i in range(nb_stack)]),
+                    "Vmn_stack [mV]": np.mean([np.diff(np.mean(vmn_stack[i*2:i*2+2], axis=1)) / 2 for i in range(nb_stack)]),
+                    "Vmn_std [mV]": np.mean([np.std(vmn_stack[::2]),np.std(vmn_stack[1::2])]),
+                    "Vmn_per_stack [mV]": np.array([np.diff(np.mean(vmn_stack[i*2:i*2+2], axis=1))[0] / 2 for i in range(nb_stack)]),
+                    "R_stack [ohm]": np.mean([np.diff(np.mean(vmn_stack[i*2:i*2+2], axis=1)) / 2 for i in range(nb_stack)]) / np.mean(i_stack),
+                    "R_std [ohm]":  np.mean([np.std(vmn_stack[::2]),np.std(vmn_stack[1::2])]) / np.std(i_stack),    ### TODO: modify formula
+                    "R_per_stack [Ohm]": np.mean([np.diff(np.mean(vmn_stack[i*2:i*2+2], axis=1)) / 2 for i in range(nb_stack)]) / np.array([np.mean(i_stack[i*2:i*2+2]) for i in range(nb_stack)]),
+                    "PS_per_stack [mV]":  np.array([np.mean(np.mean(vmn_stack[i*2:i*2+2], axis=1)) for i in range(nb_stack)]),
+                    "PS_stack [mV]": np.mean(np.array([np.mean(np.mean(vmn_stack[i*2:i*2+2], axis=1)) for i in range(nb_stack)]))
                 }
+                # print(np.array([(vmn_stack[i*2:i*2+2]) for i in range(nb_stack)]))
             elif self.board_version == '22.10':
                 d = {
                     "time": datetime.now().isoformat(),
@@ -1156,7 +1159,7 @@ class OhmPi(object):
             self.pin3 = self.MCPIHM.get_pin(3) # dsp -
             self.pin3.direction = Direction.OUTPUT
             self.pin3.value = True
-            time.sleep (4)
+            time.sleep (5)
 
             # run a measurement
             if self.on_pi:
@@ -1337,7 +1340,7 @@ class OhmPi(object):
             else:
                 self.exec_logger.warning('You cannot use the multiplexer because use_mux is set to False.'
                                          ' Set use_mux to True to use the multiplexer...')
-        elif self.sequence is None:
+        elif self.sequence is None and not self.use_mux:
             self.exec_logger.warning('Unable to switch MUX without a sequence')
         else:
             # choose with MUX board