code: def is_micropython_usb_device(port):
      
      if type(port).__name__ == 'Device':
          # Assume its a pyudev.device.Device
          if ('ID_BUS' not in port or port['ID_BUS'] != 'usb' or
              'SUBSYSTEM' not in port or port['SUBSYSTEM'] != 'tty'):
              return False
          usb_id = 'usb vid:pid={}:{}'.format(port['ID_VENDOR_ID'], port['ID_MODEL_ID'])
      else:
          # Assume its a port from serial.tools.list_ports.comports()
          usb_id = port[2].lower()
      # We don't check the last digit of the PID since there are 3 possible
      # values.
      if usb_id.startswith('usb vid:pid=f055:980'):
          return True
      # Check for Teensy VID:PID
      if usb_id.startswith('usb vid:pid=16c0:0483'):
          return True
      return False
docs: Checks a USB device to see if it looks like a MicroPython device.