From 2cf6ab24aa5ec009218371c133799ec66a175ac3 Mon Sep 17 00:00:00 2001 From: kruger <kruger@astron.nl> Date: Wed, 17 Apr 2024 08:43:55 +0100 Subject: [PATCH] Fix bug in RCU_on crash. Added ADC test signal off --- pypcc/config/RECVTR_HB.yaml | 15 ++++++++++++++- pypcc/config/RECVTR_LB.yaml | 15 ++++++++++++++- pypcc/i2cserv/i2c_array.py | 2 +- 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/pypcc/config/RECVTR_HB.yaml b/pypcc/config/RECVTR_HB.yaml index 4294f1e..7a764b5 100644 --- a/pypcc/config/RECVTR_HB.yaml +++ b/pypcc/config/RECVTR_HB.yaml @@ -1056,7 +1056,7 @@ methods: - name: RCU_ADC_testsignal_on - description: Configure ADCs to give a time-syncronised test signal. Test signal is disabled by calling RCU_on. + description: Configure ADCs to give a time-syncronised test signal. driver: I2C_RCU mask: RCU_mask instructions: @@ -1067,3 +1067,16 @@ methods: - ADC3.JESD_control1 : 0x34 - ADC3.Update: 1 #Needed to update ADC registers - RCU_ADC_testsignal: Update #disabled for testing + + - name: RCU_ADC_testsignal_off + description: Switch off test signal + driver: I2C_RCU + mask: RCU_mask + instructions: + - ADC1.JESD_control1 : 0x14 + - ADC1.Update: 1 #Needed to update ADC registers + - ADC2.JESD_control1 : 0x14 + - ADC2.Update: 1 #Needed to update ADC registers + - ADC3.JESD_control1 : 0x14 + - ADC3.Update: 1 #Needed to update ADC registers + - RCU_ADC_testsignal: Update #disabled for testing diff --git a/pypcc/config/RECVTR_LB.yaml b/pypcc/config/RECVTR_LB.yaml index 2b44527..b753491 100644 --- a/pypcc/config/RECVTR_LB.yaml +++ b/pypcc/config/RECVTR_LB.yaml @@ -941,7 +941,7 @@ methods: - DTH3.Start : [0,1,0,0,1] - name: RCU_ADC_testsignal_on - description: Configure ADCs to give a time-syncronised test signal. The signal is disabled by calling RCU_on. + description: Configure ADCs to give a time-syncronised test signal. driver: I2C_RCU mask: RCU_mask instructions: @@ -952,3 +952,16 @@ methods: - ADC3.JESD_control1 : 0x34 - ADC3.Update: 1 #Needed to update ADC registers - RCU_ADC_testsignal: Update #disabled for testing + + - name: RCU_ADC_testsignal_off + description: Switch off test signal + driver: I2C_RCU + mask: RCU_mask + instructions: + - ADC1.JESD_control1 : 0x14 + - ADC1.Update: 1 #Needed to update ADC registers + - ADC2.JESD_control1 : 0x14 + - ADC2.Update: 1 #Needed to update ADC registers + - ADC3.JESD_control1 : 0x14 + - ADC3.Update: 1 #Needed to update ADC registers + - RCU_ADC_testsignal: Update #disabled for testing diff --git a/pypcc/i2cserv/i2c_array.py b/pypcc/i2cserv/i2c_array.py index 8595b80..102474f 100644 --- a/pypcc/i2cserv/i2c_array.py +++ b/pypcc/i2cserv/i2c_array.py @@ -254,7 +254,7 @@ class i2c_array(i2c_dev): try: value2[:]=storearray[RCUi] except: - logging.warning("RCU%iWrong size (no data?) in stored array %i-%i"%(RCUi,len(value2),len(storearray[RCUi]))) + logging.warning("RCU%iWrong size (no data?) in stored array"%(RCUi)) # of len(storearray[RCUi]==0) # storearray[self.RCUi]=(value[0] if len(value)==1 else value[:]) l1=int(np.floor((width+bitoffset+7)/8)) -- GitLab