def autoopen(self): """ function to autodetect a Msp430 by VID/PID and response to a ping command. On success sets self._serial_device to an open serial connection to the proper device. @return True on success, throws error otherwise @throws SerialException indicating no match was found """ vid, pid = 0x2047, 0x0002 try: import serial.tools.list_ports as lp except ImportError as e: raise ImportError("makerbot based pyserial required for autoopen") serial_devs = lp.list_ports_by_vid_pid(vid, pid) # flatten to a list to avoid GeneratorExit errors devices = [d for d in serial_devs] for dev in devices: ser = self.open(dev['port']) if ser is None: continue ser.baudrate = 9600 ser.baudrate = 115200 ser.timeout = 0 while len(ser.read()) > 0: logger.debug("Flushed byte from input") try: self.doSyncronize(ser) self._serial_dev = ser return ser except MspGangError as e: self._serial_dev = None #import pdb; pdb.set_trace() # todo: Close serial device logging.warning(e) ser.close() raise serial.SerialException("No match on VID/PID %04x:%04x" % (vid, pid))
import serial import serial.tools.list_ports as lp import optparse parser = optparse.OptionParser() parser.add_option("-f", "--filename", dest="filename", help="gcode file to print", default=False) parser.add_option("-s", "--gcode_start_end_sequences", dest="start_end_sequences", help="run gcode start and end proceeses", default=True) (options, args) = parser.parse_args() vid = int('23c1', 16) pid = int('d314', 16) ports = lp.list_ports_by_vid_pid(vid, pid) port = None for port in ports: thePort = port['port'] break if port == None: print 'You dont have a replicator connected!!11' sys.exit(1) r = s3g.s3g.from_filename(thePort) parser = s3g.Gcode.GcodeParser() parser.state.values["build_name"] = 'test' parser.state.profile = s3g.Profile('ReplicatorDual')
import argparse import sys import serial.tools.list_ports as lp arg_parser = argparse.ArgumentParser( 'Calls serial.tools.list_ports.list_ports_by_vid_pid()') arg_parser.add_argument( '--vid', '-v', action='store', default='23C1', help="The VID in hex") arg_parser.add_argument( '--pid', '-p', action='store', default=None, help="The PID in hex") args = sys.argv[1:] arguments = arg_parser.parse_args(args) vid = int('0x' + arguments.vid, 16) pid = int('0x' + arguments.pid, 16) if None != arguments.pid else None print list(lp.list_ports_by_vid_pid(vid, pid))
import sys sys.path.insert(0, '.') import serial try: import serial.tools.list_ports as lp except ImportError as e: print("not using serial containing list_ports tools") print(e) exit(-1) except ImportError as e: print("not using serial containing list_ports tools") print(e) exit(-1) if __name__ == '__main__': print("Usage: python scan_vidpid.py VendorId ProductId") print("Found ports:") pid = None vid = None if len(sys.argv) > 1: vid = int(sys.argv[1], 16) if len(sys.argv) > 2: pid = int(sys.argv[2], 16) print("searcing for vid: " + str(vid) + " pid: " + str(pid)) for portDict in lp.list_ports_by_vid_pid(vid, pid): print(portDict)
import argparse import sys import serial.tools.list_ports as lp arg_parser = argparse.ArgumentParser( 'Calls serial.tools.list_ports.list_ports_by_vid_pid()') arg_parser.add_argument('--vid', '-v', action='store', default='23C1', help="The VID in hex") arg_parser.add_argument('--pid', '-p', action='store', default=None, help="The PID in hex") args = sys.argv[1:] arguments = arg_parser.parse_args(args) vid = int('0x' + arguments.vid, 16) pid = int('0x' + arguments.pid, 16) if None != arguments.pid else None print(list(lp.list_ports_by_vid_pid(vid, pid)))
import sys sys.path.insert(0,'.') import serial try: import serial.tools.list_ports as lp except ImportError as e: print("not using serial containing list_ports tools") print(e) exit(-1) except ImportError as e: print("not using serial containing list_ports tools") print(e) exit(-1) if __name__=='__main__': print("Usage: python scan_vidpid.py VendorId ProductId") print("Found ports:") pid = None vid = None if len(sys.argv) > 1: vid = int(sys.argv[1],16) if len(sys.argv) > 2: pid = int(sys.argv[2],16) print("searcing for vid: " + str(vid) + " pid: " + str(pid)) for portDict in lp.list_ports_by_vid_pid(vid,pid): print(portDict)