code: def valid_header_waiting(self):
          
          if len(self.buffer) < 4:
              self.logger.debug("Buffer does not yet contain full header")
              result = False
          else:
              result = True
              result = result and self.buffer[0] == velbus.START_BYTE
              if not result:
                  self.logger.warning("Start byte not recognized")
              result = result and (self.buffer[1] in velbus.PRIORITY)
              if not result:
                  self.logger.warning("Priority not recognized")
              result = result and (self.buffer[3] & 0x0F <= 8)
              if not result:
                  self.logger.warning("Message size not recognized")
          self.logger.debug("Valid Header Waiting: %s(%s)", result, str(self.buffer))
          return result
docs: Check if a valid header is waiting in buffer