code: def read(self, timeout=1.0):
          
          start = time()
          while len(self.rcv_data) == 0:
              if time() - start > timeout:
                  # Read operations should typically take ~1-2ms.
                  # If this exception occurs, then it could indicate
                  # a problem in one of the following areas:
                  # 1. Bad usb driver causing either a dropped read or write
                  # 2. CMSIS-DAP firmware problem cause a dropped read or write
                  # 3. CMSIS-DAP is performing a long operation or is being
                  #    halted in a debugger
                  raise Exception("Read timed out")
          return self.rcv_data.popleft()
docs: read data on the IN endpoint associated to the HID interface