[MM] [PATCH] Huawei E3276 LTE Modem

I've seen this modem mentioned a few times on this list and I'm aware of the cdc_ncm kernel patch, but I am 
still having trouble with it in ModemManager.

The attached patch, huawei-e3276-port-types.diff, allows ModemManager to detect the modem.  I think this is 
safe to push.

However, ModemManager is still unable to establish a connection.
The attached patch, huawei-e3276-bearer-hacks.diff, allows a connection to be made by forcing ip_type to IPV4 
and dropping the encoded_auth parameter to the AT^NDISDUP command, although this is obviously not ideal.

I'm not clear on where the ip_type should be set and why it is not.  Any suggestions on where to start 
looking, please?

Upon further investigation, I found that the E3276 is happy with encoded_auth set to 1 or 2, but fails with 
'+CME ERROR: Incorrect parameters' if encoded_auth is set to 0.
This behaviour is slightly different to the E1820 and K4605 (E372) which will establish a connection with 
encoded_auth set to 0, 1 or 2.
One solution might be to only add the encoded_auth parameter if it is non-zero.  I have tested this with the 
E3276, E1820 and K4605 and all three modems will establish a connection when sending: 
Are there any objections to this?

The output of AT^NDISDUP=? on the E3276 is
^NDISDUP: (1-20),(0-1)
Which to me indicates the only parameters are the context ID and the connection state, i.e. AT^NDISDUP=1,1 to 
connect PDP context 1 and AT^NDISDUP=1,0 to disconnect.
The PDP context being defined previously by AT+CGDCONT.
However, I have tested on the E3276, E1820 and K4605 and I can confirm that the APN sent in the AT^NDISDUP 
command overrides what was defined by AT+CGDCONT.
The E3276 even updates the value in the PDP context, confirmed by sending AT+CGDCONT? after AT^NDISDUP, 
although the E1820 and K4605 do not.
I suppose we do need to send the extra parameters apn, user, passwd and encoded_auth as I don't know of any 
other way of specifying the username and password for a non-PPP connection.
Another solution then, might be to send AT^NDISDUP=1,1 unless either user or passwd are not empty, in which 
case we send the longer form AT^NDISDUP=1,1,"apn","user", 'pass" [,encoded_auth != 0].

This e-mail is subject to the UCT ICT policies and e-mail disclaimer published on our website at 
http://www.uct.ac.za/about/policies/emaildisclaimer/ or obtainable from +27 21 650 9111. This e-mail is 
intended only for the person(s) to whom it is addressed. If the e-mail has reached you in error, please 
notify the author. If you are not the intended recipient of the e-mail you may not use, disclose, copy, 
redirect or print the content. If this e-mail is not related to the business of UCT it is sent by the sender 
in the sender's individual capacity.

Attachment: huawei-e3276-port-types.diff
Description: huawei-e3276-port-types.diff

Attachment: huawei-e3276-bearer-hacks.diff
Description: huawei-e3276-bearer-hacks.diff

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