Пример #1
0
 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))
Пример #2
0
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')
Пример #3
0
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))
Пример #4
0
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)
Пример #5
0
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)))
Пример #6
0
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)