Re: Mobile broadband connects to wrong USB device
- From: Rick Jones <rick activeservice co uk>
- To: Dan Williams <dcbw redhat com>
- Cc: networkmanager-list gnome org
- Subject: Re: Mobile broadband connects to wrong USB device
- Date: Thu, 15 Jan 2009 17:46:45 +0000
Hi Dan
--On Wednesday, January 14, 2009 18:29:51 -0500 Dan Williams <dcbw redhat com> wrote:
> On Tue, 2009-01-06 at 16:03 +0000, Rick Jones wrote:
> >
> > a) it requires an initial <CR> otherwise it fails to see a clean AT
> > command and doesn't respond - resulting in an init. timeout.
>
> With this, my Sierra 860 doesn't respond and times out. Were you ever
> able to find out from the MobileStream guys why this might be required?
> It might also be something that NetworkManager isn't doing when setting
> up the serial port. Does USBModem need specific serial port settings?
I didn't get much response from MobileStream, and also the problem doesn't happen on Windows :(. It seems to be some interaction with the Linux USB/serial driver, because I can prove the problem simply by connecting to the modem with telnet to /dev/USB0. The first command after connection is ignored. I thought initially that it needed to receive 2 AT commands before it would respond, but in fact it just needs \r before the first AT. I suspect that it picks up a bogus byte or two when the connection is opened, and thus the first AT is not seen as starting a new line, and hence ignored.
> > b) its initial CREG state is 1, meaning that NM gets incorrect
> > responses to its CREG queries later in the conversation. It requires
> > +CREG=0 in the init string.
>
> With this also, my Sierra 860 doesn't respond and times out.
Hmmm, that's a blow, I would have thought that a modem that responds to CREG queries would allow +CREG=n.
> > By hacking these fixes into the init string it works fine. It's a soft
> > modem running in a Palm Treo handheld: USBModem by MobileStream. At
> > least one other poster on this list is using (or trying to) the same
> > software.
>
> What's the init string you currently use? Long ago you mentioned:
>
> AT&F\rATV1 X4 &C1 +CREG=0
>
> Is that still correct? Or can you move the AT&F after the \r?
I've changed it to \rAT&F V1 X4 &C1 +CREG=0. It will also accept E0 and +FCLASS=0, but I overwrote those because I tweaked the embedded string in binary and couldn't extend it - those settings happen to be the defaults in USBModem.
> > Regarding ATZ v. AT&F, I believe the latter should always be
> > supported, as it is a full reset. ATZ restores to settings saved using
> > AT&W, but if that's never been used it's the same as AT&F. If AT&W is
> > not supported, then ATZ may not be either; and if you don't use AT&W
> > to save settings (does NM?) then there is no reason to use ATZ.
>
> The Sierra 860 also doesn't like AT&F *at all*. Whee! If we can put
> together an init string that works for now, we can add it to the bottom
> of the list.
USBModem works with ATZ or AT&F, but I noticed a post from someone else saying their modem didn't like ATZ. I was recalling my memories of programming "real" modems, where AT&F was always the full "factory reset", and hence the only thing that could be guaranteed to put the modem into a known state.
This is always the problem - somewhere along the line someone re-interprets the "standard", so it's never quite as standard as we'd all like :-/.
Maybe it's possible to have an init string that's close to universal at the moment, but I think everything said above illustrates that it's probably impossible to get a single string that works (and will work) for everything. To deal with the security issue, how about a configuration file writable only by root, containing a list of possible of init strings? This would be shipped with a selection of strings to cater for currently known variants, which the user can select from. In the case of a user having an even more oddball device, with tech knowledge and admin privilege they can add other entry.
Getting closer ....
Cheers, Rick
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]