code: def make_driver(self, driver_name='generic'):
          
          module_str = 'condoor.drivers.%s' % driver_name
          try:
              __import__(module_str)
              module = sys.modules[module_str]
              driver_class = getattr(module, 'Driver')
          except ImportError as e:  # pylint: disable=invalid-name
              print("driver name: {}".format(driver_name))
              self.chain.connection.log("Import error: {}: '{}'".format(driver_name, str(e)))
              # no driver - call again with default 'generic'
              return self.make_driver()
  
          self.chain.connection.log("Make Device: {} with Driver: {}".format(self, driver_class.platform))
          return driver_class(self)
docs: Make driver factory function.