=?GB2312?Q?Re=3A_=B4=F0=B8=B4=3A_MM=3A_Non_QMI_Huawei_modems_without_PPP_su?= =?GB2312?Q?pport=3F?=



Hi!

I can just verify that on the Huawei E3276 modem i can connect,
disconnect and query using the AT commands below.

I however don't get any network. I have patched cdc_ncm with:

	/* Huawei NCM devices disguised as vendor specific */
	{ USB_VENDOR_AND_INTERFACE_INFO(0x12d1, 0xff, 0x02, 0x16),
	  .driver_info = (unsigned long)&wwan_info,
	},
	{ USB_VENDOR_AND_INTERFACE_INFO(0x12d1, 0xff, 0x02, 0x46),
	  .driver_info = (unsigned long)&wwan_info,
	},

Any recommendations on what to debug / configure?

I can help out with testing an updated ModemManager as well I you
decide to do that.

Cheers
Olof

2012/11/12 Fangxiaozhi (Franko) <fangxiaozhi huawei com>:
> Dear All:
>         Yes, in future, Huawei 3G modems will more support ECM/NCM/MBIM device, but not PPP modem.
>         In generally, there is a ECM/NCM/MBIM interface and several serial interfaces available(at least there is one serial interface, which is used to manage the device, called PCUI interface by Huawei).
>         Currently, ECM/NCM/MBIM interface can support dial-up with both QMI and AT command at the same time. But in future, ECM/NCM/MBIM interface will more support to dial up with AT command, but not QMI.
>         So I advise that now it is time to do same work to make ModemManager can support AT command dial-up for ECM/NCM/MBIM interface.
>         The AT commands about the dial-up, it will be sent to device through the PCUI interface:
>         1. connect:
>                  AT^NDISDUP=1,1,"apn"[,<"username">,<"password">,<auth_type>]
>                         ------username, password and auth_type is optional.
>                         -----auth_type: 0: no auth, 1: PAP, 2: CHAP.
>         2. disconnect:
>                 AT^NDISDUP=1,0
>         3. connection state:
>                 1) auto report:(this report is sent by )
>                         <CR><LF> ^NDISSTAT: <stat>,,,<PDP_type>]<CR><LF><CR><LF>OK<CR><LF>
>                         -----stat: 0 disconnected, 1 connected
>                         -----PDP_type: "IPV4" or "IPV6"
>                         -----such as: ^NDISSTAT:1,,,"IPV4"
>                                            ^NDISSTAT:0,,,"IPV4"
>                 2) query state:
>                         AT^NDISSTATQRY?
>
>         Hope that these information above can help you.
>
> Best Regards,
> Franko Fang
>
>
> -----邮件原件-----
> 发件人: networkmanager-list-bounces gnome org [mailto:networkmanager-list-bounces gnome org] 代表 Bj?rn Mork
> 发送时间: 2012年11月11日 23:14
> 收件人: Aleksander Morgado
> 抄送: Olof Ermis; networkmanager-list gnome org; Tommy Cheng
> 主题: Re: MM: Non QMI Huawei modems without PPP support?
>
> Aleksander Morgado <aleksander lanedo com> writes:
>
>> Hey Bjørn,
>>
>>>
>>> following up the recent discussions on libqmi regarding E3276 I am
>>> wondering if these modems could be supported without too much fuzz by
>>> ModemManager?
>>>
>>> This is a typical example of such a device (after adding the
>>> necessary match to the cdc_ncm driver):
>>>
>>> T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  3 Spd=480 MxCh= 0
>>> D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
>>> P:  Vendor=12d1 ProdID=1506 Rev= 1.02
>>> S:  Manufacturer=HUAWEI Technology
>>> S:  Product=HUAWEI Mobile
>>> C:* #Ifs= 4 Cfg#= 1 Atr=80 MxPwr=500mA
>>> I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=02 Prot=12 Driver=option
>>> E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
>>> E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
>>> I:  If#= 1 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=02 Prot=16 Driver=cdc_ncm
>>> E:  Ad=82(I) Atr=03(Int.) MxPS=  64 Ivl=2ms
>>> I:* If#= 1 Alt= 1 #EPs= 3 Cls=ff(vend.) Sub=02 Prot=16 Driver=cdc_ncm
>>> E:  Ad=82(I) Atr=03(Int.) MxPS=  64 Ivl=2ms
>>> E:  Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
>>> E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
>>> I:* If#= 2 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=
>>> E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
>>> E:  Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
>>> I:* If#= 3 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=
>>> E:  Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
>>> E:  Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
>>>
>>>
>>> So, except for the Mass Storage functions, there is only one serial
>>> function and one CDC NCM function available.  And according to the
>>> Windows drvier inf, the serial function is intended for PCUI.  It is
>>> used to manage the CDC NCM function, and may not support PPP at
>>> all(?)
>>>
>>> Ideally ModemManager should use the wwanX interface for data and the
>>> ttyUSBY device for control, using Huawei vendor specific AT commands
>>> to initiate and manage the connection.  The known commands specific
>>> to network device management are AFAIK
>>>
>>> connect:
>>> AT^NDISDUP=1,1,"apn"
>>>
>>> disconnect:
>>> AT^NDISDUP=1,0
>>>
>>> check:
>>> AT^DHCP?
>>>
>>> The last command will return all addresses, but the firmware also
>>> support running DHCP over the network interface so using these is not
>>> necessary .  The command is still useful to check whether there is an
>>> active connection or not.
>>>
>>> Is this something which can be supported relatively easy?
>>>
>>> I do not know how common these devices are, but the E3276 is
>>> relatively new so there might be an increasing demand for this. Based
>>> on the Windows driver I expect there are also similar devices with a
>>> CDC ECM function instead of NCM, but I have not seen any example of those yet.
>>> So I have so far only submitted a patch for cdc_ncm.
>>>
>>>
>>
>> It should not be very difficult to support these modems.
>>
>> First, we would need a way to guess whether the huawei modem is one of
>> this kind or not. If this modem replies to "AT+CLAC", please send back
>> that output.
>
> Since I don't have any such modems, I am hoping Olof or Tommy can help with this?
>
>> A first try would be to use "AT^NDISDUP=?", assuming that a proper
>> reply is given by this modem and not by the others.
>
> That I am pretty sure will not work.  AT^NDISDUP is implemented in many other Huawei modems, including some you will want to support via QMI.
>
>> Just
>> wondering, we may actually be able to decide this looking at the
>> driver reported?
>
> Probably, using some driver based heuristic like
>
>   1) I got a wwanX interface => need some management interface
>
>   2) Look at the driver of wwanX to guess what type of management interface
>     to use:
>
>    qmi_wwan => QMI over /dev/cdc-wdmY
>    cdc_mbim => MBIM over /dev/cdc-wdmY
>    (cdc_ncm or cdc_ether) and Ericsson => AT*ENAP etc over /dev/cdc-wdmY or /dev/ttyACMY
>    (cdc_ncm or cdc_ether) and Huawei => AT^NDISDUP etc over /dev/ttyUSBY
>
> And maybe other combinations you already support?  AFAIK, this is pretty much what you already do e.g. for the Ericsson (aka MBM) modems?
>
>> Are you able to run current git master ModemManager to see how the
>> modem behaves w.r.t other things like messaging, registration and
>> such? A debug log would be very helpful, as well as the output of "mmcli -m 0".
>
> Again, Olof or Tommy?
>
>> Last but not least, if anyone can sponsor a couple of these new
>> devices for us to test with, that would be best :-)
>
> Of course.  One could hope the vendors stepped in here.
>
>
> Bjørn
> _______________________________________________
> networkmanager-list mailing list
> networkmanager-list gnome org
> https://mail.gnome.org/mailman/listinfo/networkmanager-list


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