diff --git a/I2C_serial_pi.py b/I2C_serial_pi.py
index d3f72171b070478ba5ce2fa709d0dcf58c5d7140..8ddf3a33fd0f431af0ca95d2cb1ff62db043c808 100644
--- a/I2C_serial_pi.py
+++ b/I2C_serial_pi.py
@@ -35,9 +35,9 @@ class I2C:
         bus = smbus.SMBus(self.bus_nr)
         try:
             rd_value = bus.read_i2c_block_data(self.I2C_Address, register, bytes_to_read)
-            ret_value = []
+            ret_value = ''
             for cnt in range(bytes_to_read):
-                ret_value.append(hex(rd_value[cnt])[2:]) 
+                ret_value += (hex(rd_value[cnt])[2:])
             ret_ack = 1
         except IOError, err:
             ret_ack = 0
diff --git a/rd_unb2c.py b/rd_unb2c.py
index 114cc1d1f4672f98c77ec3d8d14d4d189cf2000a..13d2b0e945ba195dab205a1c55222757f6f359db 100644
--- a/rd_unb2c.py
+++ b/rd_unb2c.py
@@ -32,8 +32,7 @@ def rw_eeprom(value=0xAB):
     else:
         pr_stri = "Found device at address 0x{:02x}".format(I2C_eeprom.I2C_Address)
         print(pr_stri)
-        ret_ack = I2C_eeprom.write_bytes(0x00, value)
-#        sleep(0.25)
+        I2C_eeprom.write_bytes(0x00, value)
         ret_ack, ret_value = I2C_eeprom.read_bytes(0x00, 1)
         stri = "Wrote to EEPROM: {0}, Read from EEPROM: {1} ".format(value, ret_value)
         print(stri)
@@ -102,8 +101,8 @@ def read_ddr(node_nr = 0, module=0):
                 stri = "No DDR moduel in slot {0} node  {1}".format(module, node_nr)
             else:
                 ret_value=[]
-                ret_value.append(int(raw_ret[0],16))
-                ret_value.append(int(raw_ret[1],16))
+                ret_value.append(int(raw_ret[:2],16))
+                ret_value.append(int(raw_ret[2:],16))
                 temp = (((ret_value[0] & 0x1F) * 0x100) + (ret_value[1] & 0xFC)) * 0.0625
                 stri = "Temperature DDR4 in slot {0} node  {1} is {2:3.2f} C".format(module, node_nr, temp)
             print(stri)
@@ -124,19 +123,19 @@ def read_qsfp(node_nr = 0, module=0):
             QSFP_cage = I2C(QSFP_I2C_ADDR)
             QSFP_cage.bus = I2CBUSNR
             ret_ack, raw_ret = QSFP_cage.read_bytes(QSFP_TEMP, 2)
-            if (ret_ack < 1) | (raw_ret[0]=='ff'):
+            if (ret_ack < 1) | (raw_ret[:2]=='ff'):
                 stri = "No QSFP module in slot {0} node  {1}".format(module, node_nr)
                 print(stri)
             else:
                 ret_value=[]
-                ret_value.append(int(raw_ret[0],16))
-                ret_value.append(int(raw_ret[1],16))
+                ret_value.append(int(raw_ret[:2],16))
+                ret_value.append(int(raw_ret[2:],16))
                 temp_in_mod = (ret_value[0] * 256 + ret_value[1]) / 256
                 stri =  "Temperature QSFP in slot {0} node  {1} is {2:3.2f} gr. C".format(module, node_nr, temp_in_mod)
                 print(stri)
                 ret_ack, raw_ret = QSFP_cage.read_bytes(QSFP_VOLT, 2)
-                ret_value.append(int(raw_ret[0],16))
-                ret_value.append(int(raw_ret[1],16))
+                ret_value.append(int(raw_ret[:2],16))
+                ret_value.append(int(raw_ret[2:],16))
                 Power_in_mod = (ret_value[0] * 256 + ret_value[1]) * 0.0001
                 stri =  "Voltage QSFP in slot {0} node  {1} is {2:3.2f} V".format(module, node_nr, Power_in_mod)
                 print(stri)
@@ -148,6 +147,8 @@ else:
     for node_cnt in range(4):
         for module_cnt in range(2):
             read_ddr(node_nr=node_cnt,module=module_cnt)
+    for node_cnt in range(4):
         for qsfp_cnt in range(6):
             read_qsfp(node_nr = node_cnt, module=qsfp_cnt)
-
+    for node_cnt in range(4):
+        read_pol(LOC_POWER_CORE)