Aleksander Morgado aleksander at
Wed Jul 13 14:19:03 UTC 2016

Hey Laurent,

On Tue, Jul 12, 2016 at 7:19 PM, Laurent Savaete <laurent at> wrote:
> I recently bought a couple of dlink USB modems, more exactly DWM-156 HW
> version A8.
> They work ok on linux after figuring out the usb_modeswitch stuff, but now
> I'm stuck with getting them to do USSD.
> I am getting the exact same symptoms as in this thread:
> I see no signs of work being done on adding this support either in this
> mailing list, in the bugtracker or the git repo, so I'm pondering writing a
> patch to get my modems to work (I want to query the prepaid credit status of
> the modem).

Yes, no USSD support in MBIM modems implemented in MM. The MBIM
protocol does have a "USSD" service
(e550a0c8-5e82-479e-82f7-10abf4c3351f) with one single message type;
that should be enough to manage the full USSD sequence.

> So my questions:
> - has USSD via MBIM been implemented and I missed it?

No, it hasn't been implemented in MM. libmbim does have support for
it, though, see:

> - if not, how hard would it be to write the missing code if I've never
> looked into MBIM or modemmanager code?

Well, you can have other logic as reference. What you would need to do
is to implement the "3gppUssd" interface in the "MMBroadbandModemMbim"
object. The generic MMBroadbandModem already implements the 3gppUssd
interface, so that should give you some pointers.

> - any pointers to relevant documentation for MBIM?

I believe the whole documentation is hidden somewhere within this site:

But I don't think there's a fixed link for the documentation that I
could share. I'll email you the docs I have privately.


More information about the ModemManager-devel mailing list