diff --git a/tangostationcontrol/tangostationcontrol/devices/sdp/xst.py b/tangostationcontrol/tangostationcontrol/devices/sdp/xst.py
index f2ccb6172e94a5b8b3b363deb5b3b70e669bb65d..36e4e8baa9c6d75d93494e0cf327b31b0d33ca5a 100644
--- a/tangostationcontrol/tangostationcontrol/devices/sdp/xst.py
+++ b/tangostationcontrol/tangostationcontrol/devices/sdp/xst.py
@@ -445,22 +445,22 @@ class XST(Statistics):
 
     def read_xst_real_R(self):
         return numpy.real(self.statistics_client.collector.xst_values()).reshape(
-            MAX_PARALLEL_SUBBANDS, MAX_INPUTS * MAX_INPUTS
+            MAX_PARALLEL_SUBBANDS, self.statistics_collector.nr_signal_inputs**2
         )
 
     def read_xst_imag_R(self):
         return numpy.imag(self.statistics_client.collector.xst_values()).reshape(
-            MAX_PARALLEL_SUBBANDS, MAX_INPUTS * MAX_INPUTS
+            MAX_PARALLEL_SUBBANDS, self.statistics_collector.nr_signal_inputs**2
         )
 
     def read_xst_power_R(self):
         return numpy.abs(self.statistics_client.collector.xst_values()).reshape(
-            MAX_PARALLEL_SUBBANDS, MAX_INPUTS * MAX_INPUTS
+            MAX_PARALLEL_SUBBANDS, self.statistics_collector.nr_signal_inputs**2
         )
 
     def read_xst_phase_R(self):
         return numpy.angle(self.statistics_client.collector.xst_values()).reshape(
-            MAX_PARALLEL_SUBBANDS, MAX_INPUTS * MAX_INPUTS
+            MAX_PARALLEL_SUBBANDS, self.statistics_collector.nr_signal_inputs**2
         )
 
     # xst_R, but as a matrix of input x input, for each specific subband index