def __init__(self, *args, **kwargs): if 'debug' in kwargs: self.debug = kwargs['debug'] else: kwargs.update({'debug': DEBUG}) self.debug = DEBUG if 'try_ports' in kwargs: try_ports = kwargs.pop('try_ports') else: try_ports = None if 'baudrate' not in kwargs: kwargs.update({'baudrate': BAUDRATE}) elif (kwargs['baudrate'] is None) or (str(kwargs['baudrate']).lower() == 'default'): kwargs.update({'baudrate': BAUDRATE}) if 'timeout' not in kwargs: kwargs.update({'timeout': self._TIMEOUT}) if 'write_write_delay' not in kwargs: kwargs.update({'write_write_delay': self._WRITE_WRITE_DELAY}) if ('port' not in kwargs) or (kwargs['port'] is None): port = find_mettler_toledo_device_port(baudrate=kwargs['baudrate'], try_ports=try_ports, debug=kwargs['debug']) kwargs.update({'port': port}) t_start = time.time() self._serial_device = SerialDevice(*args, **kwargs) atexit.register(self._exit_mettler_toledo_device) time.sleep(self._RESET_DELAY) t_end = time.time() self._debug_print('Initialization time =', (t_end - t_start))
def thrproc(): if self.connectButton.cget('relief') == 'raised': self.progressStart() try: port = self.portName.get() self.dev = SerialDevice(port=port) except Exception as e: if self.downloadButton: self.downloadButton.config(state=DISABLED) self.uploadButton.config(state=DISABLED) self.deleteButton.config(state=DISABLED) showwarning("Connect", "Problem opening serial. Details:\n" + str(e)) return self.dev.baudrate = 115200 self.connectButton.config(relief=SUNKEN) # send ctrl-c to break any potentially running python program ctrlc = chr(3) self.remote(ctrlc) self.populateFileView() self.termArea.insert( END, ">>> ") # write out the initial prompt... purely cosmetic self.termArea.config(background='white') self.downloadButton.config(state=NORMAL) self.uploadButton.config(state=NORMAL) self.deleteButton.config(state=NORMAL) self.connected = True else: self.connected = False if self.dev is not None: self.dev.close() self.dev = None self.connectButton.config(relief=RAISED) self.downloadButton.config(state=DISABLED) self.deleteButton.config(state=DISABLED) self.uploadButton.config(state=DISABLED) self.clearFileView() self.termArea.config(background='lightgrey') self.progressStop()