Probing MBIM ports on devices with both MBIM and other cdc-wdmX devices

Bjørn Mork bjorn at
Mon May 6 01:19:04 PDT 2013

Aleksander Morgado <aleksander at> writes:

> By default cdc-wdm ports are never probed for AT capabilities in MM,
> only ttys are assumed to be either AT or QCDM. We could have a new more
> generic MMPortAt in addition to the MMPortAtSerial I guess. Question is,
> are these ports usually only in Ericsson devices?

I can't remember seeing them in any other device.  But that doesn't mean
much these days...

> Or is it really more
> generic, like any cdc-wdm port found in modems out there may very well
> be an ÄT port?

Oliver recently pointed me to the CDC WMC spec ("Universal Serial Bus
CDC Subclass Specification for Wireless Mobile Communications Devices -
Revision 1.1 (Errata 1) - November 3, 2010"), which seems to indicate
that CDC WDM ports on mobile devices are supposed to use AT commands.


  6.6.1 Functional Topology

  The Device Management data exchange facility allows management
  information to be exchanged between the logical handset and the USB
  host, without interfering with any other activities that are in
  process. The facility is conceptually similar to a Communications
  Class/Abstract Control Model interface. However, Device Management
  differs from ACM in two ways:

  1. There is no data class interface; all information is exchanged
   using commands over the control endpoint.

  2. The AT command set is the only way of communicating with this
    interface; there is no “data plane” associated with this kind of


  7.1 Encapsulating AT Command Data

  [USBPSTN1.2] defines SendEncapsulatedCommand and
  GetEncapsulatedResponse as mechanisms for transporting control-plane
  data. Experience has shown that the defined mechanisms are explained
  with insufficient clarity to ensure interoperability between drivers
  and firmware designed by different development groups.

  For the purposes of this subclass specification, functions within
  devices shall be implemented to transport AT command data using the
  assumptions and algorithms outlined in this section.

So it is reasonable to expect that a port driven by the cdc_wdm driver
can be used as an additional AT port, with the extremely unfortunate
exception of the Huawei QMI devices in v3.4 and v3.5.  That historical
misfortune is going to haunt me... I really wish I had never done that.
I could claim "young, stupid and needed the money", but I'm afraid only
"stupid" applies :)


More information about the libmbim-devel mailing list