Making disconnection more robust
Tim Small
tim at seoss.co.uk
Mon Aug 7 18:50:49 UTC 2017
Hello,
As previously discussed, the disconnection code currently does no
checking to verify that the modem has come back into command mode (it
just drops DTR for a second, and hopes for the best) i.e.
[Drop DTR]
[end disconnect sequence, assuming modem is back in command mode]
I'd like to change this so that the command flow is:
[Drop DTR]
[send "AT<CR>"]
[proceed if the modem replied with "OK"]
... if "OK" isn't received within the timeout, then:
[report modem still not in command mode]
["+++"]
["wait for end of escape guard interval"]
[end disconnect sequence if the modem replied with "OK", otherwise...]
[send "AT<CR>"]
[end disconnect sequence if the modem replied with "OK", otherwise...]
... if "OK" isn't received within the timeout, then:
[report modem still not in command mode]
[serial "break"]
[end disconnect sequence if the modem replied with "OK", otherwise...]
[report failure to disconnect modem?]
What roughly would a reasonable implementation of the "check AT-OK, if
not then try next method" process look like? I've been poking about
with src/mm-broadband-bearer.c - but don't really have a clear idea how
to proceed...
I'm assuming that I would use mm_base_modem_at_command_full to send the
"AT<CR>" commands, but is it ok to do this from a command completion
handler?
Are there any existing analogous exchanges which I could take a look at
to base this on?
Cheers,
Tim.
--
South East Open Source Solutions Limited
Registered in England and Wales with company number 06134732.
Registered Office: 2 Powell Gardens, Redhill, Surrey, RH1 1TQ
VAT number: 900 6633 53 http://seoss.co.uk/ +44-(0)1273-808309
More information about the ModemManager-devel
mailing list