Problems with HP lt4112 Gobi 4G Module

Harald Jung - ECOS Technology Harald.Jung at ecos.de
Thu Feb 18 15:50:40 UTC 2016


Hi,



I've sent a request to the Modemmanager/Networkmanager list because Modemnager wasn't able to establish a network connection. 

We did some tests and it seems that the problem is somewhere inside the qmi communication.

ModemManager fails when it tries to get the current ip settings, i can simulate the same with the qmicli



qmicli -d /dev/cdc-wdm0 --wds-get-current-settings

error: couldn't get current settings: QMI protocol error (15): 'OutOfCall'



 qmicli -d /dev/cdc-wdm0 --wds-get-current-settings --verbose
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Opening device with flags 'none'...
[18 Feb 2016, 16:51:45] [Debug] QMI Device at '/dev/cdc-wdm0' ready
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Assuming service 'wds' is supported...
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Allocating new client ID...
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Sent message...
<<<<<< RAW:
<<<<<< length = 16
<<<<<< data = 01:0F:00:00:00:00:00:01:22:00:04:00:01:01:00:01

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Sent message (translated)...
<<<<<< QMUX:
<<<<<< length = 15
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 1
<<<<<< tlv_length = 4
<<<<<< message = "Allocate CID" (0x0022)
<<<<<< TLV:
<<<<<< type = "Service" (0x01)
<<<<<< length = 1
<<<<<< value = 01
<<<<<< translated = wds

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Received message...
>>>>>> RAW:
>>>>>> length = 24
>>>>>> data = 01:17:00:80:00:00:01:01:22:00:0C:00:02:04:00:00:00:00:00:01:02:00:01:19

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Received message (translated)...
>>>>>> QMUX:
>>>>>> length = 23
>>>>>> flags = 0x80
>>>>>> service = "ctl"
>>>>>> client = 0
>>>>>> QMI:
>>>>>> flags = "response"
>>>>>> transaction = 1
>>>>>> tlv_length = 12
>>>>>> message = "Allocate CID" (0x0022)
>>>>>> TLV:
>>>>>> type = "Result" (0x02)
>>>>>> length = 4
>>>>>> value = 00:00:00:00
>>>>>> translated = SUCCESS
>>>>>> TLV:
>>>>>> type = "Allocation Info" (0x01)
>>>>>> length = 2
>>>>>> value = 01:19
>>>>>> translated = [ service = 'wds' cid = '25' ]

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Registered 'wds' (version unknown) client with ID '25'
[18 Feb 2016, 16:51:45] [Debug] Asynchronously getting current settings...
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Sent message...
<<<<<< RAW:
<<<<<< length = 20
<<<<<< data = 01:13:00:00:01:19:00:01:00:2D:00:07:00:10:04:00:30:E3:00:00

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Sent message (translated)...
<<<<<< QMUX:
<<<<<< length = 19
<<<<<< flags = 0x00
<<<<<< service = "wds"
<<<<<< client = 25
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 1
<<<<<< tlv_length = 7
<<<<<< message = "Get Current Settings" (0x002D)
<<<<<< TLV:
<<<<<< type = "Requested Settings" (0x10)
<<<<<< length = 4
<<<<<< value = 30:E3:00:00
<<<<<< translated = dns-address, granted-qos, ip-address, gateway-info, mtu, domain-name-list, ip-family

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Received message...
>>>>>> RAW:
>>>>>> length = 20
>>>>>> data = 01:13:00:80:01:19:02:01:00:2D:00:07:00:02:04:00:01:00:0F:00

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Received message (translated)...
>>>>>> QMUX:
>>>>>> length = 19
>>>>>> flags = 0x80
>>>>>> service = "wds"
>>>>>> client = 25
>>>>>> QMI:
>>>>>> flags = "response"
>>>>>> transaction = 1
>>>>>> tlv_length = 7
>>>>>> message = "Get Current Settings" (0x002D)
>>>>>> TLV:
>>>>>> type = "Result" (0x02)
>>>>>> length = 4
>>>>>> value = 01:00:0F:00
>>>>>> translated = FAILURE: OutOfCall

error: couldn't get current settings: QMI protocol error (15): 'OutOfCall'
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Releasing 'wds' client with flags 'release-cid'...
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Unregistered 'wds' client with ID '25'
[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Sent message...
<<<<<< RAW:
<<<<<< length = 17
<<<<<< data = 01:10:00:00:00:00:00:02:23:00:05:00:01:02:00:01:19

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Sent message (translated)...
<<<<<< QMUX:
<<<<<< length = 16
<<<<<< flags = 0x00
<<<<<< service = "ctl"
<<<<<< client = 0
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 2
<<<<<< tlv_length = 5
<<<<<< message = "Release CID" (0x0023)
<<<<<< TLV:
<<<<<< type = "Release Info" (0x01)
<<<<<< length = 2
<<<<<< value = 01:19
<<<<<< translated = [ service = 'wds' cid = '25' ]

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Received message...
>>>>>> RAW:
>>>>>> length = 24
>>>>>> data = 01:17:00:80:00:00:01:02:23:00:0C:00:02:04:00:00:00:00:00:01:02:00:01:19

[18 Feb 2016, 16:51:45] [Debug] [/dev/cdc-wdm0] Received message (translated)...
>>>>>> QMUX:
>>>>>> length = 23
>>>>>> flags = 0x80
>>>>>> service = "ctl"
>>>>>> client = 0
>>>>>> QMI:
>>>>>> flags = "response"
>>>>>> transaction = 2
>>>>>> tlv_length = 12
>>>>>> message = "Release CID" (0x0023)
>>>>>> TLV:
>>>>>> type = "Result" (0x02)
>>>>>> length = 4
>>>>>> value = 00:00:00:00
>>>>>> translated = SUCCESS
>>>>>> TLV:
>>>>>> type = "Release Info" (0x01)
>>>>>> length = 2
>>>>>> value = 01:19
>>>>>> translated = [ service = 'wds' cid = '25' ]

[18 Feb 2016, 16:51:45] [Debug] Client released



Anyway starting the network works:

qmicli -d /dev/cdc-wdm0 --wds-start-network=web.vodafone.de --client-no-release-cid 
[/dev/cdc-wdm0] Network started
 Packet data handle: '1138179280'
[/dev/cdc-wdm0] Client ID not released:
 Service: 'wds'
 CID: '26'



After that I'am able to get an ip via dhcp



Here is the usb-device:



T: Bus=03 Lev=01 Prnt=01 Port=10 Cnt=02 Dev#= 5 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=ff(vend.) Sub=00 Prot=00 MxPS=64 #Cfgs= 2
P: Vendor=03f0 ProdID=581d Rev=02.28
S: Manufacturer=Hewlett-Packard
S: Product=HP lt4112 Gobi 4G Module
S: SerialNumber=0123456789ABCDEF
C: #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=500mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=02 Driver=qcserial
I: If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=03 Driver=qcserial
I: If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=qcserial
I: If#= 3 Alt= 0 #EPs= 3 Cls=0b(scard) Sub=00 Prot=00 Driver=(none)
I: If#= 4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=07 Driver=qmi_wwan
I: If#= 5 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=05 Driver=qcserial





Harald

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libqmi-devel/attachments/20160218/56766daa/attachment-0001.html>


More information about the libqmi-devel mailing list