Huawei ME906s-158 (a.k.a. HP lt4132) IPv6 support

Tore Anderson tore at fud.no
Tue Jul 4 19:39:21 UTC 2017


Hi guys,

I'm having problems making IPv6 work with this device. Even though
Huawei's home page[1] claims it supports IPv6, the "AT+CGDCONT=?" only
gives a single response line with the "IP" PDP type.

Section 18.7 (pages 281-282) of the device's AT Command Interface
Specification[2] documents a proprietary command "AT^IPV6CAP" which
queries the IPv6 capabilities. This helps shed some more light on what
is going on. The "AT^IPV6CAP=?" invocation returns the list of supported
modes "^IPV6CAP: (1,2,7)". Here 1 is IPv4-only, 2 is IPv6-only, while 3
is dual-stack. So the modem should support them all.

Unfortunately however, the "AT^IPV6CAP?" invocation causes a response of
"^IPV6CAP: 1", which I understand to mean that the modem is currently in
an IPv4-only mode. Bummer.

What I am trying to figure out is how to change it into the dual-stack
mode. (I have of course tried "AT^IPV6CAP=7" but that command is not
understood, it appears the "AT^IPV6CAP" command only has read-only
purposes.) Huawei and HP support haven't been very helpful either.

The ModemManager sources contain a tool called "ipv6pref"[3] which I
believe to be my last resort. I haven't been able to make it work,
though, so I'm turning to this list for some pointers. My (initial)
questions are the following:

* It is supposed to be used with a "DM port". Is that a /dev/ttyUSB* or
/dev/cdc-wdm0 or something else?

* Does the tool require the modem to be in a particular configuration?
It has three different configurations; 1 is a vendor specific interface
class where I think is meant to be used as a serial modem with PPP (MM
recognises it in this mode), 2 is ECM mode and also the default (MM does
not recognise it in this mode), 3 is MBIM mode in which MM also
recognises it.

[1]
http://consumer.huawei.com/solutions/m2m-solutions/en/products/tech-specs/me906s-158-en.htm
[2] http://download-c.huawei.com/download/downloadCenter?downloadId=51047
[3]
https://cgit.freedesktop.org/ModemManager/ModemManager/tree/libqcdm/tests/ipv6pref.c

Also, for the benefit of anyone stumbling across this post while
attempting to make the modem work with ModemManager to begin with, I'll
mention the following caveats:

1) The modem requires the "ndp_to_end" quirk to be enabled (otherwise
all traffic is blackholed), at least in MBIM mode. This was recently
made the default in the net-next tree for the HP lt4132 so it shouldn't
be necessary to fix manually for very long.

2) In order to change the USB bConfigurationValue from the useless
default 2 (ECM) to the working 3 (MBIM) you must first deconfigure it
(by writing 0 or -1 to bConfigurationValue). Going directly from 2 to 3
doesn't work, at least MM won't recognise it then. usb_modeswitch
doesn't support doing this at the moment but the maintainer said he'd
look into it, so hopefully also this will work out of the box in the
near future.

Tore


More information about the ModemManager-devel mailing list