code: def _send_command(self, input_command):
          
          if input_command is None:
              return
          time_since_last_command = time.time() - self.last_command_at
          if time_since_last_command < self.pause_between_commands:
              # Wifi gateway requires 100ms pause between commands to function at least somewhat reliably.
              time.sleep(self.pause_between_commands - time_since_last_command)
          self.last_command_at = time.time()
          command = b""
          for item in input_command:
              command = command + item
          if len(command) == 1:
              command = command + b"\x00"
          if len(command) == 2:
              command = command + b"\x55"
  
          sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
          sock.sendto(command, (self.gateway_ip, self.gateway_port))
          sock.close()
          return command
docs: You shouldn't use this method directly.
  
              Send a single command. If previous command was sent
              recently, sleep for 100ms (configurable with pause_between_commands
              constructor keyword).