How to send wip command

hi,
I am sending at+wipcfg=1 command by using in the following format
adl_atCmdSend( “AT+WIPCFG=1”,( adl_atRspHandler_t ) ATCmdSend_Response_Handler,
“*”,NULL );
but i am getting response as error for this.

can you guide me whether is there seperate function for sending wip command?

thanks

thanks for your response

i have downloaded dwl.dwl,w.dwl,R7.51.0_sl6087.dwl,GPS_ATcmd.dwl,ExtendedATApplication.dwl these file in my SL6087 module.

Wheteher the format which i am sending at command is correct?

and i am not gettin any CME error just i received “ERROR” for wip command i sent.
can you guide me

Make sure you have the WIP AT commands application installed. You can also try enabling error codes to see exactly what the error is (AT+CMEE=1)

thanks for your response

i have downloaded dwl.dwl,w.dwl,R7.51.0_sl6087.dwl,GPS_ATcmd.dwl,ExtendedATApplication.dwl these file in my SL6087 module.

Wheteher the format which i am sending at command is correct?

and i am not gettin any CME error just i received “ERROR” for wip command i sent.
can you guide me

AT+WIPCFG=1 is a command that is used against the WIP application.

If you want to use WIP with your own application, there is the WIP library.
Uncertain if there is a library that you can include that provides the WIP AT commands rather than direct calls to WIP routines.

https://forum.sierrawireless.com/t/using-wip-soft-in-open-at-application/4986/5

Have you enabled the +CME ERRORs - as tomridl described :question:

thanks
so we can’t able to call wip commands like at+wipcfg=1
am i right?

or else is there any other way to call directly access wip commands like at+wipcfg=1

if its there means send me that sample code

the following code i have used to call the wip commands

Result = wip_ATCmdSubscribe();

  if ( OK == Result )
    {
      /* The customer can write here its own application based on other plug-ins or
         its specific application target.  */
      TRACE (( 1, "+WIP AT Commmands successfully subscribed." ));
      s8Return = adl_atCmdSend( "AT+WIPCFG?",( adl_atRspHandler_t ) ATCmdSend_Response_Handler,
                                                     "*",NULL );
      if ( 0 > s8Return )
      {
         TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, "ATCmdSend: error in adl_atCmdSend: %d", s8Return ) );
      }
    }
    else
    {
      /* error : memory lack within Open AT application    */
      TRACE (( 1, "+WIP AT Commmands subscribtion failed." ));
    }

thanks :frowning:


You didn’t answer the question:

Did you take a look at this thread: Using WIP SOFT in Open AT Application - #5 by awneil :question:

thanks

i enabled CME error as AT+CMEE+1,
see the below code which i have used and the corresponding response of the commands
explain the following way which i send wip command is correct?

//
/* Includes */
/
/
#include “at_cmd_service.h”
#include “wm_types.h”
#include “adl_traces.h”
#include “adl_AppliInit.h”
#include “adl_RspHandler.h”
#include “wip_atcmd.h”
#include “wipsoft_monitor.h”

s32 Result = -1;

/* Functions related to adl_atCmdSend API /
/
**************************************************************************/
static s16 ATCmdSend_Response_Handler ( adl_atResponse_t *paras );

void ATCmdSend ( void )
{
s8 s8Return = 0;
TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, “Send ‘ATI’ using the adl_atCmdSend API”) );
s8Return = adl_atCmdSend( “ATI9”,
( adl_atRspHandler_t ) ATCmdSend_Response_Handler,
“*”,
NULL );
if ( 0 > s8Return )
{
TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, “ATCmdSend: error in adl_atCmdSend: %d”, s8Return ) );
}

s8Return = adl_atCmdSend( “AT+CMEE=1”,( adl_atRspHandler_t ) ATCmdSend_Response_Handler,
",NULL );
if ( 0 > s8Return )
{
TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, “ATCmdSend: error in adl_atCmdSend: %d”, s8Return ) );
}
s8Return = adl_atCmdSend( “AT+CMEE?”,( adl_atRspHandler_t ) ATCmdSend_Response_Handler,
"
”,NULL );
if ( 0 > s8Return )
{
TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, “ATCmdSend: error in adl_atCmdSend: %d”, s8Return ) );
}

/GPRS intilisation/

