def request(self, response_queue, payload, timeout_s=None,
                poll=POLL_QUEUES):
        '''
        Send

        Parameters
        ----------
        device : serial.Serial
            Serial instance.
        response_queue : Queue.Queue
            Queue to wait for response on.
        payload : str or bytes
            Payload to send.
        timeout_s : float, optional
            Maximum time to wait (in seconds) for response.

            By default, block until response is ready.
        poll : bool, optional
            If ``True``, poll response queue in a busy loop until response is
            ready (or timeout occurs).

            Polling is much more processor intensive, but (at least on Windows)
            results in faster response processing.  On Windows, polling is
            enabled by default.
        '''
        self.connected.wait(timeout_s)
        return request(self, response_queue, payload, timeout_s=timeout_s,
                       poll=poll)