[RFC] Probing ttys by default

Lars Knudsen larsgk at gmail.com
Fri Mar 21 04:11:44 PDT 2014


First, can someone with a deeper knowledge of how the modemmanager probes
tell me (for a near term solution) if it's possible to report back some
magic keyword to the initial "AT" that will let the modemmanager release a
device instantly?

Our problem is that we need to release very soon - and we want to support
Chromebook and Linux (in general) with our education platform (
www.empirikit.com ) - preferably without hacking our device to report as
something else - but we might be forced to to give an acceptable user
experience.

For a future solution, I agree with Sven's proposal (sorry for the quoting
- I came late to the list):

"I would like to propose the following for discussion:

The kernel cdc_acm driver could expose whether the device seems to be a
modem. It knows, through the bmCapabilities field in the CDC Call
Management descriptor [1]. Another field that comes to mind is the
bInterfaceProtocol of the Interface Descriptor. For devices that don't
speak AT-commands it should be zero.

Then one can craft some general udev rule that grey- or blacklists
(what's the difference) all devices that don't seem to be a modem. If
there devices out there that erroneously report that they don't have
calling capabilities, then that those would have to be whitelisted.

I can confirm that for the UMTS card in my Laptop, lsusb explicitly
lists that it speaks the AT-commands protocol (bInterfaceProtocol=1) and
that it has call management (bmCapabilities=3 in the CDC Call Management
descriptor).


Regards,
  Sven


[1] Based on a check of this field, the Linux cdc_acm driver decides
whether it prints the message "This device cannot do calls on its own.
It is not a modem.". See cdc-acm.c"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/modemmanager-devel/attachments/20140321/7bcbf341/attachment-0001.html>


More information about the ModemManager-devel mailing list