'Wait until the subnegotiation has been acknowledged or timeout. It
can also throw a value error when the answer from the server does not
match the value sent.'

def wait(self, timeout=3):

    timeout_timer = Timeout(timeout)
    while (not timeout_timer.expired()):
        time.sleep(0.05)
        if self.is_ready():
            break
    else:
        raise SerialException('timeout    while    waiting    for    option    {!r}'.format(self.name))
