Re: Make modemmanager select data port instead of control port on Sierra MC8700/8790



On Wed, 2011-10-26 at 11:06 +0200, Davy Herben wrote:
> Hi all,
> 
> I'm working on a system which provides internet access in mobile
> environments through multiple connections (cellular, satellite,
> wifi...). We use NetworkManager to manage the wifi and cell connections,
> and our own software to monitor and log the connection statistics
> (signal strength, SSID, cell id...).
> 
> All this runs on an ubuntu machine. We're in the process of upgrading
> from an old 8.04 to 10.04. This bumps the NetworkManager from the 7.x
> range to 8.0 (or 8.4 via a PPA).
> 
> The sierra cards expose a number of ttyUSB ports: a few app ports, a
> control port (responds with useful data to AT commands), and a data port
> (can be used to open a connection, but answers only OK/ERROR to AT
> commands). 
> 
> In 7.x, I used udev rules to force NM to connect using the data port,
> like this:
> 
> KERNELS=="ttyUSB7", DRIVERS=="sierra", ENV{ID_NM_MODEM_GSM}="1"
> 
> My software then connects to the control port to monitor the status,
> also when the data connection is open.
> 
> With NM 8.0 / 8.4, the modemmanager detects the sierra modems, but
> selects the control port instead of the data port. The connection is
> successfully established, but I get no monitoring data as the control
> port is locked.

I've been tracking this for about 2 years so far, specifically with the
8775.  I do have code to allow using the APP1 or APP2 port for PPP
instead of the port that has the full parser, but I've never ever been
able to get any of the 8775 modems I've tried to work correctly in this
configuration: PPP never successfully completes.  I'm not 100% sure if
it's the command sequence we're using or what.  Basically, with  my
patches, MM sets up the connection on the main data port all the way up
to (but not including) the ATDT.  Then, it sends the ATD#99***x* on the
APP1/APP2 port.

I've tried *5* different 8775 cards, each with different firmware from
1.8, two versions of 1.9, one version of 2.0, and another of 2.1
something and they all respond the same way.  I'm beginning to think
that the 8775 simply doesn't support this.  I do have an 8780 that I
haven't yet tried with these patches.

> I also considered reading the data I need from udev in my application,
> but it looks like the data like signal strength are not reported for
> these cards.
> 
> How would you guys handle this? Is there a way to force the ModemManager
> to connect to the data port? Or (less ideally) to get the data I need
> some other way?

I guess I'd need a bit of guidance or testing after adding this
functionality; other modems can use it too.  So I suppose I'll just
polish it up, push it, and only enable it when some special option gets
set.  That way you can test it without us breaking everyone else's
Sierra modems.

Dan



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]