diff --git a/i2cserv/hba1.py b/i2cserv/hba1.py
index 73e6d3cab6122016687b45a05bc8f9507a2c578b..09fa4f0345c67fa7c2c331c0610827827da69d0d 100644
--- a/i2cserv/hba1.py
+++ b/i2cserv/hba1.py
@@ -30,9 +30,10 @@ class hba1(hwdev):
 
   def gethba(self,addr,reg,data):
       I2Ccallback=self.conf['parentcls'].i2csetget
+#      logging.debug("getHba addr=0x%x reg=0x%x",addr,reg)
       if not(I2Ccallback(addr,data,read=1)): return False;
 #      I2Ccallback(addr,data,read=1);
-      if data is None:  return False
-      data[:]=[255]*len(data)
       logging.debug("getHba addr=0x%x reg=0x%x data=%s",addr,reg,str((data)))
+      if data is None:  return False
+#      data[:]=[255]*len(data)
       return True;
\ No newline at end of file
diff --git a/i2cserv/i2c_array.py b/i2cserv/i2c_array.py
index a3f7100b31af78b0f63adc050925dc7bb4dd55ab..b14c95e389ba00c7bd6cc198ba6a12b75637740f 100644
--- a/i2cserv/i2c_array.py
+++ b/i2cserv/i2c_array.py
@@ -145,7 +145,7 @@ class i2c_array(hwdev):
 #       print("Call Method",var1)
     
     def i2csetget(self,*args,**kwargs):
-       self.conf['parentcls'].i2csetget(*args,**kwargs)
+       return self.conf['parentcls'].i2csetget(*args,**kwargs)
     
     def SetSwitch(self,RCUi):
         self.conf['parentcls'].SetSW1(self.RCU_Switch1[RCUi]);
diff --git a/testRCU.py b/testRCU.py
index 8669f0d5ff30dc71cdaf12127f49f0446580544d..584cf586455a46047bf8fd79b97f1111f8fe9fae 100644
--- a/testRCU.py
+++ b/testRCU.py
@@ -52,12 +52,13 @@ elif False:
 else:
     var1=RCU_conf.getvarid('HBA_element_beamformer_delays');
     N=32*3;
-    mask=[i<8 for i in range(N)];
+    mask=[i<4*3 for i in range(N)];
     data=[1]*(N*32);
 #print(var1)
 print("mask=",mask);
 print("data=",data);
 #RCU_I2C.setvar(var1,data,mask);
+RCU_I2C.readvar(var1,mask);
 
 var1=RCU_conf.getvarid('RCU_temperature');
 N=32;