Roger Binns
2005-04-25 06:11:19 UTC
Joe,
Please can you do some more updates the phone detection code.
Firstly see if you can talk to all the ports in parallel (ie
use multiple threads) otherwise things get quite slow. (In
the short term you could also set the timeout to one second
instead of the default 3).
The code seems to believe it can send AT commands at anything
and seems to wait an infinite amount of time for responses.
With the LG diagnostics interface, this should not be done.
I'd recommend filtering the list of com ports first and
only send AT commands to modem devices (ie not to serial
devices) The current code hangs (well I had to control-C
BitPim after 4 minutes) when sending AT commands to the
diagnostic interface of an LG phone.
It is a good idea to put something in the log since users
won't see the console output. I'd be happy for it to be a
lot and be verbose until the feature is reliable.
You should also only grab the list of ports that at least
one phone module has in its auto-detection list. That will
avoid talking to ports we know that no phone model is interested
in. (I can assure you that BitPim can only confuse my GPS :-)
Do not send AT$CDMG. If sent on the USB modem interface of
an LG phone, it switches the diagnostics to use the serial
interface (most LG phones can be talked to over a serial interface
or a composite USB interface). Once that switch has happened
then the phone can't be talked to unless the user goes in and
changes some settings in a hidden service menu.
Roger
Please can you do some more updates the phone detection code.
Firstly see if you can talk to all the ports in parallel (ie
use multiple threads) otherwise things get quite slow. (In
the short term you could also set the timeout to one second
instead of the default 3).
The code seems to believe it can send AT commands at anything
and seems to wait an infinite amount of time for responses.
With the LG diagnostics interface, this should not be done.
I'd recommend filtering the list of com ports first and
only send AT commands to modem devices (ie not to serial
devices) The current code hangs (well I had to control-C
BitPim after 4 minutes) when sending AT commands to the
diagnostic interface of an LG phone.
It is a good idea to put something in the log since users
won't see the console output. I'd be happy for it to be a
lot and be verbose until the feature is reliable.
You should also only grab the list of ports that at least
one phone module has in its auto-detection list. That will
avoid talking to ports we know that no phone model is interested
in. (I can assure you that BitPim can only confuse my GPS :-)
Do not send AT$CDMG. If sent on the USB modem interface of
an LG phone, it switches the diagnostics to use the serial
interface (most LG phones can be talked to over a serial interface
or a composite USB interface). Once that switch has happened
then the phone can't be talked to unless the user goes in and
changes some settings in a hidden service menu.
Roger