EM7565, what the WDS callback is used for?


#1

I cannot find any informations on the WDS features, and what is used for?
And the most important, why this callback is the only one to fail to register?

Thanks in advance for any tips!

Johann


#2

the SDK comes with docs under …/docs directory.

James


#3

Hello James,
ok, The doc is pretty small and I could read the same in header files and does not make it really clear what it is in the end and the most important thing is it does not explain really explain why this callback cannot register?
I have been trying to make it working on iMX{6,8} and the result is the same… Strange behaviour because it is the only one which cannot register.
I have to admit that I am clueless so any tips are welcome :wink:
Thanks in advance
Johann


#4

Hi Johann,

Which WDS callback are you having problems with?
There are quite a few WDS callbacks:
SLQS04.00.17.tar/docs/SwiApiReference/qaGobiApiCbk_8h.html

Thanks,
James


#5

Hi James,
sorry I was so involved with it that I didn’t mention its name! So the ‘SLQSSetWdsEventCallback’ fails to register and as I do not have any source code I cannot investigate further to understand exactly why this occur? The return code is 57346
So if you have a clue or tips they are welcome as I could not find any relevant informations on the internet.

Thanks in advance,
Johann


#6

very strange
0xE002 - The service is not supported

do you have issues with other callbacks (non WDS)?
normal APIs - non callback APIs - are working OK?

maybe your EM7565 FW version is too old?
have you upgraded the modem recently?

Thanks,
James


#7

The logs show an issue with the the USB IOCtl…
And I got this which shows the error code

Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:qmqmireq/1637: WDS Request: Active Client 1, WDS Client 0
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: USB read: bytes2read = 23, read 23 bytes
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:SDK<-Mdm Resp: ch/Msgid/Msglen/client: 0/0022/20/1
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:qmqmireq/1523: Request: QMI Instance 1
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:SDK->Mdm: request received : ipcch/svctype/xactionlen/clientnum: 0/0001/8/34
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:SDK->Mdm: request validated : ipcch/svctype/xactionlen/clientnum:0/0001/8/34
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: psrwds_setipfamily: instance: 1 IP family: V4 Active WDS Client: V4
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QMRR1:invalid endpoint: client 34, epid 5
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:Unable to register for QMI service WDS
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:qmqmireq: could not get a QMI client for requested service
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:qmshortresp( **57346**, ch: 0)
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:qmqmireq/1523: Request: QMI Instance 0
Nov 28 15:59:27 imx8qm_iwg27m user.debug SWI0 SDK Process: QM:SDK->Mdm: request received : ipcch/svctype/xactionlen/clientnum: 0/0003/8/2

The problem is in the source code of this SDK. What I can do right now is a workaround to reinitiate the USB behaviour but this is not satisfying and not really robust. Do you know if it is possible to get the source code of the SDK?
Thanks,
Johann


#8

Hi Johann,

I happened to have a Boundary Devices iMX6 board. But I don’t have an iMX8.

I downloaded the SDK and ran it on my iMX6 board.
The callback was working fine with “qatestarm”
Maybe the issue is iMX8 related?
Can you try it on iMX6?
=== note: the modem was already LTE attached

root@stretch-dev:/mnt2/SLQSSDK/SLQS04.00.17_customer/pkgs/qa#
root@stretch-dev:/mnt2/SLQSSDK/SLQS04.00.17_customer/pkgs/qa# ./qatestarm -p …/…/build/bin/arm/slqssdk -r

Using …/…/build/bin/arm/slqssdk

#devices: 1
deviceNode: /dev/qcqmi0
deviceKey: 35926008000022

Using SLQS SDK version: SLQS04.00.17

Completed …

Enter the testid/testsequence to be executed t92
Invoking test: SLQSSetWdsEventCallback

Please enter InstanceID value ( 0 to 2 )
Option: 0

Please enter ip family value ( 4(IPv4), 6(IPv6) or 7(IPv4v6) )
Option: 4
doSLQSSetWdsEventCallback: enable callback (cbkTestdoSLQSSetWdsEventCB, 10)

Completed t92…

Enter the testid/testsequence to be executed t33
Invoking test: SLQSStartStopDataSession_startv4p1

Please enter InstanceID value (1 to 8) or press to go to proceed with authentication pref
Option: 1

InstanceID is = 1

Please provide a profile id (1-16), or press to exit: 1

ProfileId is = 1

Parameter Set:
Action :START
Technology :3GPP
profID3GPP :1
profID3GPP2 :

Please select one of the following options or press to go to main menu:

  1. To enter PAP authentication preference
  2. To enter CHAP authentication
  3. To proceed with-out authentication preference
    Option: 3
    Fri Nov 30 10:37:15 2018
    cbkTestdoSLQSSetWdsEventCB

Interface Instance ID: 0 Service 1 v4 SID 1796387584 v6 SID 0
dataBearer: 10
Fri Nov 30 10:37:15 2018
cbkTestdoSLQSSetWdsEventCB

Interface Instance ID: 0 Service 1 v4 SID 1796387584 v6 SID 0
dataBearer: 3
Return Code: 0 (0x0)
Return Reason: Success

Completed t33…

Enter the testid/testsequence to be executed

root@stretch-dev:~# cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 10 (v7l)
BogoMIPS : 7.54
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10

processor : 1
model name : ARMv7 Processor rev 10 (v7l)
BogoMIPS : 7.54
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10

processor : 2
model name : ARMv7 Processor rev 10 (v7l)
BogoMIPS : 7.54
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10

processor : 3
model name : ARMv7 Processor rev 10 (v7l)
BogoMIPS : 7.54
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10

Hardware : Freescale i.MX6 Quad/DualLite (Device Tree)
Revision : 63012
Serial : 0000000000000000
root@stretch-dev:~#

root@stretch-dev:~# uname -a
Linux stretch-dev 4.1.15-25-boundary-12s #1 SMP PREEMPT Debian 4.1.15-25.25 (2017-09-19) armv7l GNU/Linux

About the SDK source:
Did you purchase the modem from one of our distributor?
If yes please reach out to them.

Thanks,
James


#9

Hello James,
did not have much time during the last days. So I got an error message ‘Unable to find device…’
while /dev/qcqmi0 exist as well as /dev/ttyUSB{0,1,2}…
And I can access and use the modem through AT commands…
All of this is pretty weird, I do not have any clue at this point.
Thanks
Johann


#10

try rebooting it and make sure you have root access, other than this it should work
I assume it was working before

James