From 928af3d1c629a5a76a7a1716bb4b4745d8459d2a Mon Sep 17 00:00:00 2001
From: Thomas Juerges <4-jurges@users.noreply.git.astron.nl>
Date: Fri, 15 Jan 2021 11:41:28 +0100
Subject: [PATCH] Correct handling of incoming arrays

---
 RCUSCC/RCUSCC/RCUSCC.py | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/RCUSCC/RCUSCC/RCUSCC.py b/RCUSCC/RCUSCC/RCUSCC.py
index ad2bbad94..484ee5cf7 100644
--- a/RCUSCC/RCUSCC/RCUSCC.py
+++ b/RCUSCC/RCUSCC/RCUSCC.py
@@ -378,7 +378,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_mask_R(self):
         """Return the RCU_mask_R attribute."""
-        self._RCU_mask_R = numpy.array([self.attribute_mapping["RCU_mask_R"].get_value()])
+        self._RCU_mask_R = numpy.array(self.attribute_mapping["RCU_mask_R"].get_value())
         return self._RCU_mask_R
 
     @only_when_on
@@ -398,7 +398,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_Ant_mask_R(self):
         """Return the Ant_mask_R attribute."""
-        value = numpy.array([self.attribute_mapping["Ant_mask_R"].get_value()])
+        value = numpy.array(self.attribute_mapping["Ant_mask_R"].get_value())
         self._Ant_mask_R = numpy.split(value, indices_or_sections = 32)
         return self._Ant_mask_R
 
@@ -420,7 +420,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_attenuator_R(self):
         """Return the RCU_attenuator_R attribute."""
-        value = numpy.array([self.attribute_mapping["RCU_attenuator_R"].get_value()])
+        value = numpy.array(self.attribute_mapping["RCU_attenuator_R"].get_value())
         self._RCU_attenuator_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_attenuator_R
 
@@ -442,7 +442,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_band_R(self):
         """Return the RCU_band_R attribute."""
-        value = numpy.array([self.attribute_mapping["RCU_band_R"].get_value()])
+        value = numpy.array(self.attribute_mapping["RCU_band_R"].get_value())
         self._RCU_band_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_band_R
 
@@ -464,21 +464,21 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_temperature_R(self):
         """Return the RCU_temperature_R attribute."""
-        self._RCU_temperature_R = self.attribute_mapping["RCU_temperature_R"].get_value()
+        self._RCU_temperature_R = numpy.array(self.attribute_mapping["RCU_temperature_R"].get_value())
         return self._RCU_temperature_R
 
     @only_when_on
     @fault_on_error
     def read_RCU_Pwr_dig_R(self):
         """Return the RCU_Pwr_dig_R attribute."""
-        self._RCU_Pwr_dig_R = self.attribute_mapping["RCU_Pwr_dig_R"].get_value()
+        self._RCU_Pwr_dig_R = numpy.array(self.attribute_mapping["RCU_Pwr_dig_R"].get_value())
         return self._RCU_Pwr_dig_R
 
     @only_when_on
     @fault_on_error
     def read_RCU_LED0_R(self):
         """Return the RCU_LED0_R attribute."""
-        self._RCU_LED0_R = self.attribute_mapping["RCU_LED0_R"].get_value()
+        self._RCU_LED0_R = numpy.array(self.attribute_mapping["RCU_LED0_R"].get_value())
         return self._RCU_LED0_R
 
     @only_when_on
@@ -498,7 +498,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_ADC_lock_R(self):
         """Return the RCU_ADC_lock_R attribute."""
-        value = numpy.array([self.attribute_mapping["RCU_ADC_lock_R"].get_value()])
+        value = numpy.array(self.attribute_mapping["RCU_ADC_lock_R"].get_value())
         self._RCU_ADC_lock_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_ADC_lock_R
 
@@ -506,7 +506,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_ADC_SYNC_R(self):
         """Return the RCU_ADC_SYNC_R attribute."""
-        value = numpy.array([self.attribute_mapping["RCU_ADC_SYNC_R"].get_value()])
+        value = numpy.array(self.attribute_mapping["RCU_ADC_SYNC_R"].get_value())
         self._RCU_ADC_SYNC_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_ADC_SYNC_R
 
@@ -514,7 +514,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_ADC_JESD_R(self):
         """Return the RCU_ADC_JESD_R attribute."""
-        value = numpy.array([self.attribute_mapping["RCU_ADC_JESD_R"].get_value()])
+        value = numpy.array(self.attribute_mapping["RCU_ADC_JESD_R"].get_value())
         self._RCU_ADC_JESD_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_ADC_JESD_R
 
@@ -522,7 +522,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_ADC_CML_R(self):
         """Return the RCU_ADC_CML_R attribute."""
-        value = numpy.array([self.attribute_mapping["RCU_ADC_CML_R"].get_value()])
+        value = numpy.array(self.attribute_mapping["RCU_ADC_CML_R"].get_value())
         self._RCU_ADC_CML_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_ADC_CML_R
 
@@ -530,7 +530,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_OUT1_R(self):
         """Return the RCU_OUT1_R attribute."""
-        value = self.attribute_mapping["RCU_OUT1_R"].get_value()
+        value = numpy.array(self.attribute_mapping["RCU_OUT1_R"].get_value())
         self._RCU_OUT1_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_OUT1_R
 
@@ -538,7 +538,7 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_OUT2_R(self):
         """Return the RCU_OUT2_R attribute."""
-        value = self.attribute_mapping["RCU_OUT2_R"].get_value()
+        value = numpy.array(self.attribute_mapping["RCU_OUT2_R"].get_value())
         self._RCU_OUT2_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_OUT2_R
 
@@ -546,14 +546,15 @@ class RCUSCC(Device):
     @fault_on_error
     def read_RCU_ID_R(self):
         """Return the RCU_ID_R attribute."""
-        self._RCU_ID_R = self.attribute_mapping["RCU_ID_R"].get_value()
+        self._RCU_ID_R = numpy.array(self.attribute_mapping["RCU_ID_R"].get_value())
         return self._RCU_ID_R
 
     @only_when_on
     @fault_on_error
     def read_RCU_version_R(self):
         """Return the RCU_version_R attribute."""
-        self._RCU_version_R = self.attribute_mapping["RCU_version_R"].get_value()
+        value = self._RCU_version_R = numpy.array(self.attribute_mapping["RCU_version_R"].get_value())
+        self._RCU_version_R = numpy.split(value, indices_or_sections = 32)
         return self._RCU_version_R
 
     @only_when_on
-- 
GitLab