<div dir="ltr"><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><span>Apologies if this is dumb but I'm new to QMI. I'm trying to add LTE support on an embedded Linux device to an app. The commands below work fine when entered on the command line manually, but if I try to call them from the app on startup step 3 sometimes fails. I've checked that </span>/sys/class/net/wwan0/ exists after step 2 and I've tried calling step 3 multiple times with a 100ms pause in between but still no luck.</div><div><span><br></span></div><div dir="ltr">Step 1: Set link type to raw ip<br>$ echo Y > /sys/class/net/wwan0/qmi/raw_ip<br>Step 2: Bring interface up<br>$ ip link set dev wwan0 up<br>Step 3: Start Network (apn name MAY need to be SIM specific)<br>$ qmicli -d /dev/cdc-wdm0 --device-open-qmi --wds-start-network="ip-type=4,apn=internet" --client-no-release-cid<br>Step 4: Obtain IP lease<span><br></span></div><div dir="ltr">$ udhcpc -q -f -n -i wwan0</div><div dir="ltr"><br></div><div>Calling step 3 with "-v" gives me:</div><div>"qmicli -d /dev/cdc-wdm0 --device-open-qmi --wds-start-network="ip-type=4,apn=internet" --client-no-release-cid -v"<br>[/dev/cdc-wdm0] Opening device with flags 'none'...<br>[/dev/cdc-wdm0] loaded driver of cdc-wdm port: qmi_wwan<br>[/dev/cdc-wdm0] created endpoint<br>QMI Device at '/dev/cdc-wdm0' ready<br>[/dev/cdc-wdm0] Assuming service 'wds' is supported...<br>[/dev/cdc-wdm0] Allocating new client ID...<br>[/dev/cdc-wdm0] sent message...<br><<<<<< RAW:<br><<<<<<   length = 16<br><<<<<<   data   = 01:0F:00:00:00:00:00:01:22:00:04:00:01:01:00:01<br>[/dev/cdc-wdm0] sent generic request (translated)...<br><<<<<< QMUX:<br><<<<<<   length  = 15<br><<<<<<   flags   = 0x00<br><<<<<<   service = "ctl"<br><<<<<<   client  = 0<br><<<<<< QMI:<br><<<<<<   flags       = "none"<br><<<<<<   transaction = 1<br><<<<<<   tlv_length  = 4<br><<<<<<   message     = "Allocate CID" (0x0022)<br><<<<<< TLV:<br><<<<<<   type       = "Service" (0x01)<br><<<<<<   length     = 1<br><<<<<<   value      = 01<br><<<<<<   translated = wds<br>[/dev/cdc-wdm0] received message...<br><<<<<< RAW:<br><<<<<<   length = 24<br><<<<<<   data   = 01:17:00:80:00:00:01:01:22:00:0C:00:02:04:00:00:00:00:00:01:02:00:01:11<br>[/dev/cdc-wdm0] received generic response (translated)...<br><<<<<< QMUX:<br><<<<<<   length  = 23<br><<<<<<   flags   = 0x80<br><<<<<<   service = "ctl"<br><<<<<<   client  = 0<br><<<<<< QMI:<br><<<<<<   flags       = "response"<br><<<<<<   transaction = 1<br><<<<<<   tlv_length  = 12<br><<<<<<   message     = "Allocate CID" (0x0022)<br><<<<<< TLV:<br><<<<<<   type       = "Result" (0x02)<br><<<<<<   length     = 4<br><<<<<<   value      = 00:00:00:00<br><<<<<<   translated = SUCCESS<br><<<<<< TLV:<br><<<<<<   type       = "Allocation Info" (0x01)<br><<<<<<   length     = 2<br><<<<<<   value      = 01:11<br><<<<<<   translated = [ service = 'wds' cid = '17' ]<br>[/dev/cdc-wdm0] Registered 'wds' (version unknown) client with ID '17'<br>Network start parameters set (apn: 'internet', 3gpp_profile: '0', 3gpp2_profile: '0', auth: 'unspecified', ip-type: '4', username: 'unspecified', password: 'unspecified', autoconnect: 'unspecified')<br>Asynchronously starting network...<br>[/dev/cdc-wdm0] sent message...<br><<<<<< RAW:<br><<<<<<   length = 28<br><<<<<<   data   = 01:1B:00:00:01<br>:11:00:01:00:20:00:0F:00:19:01:00:04:14:08:00:69:6E:74:65:72:6E:65:74<br>[/dev/cdc-wdm0] sent generic request (translated)...<br><<<<<< QMUX:<br><<<<<<   length  = 27<br><<<<<<   flags   = 0x00<br><<<<<<   service = "wds"<br><<<<<<   client  = 17<br><<<<<< QMI:<br><<<<<<   flags       = "none"<br><<<<<<   transaction = 1<br><<<<<<   tlv_length  = 15<br><<<<<<   message     = "Start Network" (0x0020)<br><<<<<< TLV:<br><<<<<<   type       = "IP Family Preference" (0x19)<br><<<<<<   length     = 1<br><<<<<<   value      = 04<br><<<<<<   translated = ipv4<br><<<<<< TLV:<br><<<<<<   type       = "APN" (0x14)<br><<<<<<   length     = 8<br><<<<<<   value      = 69:6E:74:65:72:6E:65:74<br><<<<<<   translated = internet<br>[/dev/cdc-wdm0] received message...<br><<<<<< RAW:<br><<<<<<   length = 39<br><<<<<<   data   = 01:26:00:80:01:11:02:01:00:20:00:1A:00:02:04:00:01:00:0E:00:01:04:00:00:00:00:00:10:02:00:03:0<br>0:11:04:00:03:00:D1:07<br>[/dev/cdc-wdm0] received generic response (translated)...<br><<<<<< QMUX:<br><<<<<<   length  = 38<br><<<<<<   flags   = 0x80<br><<<<<<   service = "wds"<br><<<<<<   client  = 17<br><<<<<< QMI:<br><<<<<<   flags       = "response"<br><<<<<<   transaction = 1<br><<<<<<   tlv_length  = 26<br><<<<<<   message     = "Start Network" (0x0020)<br><<<<<< TLV:<br><<<<<<   type       = "Result" (0x02)<br><<<<<<   length     = 4<br><<<<<<   value      = 01:00:0E:00<br><<<<<<   translated = FAILURE: CallFailed<br><<<<<< TLV:<br><<<<<<   type       = "Packet Data Handle" (0x01)<br><<<<<<   length     = 4<br><<<<<<   value      = 00:00:00:00<br><<<<<<   translated = 0<br><<<<<< TLV:<br><<<<<<   type       = "Call End Reason" (0x10)<br><<<<<<   length     = 2<br><<<<<<   value      = 03:00<br><<<<<<   translated = generic-no-service<br><<<<<< TLV:<br><<<<<<   type       = "Verbose Call End Reason" (0x11)<br><<<<<<   length     = 4<br><<<<<<   value      = 03:00:D1:07<br><<<<<<   translated = [ type = 'cm' reason = '2001' ]<br>[/dev/cdc-wdm0] Client ID not released:<br>        Service: 'wds'<br>            CID: '17'<br>[/dev/cdc-wdm0] Releasing 'wds' client with flags 'none'...<br>[/dev/cdc-wdm0] Unregistered 'wds' client with ID '17'<br>Client released<br>Closed<br></div><div><br></div><div>Is there any explanation of what these errors actually mean?</div><div><br></div><div>Thanks.</div><div><br></div><div>Tom Isaacson</div><div><br></div></div></div></div></div></div>