def METHOD_NAME(self):
    while self.doPoll:
        if self.ilbit == '1':
            print('Resetting 647 interlock')
            self.ser_port.write('?RsC\r') # reset controller to clear the interlock error
            time.sleep(30) # wait until reset is finished
            self.ser_port.flush()
            #flush our output queue
            # try:
            #     while True:
            #         self.replyQueue.get(False)
            # except Empty:
            #     pass
            self.ilbit = '0'
            print('647 Interlock reset')
        #print 'p'
        try:
            cmd = self.commandQueue.get(False)
            #print cmd
            self.ser_port.write(cmd)
            self.ser_port.flush()
        except Queue.Empty:
            pass
        #wait a little for reply                
        time.sleep(.05)
        ret = self._readline()
        if (not ret == '') and (not self.ilbit == '1'): # ignore all replies during controller reset
            #print ret
            #process response - either a response or an ad-hoc message
            if not ret.startswith('$'): #normal response
                self.replyQueue.put(ret)
            else: #adhoc
                self._procAdHoc(ret)
                #self.adhocQueue.put(ret)