diff --git a/check_adc_lock.py b/check_adc_lock.py
new file mode 100644
index 0000000000000000000000000000000000000000..090d44590d21925815fb495731618a68a34a54b2
--- /dev/null
+++ b/check_adc_lock.py
@@ -0,0 +1,104 @@
+'''
+Copyright 2021 Stichting Nederlandse Wetenschappelijk Onderzoek Instituten,
+ASTRON Netherlands Institute for Radio Astronomy
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+Set ADC
+
+'''
+import sys
+import time
+sys.path.insert(0,'.')
+import os
+if os.name =="posix":
+    from I2C_serial_pi import *
+else:
+    from I2C_serial import *
+
+sleep_time=0.05
+WRITE_DATA = True
+READ_BYTE = True
+SET_ADC = True
+
+CS   = 0
+
+SCLK = [1, 3, 5]
+SDIO = [0, 2, 4]
+ADC_ORDER = [0, 1, 2]
+
+
+def Read_byte_ADC(ADC_reg_address, ADC_bytes=0, ADC_NR = 0, ADDRESS=0x20 ):
+    #
+    # Read Byte from the ADC
+    #
+    I2C_device = I2C(ADDRESS)
+    ADC_rw    = 0x01 # 0 for write, 1 for read
+    
+    stri = "Read ADC from Address {:8x}".format(ADC_reg_address)
+    print(stri)
+    
+    data = ( ADC_rw << 15) + ( ADC_bytes << 13 ) + ADC_reg_address
+    
+#    print("write read command")
+    I2C_device.write_bytes(0x06, 00)
+    I2C_device.write_bytes(0x07, 00)
+    I2C_device.write_bytes(0x03, (0x0F ^ (0x01 << ADC_NR)))
+
+    bit_array = "{0:{fill}16b}".format(data, fill='0')
+    for bit in bit_array:
+        for clk in range(2):
+            Write_data = 0x00 |  (clk << SCLK[ADC_NR]) | ( int(bit) << SDIO[ADC_NR] )
+            I2C_device.write_bytes(0x02, Write_data)
+#            sleep(sleep_time)
+    I2C_device.write_bytes(0x03, 0x0F)
+#    print("read byte")
+    I2C_device.write_bytes(0x06, (1 << SDIO[ADC_NR]))
+    I2C_device.write_bytes(0x03, (0x0F ^ (0x01 << ADC_NR)))
+    read_bit = ''
+    for cnt in range(8*(ADC_bytes+1)):
+        for clk in [1,0]: # Read after faling edge
+            Write_data = 0x00 | (clk << SCLK[ADC_NR]) | ( int(bit) << SDIO[ADC_NR] )
+            I2C_device.write_bytes(0x02, Write_data)
+        ret_ack, ret_value = I2C_device.read_bytes(0x00, 1)
+        if ret_ack:
+            read_bit += str((int(ret_value, 16) >> SDIO[ADC_NR])  & 0x01)
+        else:
+            print("ACK nok")
+    I2C_device.write_bytes(0x03, 0x0F)
+    I2C_device.write_bytes(0x07, 00)
+    Write_data = 0x00 | (0 << SCLK[ADC_NR]) | ( 0 << SDIO[ADC_NR] )
+    I2C_device.write_bytes(0x02, Write_data)
+    I2C_device.write_bytes(0x03, 0x0F)
+    stri = "Read back data is: {0:2x} ".format(int(read_bit, 2))
+    print(stri)
+    return read_bit;
+
+
+
+
+i
+for cnt in range(3):
+    if SET_ADC :
+        ADC_address = 0x3A # see address table
+        ADC_data    = 0x00 # 8 bits data
+        ADC_bytes   = 0x00 # 00 / 11 + 1 bytes
+        ADCNR = ADC_ORDER[cnt]
+        set_gain(10, ADCNR)
+        stri = "Set channel {}".format(ADCNR)
+        print(stri)
+
+        data = Read_byte_ADC(0x0A, ADC_NR = ADCNR)
+        if data == "0x81":
+            print("ADC locked")
+        else:
+            print("ADC not locked")
+
+