--On Wednesday, July 01, 2009 08:11:51 -0400 Dan Williams <[email protected]>
wrote:
Ok, we need to figure out what commands it actually responds to, and see
if there's some way to distinguish the specific ports. Are you able to
get a program like minicom or screen running on the ports so we can try
out some commands. If you can do that, try the following commands on
all the ports the modem exposes, and let me know what they return
(including what port you entered it on):
ATI
AT+CGMM
AT+CGAP?
Using minicom, both ports give identical responses to all these:
ATI:
Manufacturer: ZTE INCORPORATED
Model: MF627
Revision: BD_3GHAP673A4V1.0.0B02
IMEI: 358066024082082
+GCAP: +CGSM,+DS,+ES
AT+CGMM:
MF627
AT+CGAP? is ERROR, or did you mean AT+GCAP:
+GCAP: +CGSM,+DS,+ES
(same as last line of ATI response).
Functionality is definitely tied to the IF number. IF0 is effectively dead
(supposedly NMEA, but I don't know what it's meant to support). IF1 & IF3
both behave like a modem (usually), and seem very closely tied together.
E.g. if you use ATE0 to turn off echo on one port, it is turned off on
both. Very occasionally, IF1 will not respond to AT commands, but the modem
still works on the correct IF3 port, and IF1 still spits out messages.
UMs always come out together on both ports (except when IF3 is connected of
course).
I haven't tried every possible AT command, but AFAICS from those I have
tried, they all work the same on both ports, EXCEPT for dialling. A valid
ATDT string on IF3 produices an immediate CONNECTED response, but on IF1
there is no response, and the port hangs. This also effectively crashes the
device, because once you disconnect from the ports the device shuts down
and all the ttyUSB nodes disappear.
I kinda wonder if the device is actually really buggy and IF1 is not
supposed to accept commands at all.
I can't see any way to detect the difference between the ports
heuristically, it seems to need hard-coded knowledge of IF3. I started
using it on an earlier OS, Ubuntu 8.10 (Hardy), and that required addition
of a custom fdi file that explicitly identified IF3 as a GSM modem, and it
always used the correct port. I can't remember exactly what kernel version
that was.
Now with 2.6.29 that file isn't necessary, and there doesn't seem to be any
reference to the device in the standard fdi files, so the mechanism is
different, but I don't quite understand how. Maybe it's because Hardy used
NM 0.7.0 ?
It would be good to be able to use HAL or similar to explicitly declare the
interface, or even declare IF1 as non-available just to stop it being
probed. Is that possible?
Second, do any of the non-usable ports spontaneously emit messages?
Huawei devices emit a variety of AT^BOOT, AT^RSSI, etc on the secondary
port that can't be used for PPP, and that's something we can detect.
To confirm what I said above, all the spontaneous UMs are identical on both
ports, so not muc help there :(
Not sure where this gets us ...
--
Cheers
Rick
_______________________________________________
NetworkManager-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/networkmanager-list