+def ensure_modem_listening (modem):
+ # We try to ger response for about 2 seconds
+ for i in range(20):
+ modem.send('at junk\r');
+ index = modem.expect (['ERROR\r', pexpect.TIMEOUT], 0.1);
+ if index == 0:
+ modem.send('at\r');
+ index = modem.expect (['OK\r'], 1);
+ return;
+ raise
+