def performOpen(self, options={}):
     """Perform the operation of opening the instrument connection"""
     # check communication
     try:
         # open connections
         self.digitizer1 = afDigitizerWrapper.afDigitizer()
         self.digitizer1.create_object()
         self.digitizer2 = afDigitizerWrapper.afDigitizer()
         self.digitizer2.create_object()            
         self.sigGen = afSigGenWrapper.afSigGen()
         self.sigGen.create_object()
         
         
         
         # get address strings
         sVisaDig1 = self.dComCfg['address']
         sVisaDig1LO = self.getValue('Local oscillator digitizer 1 VISA')
         sVisaDig2 = self.getValue('Digitizer 2 VISA')
         sVisaDig2LO = self.getValue('Local oscillator digitizer 2 VISA')
         sVisaSigGen = self.getValue('Signal generator VISA')
         sVisaSigGenLO = self.getValue('Local oscillator signal generator VISA')
         
         self.nSamples = int(self.getValue('Number of samples'))
         self.nTriggers = int(self.getValue('Number of triggers'))
         self.nSegments=int(self.getValue('Number of segments'))
         self.cAvgSignals = [None]*3
         self.cAvgNoise = [None]*3
         self.vCorrelation = None
         self.dFreq = self.getValue('RF Frequency')
         self.nLags = int(self.getValue('Number of lags'))
         self.dPrefilter = int(self.getValue('Prefilter'))
         self.cTrace = [None]*2
         
         # boot instruments
         self.digitizer1.boot_instrument(sVisaDig1LO, sVisaDig1)
         self.digitizer2.boot_instrument(sVisaDig2LO, sVisaDig2)
         self.sigGen.boot_instrument(sVisaSigGenLO, sVisaSigGen)
         
         # set LO Ref mode to Ext_Daisy, leveling to auto and modulation to CW
         self.sigGen.lo_reference_set(0)
         self.sigGen.rf_current_level_mode_set(0)
         self.sigGen.rf_modulation_source_set(3)
         
         # set modulation mode to generic
         self.digitizer1.modulation_mode_set(5)
         self.digitizer2.modulation_mode_set(5)
         
         # set LO mode to OXCO for dig 1 and Ext daisy for dig 2
         self.digitizer1.lo_reference_set(2)
         self.digitizer2.lo_reference_set(2)
         
     except afDigitizerWrapper.Error as e:
         # re-cast afdigitizer errors as a generic communication error
         msg = str(e)
         raise InstrumentDriver.CommunicationError(msg)
 def performOpen(self, options={}):
     """Perform the operation of opening the instrument connection"""
     # check communication
     try:
         # open connection
         self.sigGen = afSigGenWrapper.afSigGen()
         self.sigGen.create_object()
         # get address strings
         sVisaSigGen = self.dComCfg['address']
         sVisaLO = self.getValue('Local oscillator VISA')
         self.sigGen.boot_instrument(sVisaLO, sVisaSigGen)
     except afSigGenWrapper.Error as e:
         # re-cast afSigGen errors as a generic communication error
         msg = str(e)
         raise InstrumentDriver.CommunicationError(msg)