Result = wip_ATCmdSubscribe();

if ( OK == Result )
{
/* The customer can write here its own application based on other plug-ins or
its specific application target. /
TRACE (( 1, “+WIP AT Commmands successfully subscribed.” ));
s8Return = adl_atCmdSend( “AT+WIPCFG?”,( adl_atRspHandler_t ) ATCmdSend_Response_Handler,
"
",NULL );
if ( 0 > s8Return )
{
TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, “ATCmdSend: error in adl_atCmdSend: %d”, s8Return ) );
}
}
else
{
/* error : memory lack within Open AT application */
TRACE (( 1, “+WIP AT Commmands subscribtion failed.” ));
}

}

s16 ATCmdSend_Response_Handler ( adl_atResponse_t *paras )
{
TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, “ATCmdSend_Response_Handler: Response handled” ) );
TRACE( ( APPLI_AT_CMD_TRACE_LEVEL, paras->StrData ) );

/adl_atSendResponse ( ADL_AT_PORT_TYPE ( ADL_AT_UART1,
ADL_AT_UNS ),
“\r\n\ paras->StrData r\n” );
/
adl_atSendResponsePort ( ADL_AT_RSP, ADL_PORT_NONE, paras->StrData );

/* The response does not need to be forwarded to the Sierra Wireless stack */
return FALSE;
}

The following response received for each of the above command in target management CONSOLE window

at+wopen=1

OK

“DWL”,“V09c08”,"",“Sierra Wireless”,55684,“053112 09:27”,“6baf6254”,“00010000”
“FW”,“FW_751_14.SL6087G”,“R7.51.0.201205311751.SL6087”,“Sierra Wireless”,620780,“053112 17:51”,“de5225b8”,“001c0000”
“MODEM”,“1.2.12”,“201205311748.SL6087”,“Sierra Wireless”,1660692,“053112 17:48”,“16b6cdaa”,“00020000”
“OAT”,“1.0.0”,“MyApplication”,“MyCompany”,198712,“051313 15:26”,“fd68ac7d”,“002a0000”
-“Developer Studio”,“2.2.1.201206182209-R9667”
-“Open AT Framework package”,“2.51.0.201206190958”
-“Open AT OS Package”,“6.51.0.201206010944”
-“Firmware Package”,“7.51.0.201205311751”
-“ExtendedATApplication Library Package”,“1.21.0.201206061241”
-“Internet Library Package”,“5.54.0.201206011257”
-“Location Library Package”,“1.5.1.201204231425”
-“Security Library Package”,“1.16.0.201206041340”
-“WMMP Library Package”,“4.1.0.201202021114”
-“eCall-InBandModem Library Package”,“1.2.2.201206061040”
“ROM”,“800000”
“RAM”,“200000”
“DWLNAME”,“SL6087”

OK

OK

+CMEE: 1

OK

ERROR

Did you take a look at this thread:

https://forum.sierrawireless.com/t/using-wip-soft-in-open-at-application/4986/5 :question:

Looking at wip_ATCmdSubscribe in the documentation, it seems to be that it subscribes those commands for external use.

To call “applications own” AT commands the way you want, you need to use adl_atCmdSendExt rather than adl_atCmdSend. And use ADL_NI_LAUNCH for the NI parameter instead of 0.

thanks,
i look at that thread which sent by you.
from that i understood we can’t able to send wip commands like AT+WIPCFG=1 format,
am i right?

and also i tried in the following format
s8Return = adl_atCmdSendExt (“AT+WIPCFG=1”,ADL_PORT_NONE,ADL_NI_LAUNCH,NULL,ATCmdSend_Response_Handler,"*",NULL );

for this also i received response as “ERROR” only
can you guide me?

You should probably move the call to AT+WIPCFG=1 into another function, so that wip_ATCmdSubscribe runs in the function you have it now, but AT+WIPCFG=1 in some other function for further testing…
This is to make sure that everything runs fine until you call WIPCFG, and also giving WIP at least a little time to get things ready…

Also, have you checked the traces so that the wip subscribe is actually returning OK?

Hi,
I move the call to AT+WIPCFG=1 into another function, that time also i receive ERROR response only.

from the response which i received in the TRCE window only confirmed subscribtion is OK.
is there any other way to check wip subscribe is actually returning OK?

guide me?

Thanks