diff --git a/ohmpi/hardware_components/mb_2024_0_2.py b/ohmpi/hardware_components/mb_2024_0_2.py
index 4806908152ec0debb0047e76ed142d91f7d2b3b9..c50c49088ab5b3bc5b359d2c0811c2ee1125357d 100644
--- a/ohmpi/hardware_components/mb_2024_0_2.py
+++ b/ohmpi/hardware_components/mb_2024_0_2.py
@@ -131,7 +131,7 @@ class Tx(Tx_mb_2023):
             self._pwr_state = 'off'
 
     def current_pulse(self, current=None, length=None, polarity=1):
-        """ Generates a square voltage pulse
+        """ Generates a square current pulse. Currenttly no DPS can handle this...
 
         Parameters
         ----------
@@ -148,7 +148,7 @@ class Tx(Tx_mb_2023):
             length = self.injection_duration
         if current is not None:
             self.pwr.current = current
-        self.exec_logger.debug(f'Current pulse of {polarity*self.pwr.voltage:.3f} V for {length:.3f} s')
+        self.exec_logger.debug(f'Current pulse of {polarity*self.pwr.current:.3f} V for {length:.3f} s')
         self.inject(polarity=polarity, injection_duration=length)
         self.exec_logger.event(f'{self.model}\ttx_current_pulse\tend\t{datetime.datetime.utcnow()}')
 
diff --git a/ohmpi/hardware_components/pwr_dps5005.py b/ohmpi/hardware_components/pwr_dps5005.py
index 672f163bf4373e12b421650cb68082b22c322f9a..5e89e06915b959d23ee8437ce24737c96f9a49eb 100644
--- a/ohmpi/hardware_components/pwr_dps5005.py
+++ b/ohmpi/hardware_components/pwr_dps5005.py
@@ -37,11 +37,13 @@ class Pwr(PwrAbstract):
         self._voltage_max = kwargs['voltage_max']
         self._power_max = kwargs['power_max']
         self._current_max_tolerance = kwargs['current_max_tolerance']
-        self.voltage_default(self._voltage)
-        self.current_max_default(self._current_max)
-        self.current_max = self._current_max
-        self.voltage_max = self._voltage_max
-        self.power_max(self._power_max)
+        if self.connect:
+            self.voltage_default(self._voltage)
+            self.current_max_default(self._current_max)
+            self.current_max = self._current_max
+            self.current_overload = self._current_max
+            self.voltage_max = self._voltage_max
+            self.power_max(self._power_max)
         self.voltage_adjustable = True
         self.current_adjustable = False
         self._current = np.nan
@@ -53,13 +55,13 @@ class Pwr(PwrAbstract):
     def _retrieve_current(self):
         self._current = self.connection.read_register(0x0003, 2) * 100  # in mA (not sure why but value from DPS comes in [A*10]
 
-    # @property
-    # def current(self):
-    #     return self._current
-    #
-    # @current.setter
-    # def current(self, value, **kwargs):
-    #     self.exec_logger.debug(f'Current cannot be set on {self.model}')
+    @property
+    def current(self):
+        return self._current
+
+    @current.setter
+    def current(self, value, **kwargs):
+        self.exec_logger.debug(f'Current cannot be set on {self.model}')
 
     def _retrieve_voltage(self):
         self._voltage = self.connection.read_register(0x0002, 2)
@@ -89,30 +91,23 @@ class Pwr(PwrAbstract):
         self.connection.write_register(0x0052, np.round(value, 2), 2)
         self._voltage_max = value
 
-
     def battery_voltage(self):
         self._battery_voltage = self.connection.read_register(0x05, 2)
         return self._battery_voltage
 
-    @property
-    def current(self):
-        return self._current
-
-    @current.setter
-    def current(self, value, **kwargs):
-        # value = value  # To set DPS max current slightly above (20%) the limit to avoid regulation artefacts
-        self.connection.write_register(0x0001, np.round((value), 3), 3)
-        self._current = value
-        # self.exec_logger.debug(f'Current cannot be set on {self.model}')
-
     @property
     def current_max(self):
         return self._current_max
 
     @current_max.setter
-    def current_max(self, value):  # [A]
+    def current_max(self, value):
+        new_value = value * (
+                    1 + self._current_max_tolerance / 100)  # To set DPS max current slightly above (20% by default) the limit to avoid regulation artefacts
+        self.connection.write_register(0x0001, np.round((new_value), 3), 3)
+        self._current_max = value
+
+    def current_overload(self, value):  # [A]
         new_value = value * (1 + self._current_max_tolerance / 100)  # To set DPS max current slightly above (20% by default) the limit to avoid regulation artefacts
-        print(new_value)
         self.connection.write_register(0x0053, np.round((new_value), 3), 3)
         self._current_max = value
 
diff --git a/ohmpi/hardware_system.py b/ohmpi/hardware_system.py
index 145a5daf30c91718eac108ed8750c81df0c60662..cafe33b46bc565d1bcdb7235c03145967e5b8210 100644
--- a/ohmpi/hardware_system.py
+++ b/ohmpi/hardware_system.py
@@ -148,7 +148,7 @@ class OhmPiHardware:
             self.pwr_state = 'off'
 
         self.tx.pwr = self.pwr
-        self.tx.pwr._current_max = self.current_max
+        # self.tx.pwr._current_max = self.current_max
 
         # Initialize Muxes
         self._cabling = kwargs.pop('cabling', {})