diff --git a/ohmpi/hardware_components/abstract_hardware_components.py b/ohmpi/hardware_components/abstract_hardware_components.py
index db89f0328e959bbe72bff36090e58392d93aba48..70bbfc1fbff526c2a2ad219392b824dbe4597b22 100644
--- a/ohmpi/hardware_components/abstract_hardware_components.py
+++ b/ohmpi/hardware_components/abstract_hardware_components.py
@@ -330,6 +330,7 @@ class RxAbstract(ABC):
         self.exec_logger.debug(f'{self.board_name} RX initialization')
         self._adc_gain = 1.
         self._max_sampling_rate = np.inf
+        self._bias = 0.
 
     @property
     def adc_gain(self):
diff --git a/ohmpi/hardware_components/ohmpi_card_3_15.py b/ohmpi/hardware_components/ohmpi_card_3_15.py
index fc480edf7234e6f96887115126664acff39ffec7..8aebe656effcc79a0c78758b829ecfbcb7d66d75 100644
--- a/ohmpi/hardware_components/ohmpi_card_3_15.py
+++ b/ohmpi/hardware_components/ohmpi_card_3_15.py
@@ -254,6 +254,6 @@ class Rx(RxAbstract):
         """ Gets the voltage VMN in Volts
         """
         self.exec_logger.event(f'{self.board_name}\trx_voltage\tbegin\t{datetime.datetime.utcnow()}')
-        u = AnalogIn(self._ads_voltage, ads.P0, ads.P1).voltage * self._coef_p2 * 1000.  # TODO:  check if it should be negative
+        u = AnalogIn(self._ads_voltage, ads.P0, ads.P1).voltage * self._coef_p2 * 1000. - self._bias # TODO:  check if it should be negated
         self.exec_logger.event(f'{self.board_name}\trx_voltage\tend\t{datetime.datetime.utcnow()}')
         return u
diff --git a/ohmpi/hardware_system.py b/ohmpi/hardware_system.py
index e176f2c0af60676ac20b16aaa42e24a1c7ef11d0..0171c50969f1a4f547d22aa7d99504b9fa867445 100644
--- a/ohmpi/hardware_system.py
+++ b/ohmpi/hardware_system.py
@@ -318,6 +318,10 @@ class OhmPiHardware:
         fig.legend()
         plt.show()
 
+    def calibrate_rx_bias(self):
+        self.tx._bias = np.mean(self.readings[self.readings[:, 2] == 1, 4]) \
+                      + np.mean(self.readings[self.readings[:, 2] == -1, 4]) / 2.
+
     def vab_square_wave(self, vab, cycle_length, sampling_rate=None, cycles=3, polarity=1, append=False):
         self.exec_logger.event(f'OhmPiHardware\tvab_square_wave\tbegin\t{datetime.datetime.utcnow()}')
         self.tx.polarity = polarity