# GPRS Connection Problem

**URL:** <https://forum.sierrawireless.com/t/gprs-connection-problem/15050>\
**Category:** IoT Modules\
**Created:** [January 15, 2019, 10:39am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050 "2019-01-15T10:39:01Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 15, 2019, 10:39am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/1 "2019-01-15T10:39:01Z")

</div>

Hi all,

First of all, I must say that I am newbie on Open AT and embedded modules. Please accept my apologies if I ask stupid questions. 🙂

I am using Q2687H embedded modules and developing an application to connect remote server. I have some troubles with GPRS connection part of my code. All the settings are OK for APN and the other initial procedures (I think so ⁉). When I download the app to the module to test if it works I got a problem. It gives me WIP\_BEV\_CONN\_FAILED error first but when I remove and insert again the sim card it connects to GPRS. ☹

You can see the related code snippets below:

**Main** :

```
void adl_main(adl_InitType_e InitType)
{
    switch (InitType)
    {
    case ADL_INIT_POWER_ON:
        break;

    case ADL_INIT_REBOOT_FROM_EXCEPTION:
        ATRSP("\r\nModem Start After Exception\r\n");
        break;

    case ADL_INIT_DOWNLOAD_SUCCESS:
        ATRSP("\r\nModem Start After DOTA OK\r\n");
        break;

    case ADL_INIT_DOWNLOAD_ERROR:
        ATRSP("\r\nModem Start After DOTA ERROR\r\n");
        break;

    case ADL_INIT_RTC:
        ATRSP("\r\nModem Start After RTC\r\n");
        break;
    }

	UART2_Enable();
	GPIO_Enable();
    adl_simSubscribe(Sim_Handler, (ascii *) SimPin);
}

```

**Sim\_Handler** :

```
void Sim_Handler(u8 Event)
{
	switch (Event)
	{
	case ADL_SIM_EVENT_FULL_INIT:
		TRACE((1, "ADL_SIM_EVENT_FULL_INIT"));
		GPRS_Enable();
		break;
	case ADL_SIM_EVENT_PIN_WAIT:
		TRACE((1, "ADL_SIM_EVENT_PIN_WAIT"));
		break;
	case ADL_SIM_EVENT_PIN_OK:
		TRACE((1, "ADL_SIM_EVENT_PIN_OK"));
		break;
	case ADL_SIM_EVENT_INSERTED:
		TRACE((1, "ADL_SIM_EVENT_INSERTED"));
		break;
	case ADL_SIM_EVENT_REMOVED:
		TRACE((1, "ADL_SIM_EVENT_REMOVED"));
		break;
	case ADL_SIM_EVENT_PIN_ERROR:
		TRACE((1, "ADL_SIM_EVENT_PIN_ERROR"));
		break;
	case ADL_SIM_EVENT_PUK_WAIT:
		TRACE((1, "ADL_SIM_EVENT_PUK_WAIT"));
		break;
	case ADL_SIM_EVENT_PUK_ERROR:
		TRACE((1, "ADL_SIM_EVENT_PUK_ERROR"));
		break;
	case ADL_SIM_EVENT_FAILURE:
		TRACE((1, "ADL_SIM_EVENT_FAILURE"));
		break;
	case ADL_SIM_EVENT_NET_LOCK:
		TRACE((1, "ADL_SIM_EVENT_NET_LOCK"));
		break;
	case ADL_SIM_EVENT_LAST:
		TRACE((1, "ADL_SIM_EVENT_LAST"));
		break;
	default:
		TRACE((1, "default..."));
		break;
	}
}

```

**GPRS\_Enable** :

```
void GPRS_Enable(void)
{
	TRACE (( 1, "GPRS_Enable" ));
    gprsIsValid = FALSE;
    gprsLed(FALSE);

    if (adl_gprsSubscribe(gprs_Handler) == OK)
    {
        s8RetVal = wip_bearerClose(gprs_bearer);
        s8RetVal = wip_netInit();

		if (s8RetVal < 0)
			TRACE((10, "ADL_SIM_EVENT_FULL_INIT : Bearer Close %d", s8RetVal));
		else
			TRACE((10, "ADL_SIM_EVENT_FULL_INIT : Bearer Closed"));

		s8RetVal = wip_bearerOpen(&gprs_bearer, "GPRS", gprsBearerHandler, NULL);

		if (s8RetVal < 0 && s8RetVal != -27)
			TRACE((10, "ADL_SIM_EVENT_FULL_INIT : Bearer Open %d", s8RetVal));
		else
			s8RetVal = wip_bearerSetOpts(gprs_bearer, WIP_BOPT_GPRS_CID, 1, WIP_BOPT_GPRS_APN, APN_Name, WIP_BOPT_LOGIN, APN_Username, WIP_BOPT_PASSWORD, APN_Password, WIP_BOPT_END);

		if (s8RetVal < 0)
			TRACE((10, "ADL_SIM_EVENT_FULL_INIT : Bearer SetOpts %d", s8RetVal));
		else
			s8RetVal = wip_bearerStart(gprs_bearer);

		if (s8RetVal < 0)
			TRACE((10, "ADL_SIM_EVENT_FULL_INIT : Bearer Start %d", s8RetVal));
		else
			TRACE((10, "ADL_SIM_EVENT_FULL_INIT : Bearer Started %d", s8RetVal));
		
		wm_sprintf(rsp, "status:%d\r\n", s8RetVal);
		ATRSP(rsp);
    }
    else
    {
        ATRSP("\r\nInit error\r\n");
        TRACE((1, "GPRS init error"));
    }
}

```

**gprsBearerHandler** :

```
void gprsBearerHandler(wip_bearer_t br, s8 event, void *ctx)
{
    ascii RspStr[128];
    ascii dns1Str[16], dns2Str[16];
    wip_in_addr_t ip, dns1, dns2;
    s8 errcode = 0;
    u8 gprsCID;

    if (br != gprs_bearer)
        return;

    switch (event)
    {
		case WIP_BEV_IP_CONNECTED:
			TRACE((10, "gprs_bearer: WIP_BEV_IP_CONNECTED"));
			//Get Bearer Info
			s8RetVal = wip_bearerGetOpts(br, WIP_BOPT_IP_ADDR, &ip, WIP_BOPT_IP_DNS1, &dns1, WIP_BOPT_IP_DNS2, &dns2, WIP_BOPT_END);

			if (s8RetVal < 0)
				TRACE((10, "WIP_BEV_IP_CONNECTED : GetOpts %d", s8RetVal));

			wip_inet_ntoa(ip, ipStr, sizeof(ipStr));
			wip_inet_ntoa(dns1, dns1Str, sizeof(dns1Str));
			wip_inet_ntoa(dns2, dns2Str, sizeof(dns2Str));
			wm_sprintf(RspStr, "\r\nGPRS: CONNECTED IP=%s DNS1=%s DNS2=%s\r\n",ipStr, dns1Str, dns2Str);
			gprsIsValid = TRUE;
			gprsLed(TRUE);
			TRACE((10, "WIP_BEV_IP_CONNECTED"));
			ATRSP(RspStr);
			break;

		case WIP_BEV_IP_DISCONNECTED:
			TRACE((10, "gprs_bearer: WIP_BEV_IP_DISCONNECTED"));
			gprsIsValid = FALSE;
			break;

		case WIP_BEV_STOPPED:
			TRACE((10, "gprs_bearer: WIP_BEV_STOPPED"));
			s8RetVal = wip_bearerClose(br);

			if (s8RetVal < 0)
				TRACE((12, "WIP_BEV_STOPPED : Stop %d", s8RetVal));

			gprsIsValid = FALSE;
			gprs_bearer = NULL;
			break;

		case WIP_BEV_CONN_FAILED:
			TRACE((10, "gprs_bearer: WIP_BEV_CONN_FAILED"));
			ATRSP("\r\n+WIPSTART: FAILED\r\n");
			s8RetVal = wip_bearerGetOpts(br, WIP_BOPT_GPRS_CID, &gprsCID, WIP_BOPT_ERROR, &errcode, WIP_BOPT_END);

			if (s8RetVal < 0)
				TRACE((10, "WIP_BEV_CONN_FAILED : GetOpts %d", s8RetVal));

			wm_sprintf(RspStr, "CID:%d\r\n", gprsCID);
			ATRSP(RspStr);
			wm_sprintf(RspStr, "Error Code:%d\r\n", errcode);
			ATRSP(RspStr);
			TRACE((10, "gprs_bearer: CID: %d Error Code: %d", gprsCID, errcode));
			wip_bearerClose(br);

			if (s8RetVal < 0)
				TRACE((10, "WIP_BEV_CONN_FAILED : Close %d", s8RetVal));

			gprsIsValid = FALSE;
			gprs_bearer = NULL;
			break;

		default:
			TRACE((10, "gprs_bearer: DEFAULT"));
			wm_sprintf(RspStr, "wip_bearer Code: %d\r\n", event);
			ATRSP(RspStr);
			break;
    }
}

```

Edit: I’ve added the Trace logs as following;

| Timestamp | Id | | Level | Message |
| --- | --- | --- | --- | --- |
| 2019/01/15;14:15:59:111 - 001 | ADL | | 1 | Binary header at 00260000 |
| 2019/01/15;14:15:59:111 - 002 | ADL | | 1 | Let’s Begin |
| 2019/01/15;14:15:59:111 - 003 | ADL | | 13 | UART2 FCM Available |
| 2019/01/15;14:15:59:127 - 001 | ADL | | 13 | FCM2 HANDLE RESULT: 0 |
| 2019/01/15;14:15:59:127 - 002 | ADL | | 1 | LED GPIO Subscribe OK |
| 2019/01/15;14:15:59:127 - 003 | ADL | | 1 | GPIO OK |
| 2019/01/15;14:15:59:127 - 004 | ADL | | 1 | ADL\_SIM\_EVENT\_INSERTED |
| 2019/01/15;14:15:59:127 - 005 | ADL | | 13 | UART2 is in DATA mode |
| 2019/01/15;14:15:59:860 - 001 | ADL | | 1 | ADL\_SIM\_EVENT\_PIN\_OK |
| 2019/01/15;14:16:04:291 - 001 | ADL | | 1 | ADL\_SIM\_EVENT\_FULL\_INIT |
| 2019/01/15;14:16:04:291 - 002 | ADL | | 1 | GPRS\_Enable |
| 2019/01/15;14:16:04:291 - 003 | ADL | | 10 | ADL\_SIM\_EVENT\_FULL\_INIT : Bearer Closed |
| 2019/01/15;14:16:04:291 - 004 | ADL | | 10 | ADL\_SIM\_EVENT\_FULL\_INIT : Bearer Start -27 |
| 2019/01/15;14:16:04:291 - 005 | ADL | | 12 | gprs\_handler: Embedded : Event receive 25 CID: 1 |
| 2019/01/15;14:16:04:306 - 001 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_SETUP\_OK |
| 2019/01/15;14:16:04:306 - 002 | ADL | | 12 | gprs\_handler: Embedded : Event receive 25 CID: 1 |
| 2019/01/15;14:16:04:306 - 004 | ADL | | 12 | gprs\_handler: Embedded : Event receive 23 CID: 1 |
| 2019/01/15;14:16:04:306 - 005 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_ACTIVATE\_KO : CID 1 |
| 2019/01/15;14:16:04:337 - 001 | ADL | | 10 | gprs\_bearer: WIP\_BEV\_CONN\_FAILED |
| 2019/01/15;14:16:04:337 - 002 | ADL | | 10 | gprs\_bearer: CID: 1 Error Code: -36 |
| 2019/01/15;14:16:18:268 - 001 | ADL | | 1 | ADL\_SIM\_EVENT\_REMOVED |
| 2019/01/15;14:16:19:750 - 001 | ADL | | 1 | ADL\_SIM\_EVENT\_INSERTED |
| 2019/01/15;14:16:20:655 - 001 | ADL | | 1 | ADL\_SIM\_EVENT\_PIN\_OK |
| 2019/01/15;14:16:25:257 - 001 | ADL | | 1 | ADL\_SIM\_EVENT\_FULL\_INIT |
| 2019/01/15;14:16:25:273 - 001 | ADL | | 1 | GPRS\_Enable |
| 2019/01/15;14:16:25:273 - 002 | ADL | | 10 | ADL\_SIM\_EVENT\_FULL\_INIT : Bearer Closed |
| 2019/01/15;14:16:25:273 - 003 | ADL | | 10 | ADL\_SIM\_EVENT\_FULL\_INIT : Bearer Start -27 |
| 2019/01/15;14:16:25:273 - 004 | ADL | | 12 | gprs\_handler: Embedded : Event receive 25 CID: 1 |
| 2019/01/15;14:16:25:273 - 005 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_SETUP\_OK |
| 2019/01/15;14:16:25:288 - 001 | ADL | | 12 | gprs\_handler: Embedded : Event receive 25 CID: 1 |
| 2019/01/15;14:16:25:288 - 002 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_SETUP\_OK |
| 2019/01/15;14:16:26:255 - 001 | ADL | | 12 | gprs\_handler: Embedded : Event receive 27 CID: 1 |
| 2019/01/15;14:16:26:255 - 002 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_ME\_ATTACH |
| 2019/01/15;14:16:26:271 - 001 | ADL | | 12 | gprs\_handler: Embedded : Event receive 27 CID: 1 |
| 2019/01/15;14:16:26:271 - 002 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_ME\_ATTACH |
| 2019/01/15;14:16:27:737 - 001 | ADL | | 12 | gprs\_handler: Embedded : Event receive 16 CID: 1 |
| 2019/01/15;14:16:27:737 - 002 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_ANSWER\_OK\_FROM\_EXT |
| 2019/01/15;14:16:27:753 - 001 | ADL | | 12 | gprs\_handler: Embedded : Event receive 16 CID: 1 |
| 2019/01/15;14:16:27:753 - 002 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_ANSWER\_OK\_FROM\_EXT |
| 2019/01/15;14:16:27:769 - 001 | ADL | | 12 | gprs\_handler: Embedded : Event receive 16 CID: 1 |
| 2019/01/15;14:16:27:769 - 002 | ADL | | 12 | gprs\_handler: ADL\_GPRS\_EVENT\_ANSWER\_OK\_FROM\_EXT |
| 2019/01/15;14:16:27:769 - 003 | ADL | | 10 | gprs\_bearer: WIP\_BEV\_IP\_CONNECTED |
| 2019/01/15;14:16:27:769 - 004 | ADL | | 10 | WIP\_BEV\_IP\_CONNECTED |

Could anyone give me a suggestion about the problem?

Note: ATRSP is a simple function to send string to TMConsole.

Thanks in advance.

Best regards

MÇ.

---

<div class="post-metadata">

**Author:** ![jyijyi](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/jyijyi/32/4766_2.png) [@jyijyi](https://forum.sierrawireless.com/u/jyijyi)\
**Post date:** [January 15, 2019, 10:58am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/2 "2019-01-15T10:58:13Z")

</div>

Does this problem happen to sample application like tcp client?

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 15, 2019, 11:14am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/3 "2019-01-15T11:14:03Z")

</div>

Hi again @jyijyi 🙂

I didn’t try it yet. I will try and let you know.

By the way, is everything OK with my code?

Thanks.

MÇ.

---

<div class="post-metadata">

**Author:** ![jyijyi](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/jyijyi/32/4766_2.png) [@jyijyi](https://forum.sierrawireless.com/u/jyijyi)\
**Post date:** [January 15, 2019, 11:30am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/4 "2019-01-15T11:30:12Z")

</div>

Seems ok but better compare with sample code.

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 16, 2019, 7:46am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/5 "2019-01-16T07:46:37Z")

</div>

Hi @jyijyi,

I’ve tested a TCP Client Sample application and it worked. It seems the promblem is in my code ☹

Best regards.

MÇ.

---

<div class="post-metadata">

**Author:** ![jyijyi](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/jyijyi/32/4766_2.png) [@jyijyi](https://forum.sierrawireless.com/u/jyijyi)\
**Post date:** [January 16, 2019, 7:59am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/6 "2019-01-16T07:59:34Z")

</div>

probably the root cause you didn´t check AT+CREG?..  
seems you just wait for SIM full init, but there is a chance that it is not yet registered to the network.

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 16, 2019, 8:08am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/7 "2019-01-16T08:08:31Z")

</div>

Hi @jyijyi

Thanks for your reply.

So, you mean that I should check “AT+CREG?” and “ADL\_SIM\_EVENT\_FULL\_INIT” both together and then GPRS\_Enable right?

Best regards.

MÇ.

---

<div class="post-metadata">

**Author:** ![jyijyi](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/jyijyi/32/4766_2.png) [@jyijyi](https://forum.sierrawireless.com/u/jyijyi)\
**Post date:** [January 16, 2019, 8:19am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/8 "2019-01-16T08:19:59Z")

</div>

correct.  
I remember the TCP client sample code also did the same thing.

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 16, 2019, 8:32am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/9 "2019-01-16T08:32:41Z")

</div>

Hi @jyijyi

Thank you very much. I will try and post the result.

Best regards.

MÇ.

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 18, 2019, 2:33pm UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/10 "2019-01-18T14:33:18Z")

</div>

Hi @jyijyi

I am sorry, I forgot to post the result 🙂

I’ve used the gprs sample codes and it worked. So I can connect to the GPRS network now. After that I’ve added some more code to SET and CLEAR the GPRS LED indicator on the device as following:

**To define section:**

```
#define GPIO_LED	2
adl_ioDefs_t GPRSLED_PORT = ADL_IO_GPIO | 2;
adl_ioDefs_t LedGpioConfig[GPIO_LED] = { ADL_IO_GPIO | 1 | ADL_IO_DIR_OUT | ADL_IO_LEV_LOW, ADL_IO_GPIO | 2 | ADL_IO_DIR_OUT | ADL_IO_LEV_LOW };
s32 LedGpioHandle;

```

**The related functions:**

```
void gprsLed(bool state)
{
	if (state)
		adl_ioWriteSingle(LedGpioHandle, &GPRSLED_PORT, TRUE);
	else
		adl_ioWriteSingle(LedGpioHandle, &GPRSLED_PORT, FALSE);
}

void GPIO_Enable(void)
{
	LedGpioHandle = adl_ioSubscribe(GPIO_LED, (adl_ioDefs_t *) LedGpioConfig, 0, 0, 0);
	if (LedGpioHandle > 0)
		TRACE((1, "LED GPIO Subscribe ==> OK"));
	else
		TRACE((1, "LED GPIO Subscribe FAILED --> %d", LedGpioHandle));
}

```

These codes working very well. I am turning on the LED when I got the “WIP\_BEV\_IP\_CONNECTED” event and turning it off when I got the “ADL\_GPRS\_EVENT\_ME\_DETACH” or “ADL\_GPRS\_EVENT\_ME\_UNREG” events.

Then I wanted to use the GSM network time and write it to RTC time. I’ve write the following code

**in Main:**

```
//To subscribe to WIND 15 message
s16 s16RetVal =	adl_atUnSoSubscribe("+WIND: 15", (adl_atUnSoHandler_t) Wind15Handler);

```

**and the WIND handler is:**

```
bool Wind15Handler(adl_atUnsolicited_t *paras)
{
	TRACE((4, "-> (GSM Time) Enter."));

    adl_atUnSoUnSubscribe("+WIND: 15", (adl_atUnSoHandler_t) Wind15Handler);
    //TRACE((4, paras->StrData));
    wm_strGetParameterString(TimeUnmodified, paras->StrData, 7);
	TRACE((4, TimeUnmodified));
    adl_rtcTime_t RTCTime;
    ascii atCmd[30];

    // YYYYMMDD HHMMSS
    RTCTime.Year = 2000 + wm_atoi(parseString(TimeUnmodified,0,2));
    RTCTime.Month = wm_atoi(parseString(TimeUnmodified,3,2));
    RTCTime.Day = wm_atoi(parseString(TimeUnmodified,6,2));
    RTCTime.Hour = wm_atoi(parseString(TimeUnmodified,9,2)) + 3;
    RTCTime.Minute = wm_atoi(parseString(TimeUnmodified,12,2));
    RTCTime.Second = wm_atoi(parseString(TimeUnmodified,15,2));
    adl_rtcSetTime (&RTCTime );
    wm_sprintf(atCmd, "\r\nGSM Time: \"%02d/%02d/%02d,%02d:%02d:%02d\"\r\n", RTCTime.Year - 2000, RTCTime.Month, RTCTime.Day, RTCTime.Hour, RTCTime.Minute, RTCTime.Second);
    TRACE((4, atCmd));
    ATRSP(atCmd);
    adl_atCmdCreate(atCmd, FALSE, (adl_atRspHandler_t) NULL, NULL);
	return TRUE;
}

```

Edit: The Output: **GSM Time: "19/01/18,16:52:08"**

YES, it is working. Everything is perfect till here. 💪

I said “… till here” because I could not be able to use both of the functions together (turning on-off the GPRS LED and getting GSM network time). When I comment out one of them the other one is working. It is so strange to me. I am confused 😕

Do you have any idea?

Thanks in advance.

Best regards.

MÇ.

---

<div class="post-metadata">

**Author:** ![jyijyi](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/jyijyi/32/4766_2.png) [@jyijyi](https://forum.sierrawireless.com/u/jyijyi)\
**Post date:** [January 18, 2019, 3:10pm UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/11 "2019-01-18T15:10:55Z")

</div>

Network time should not be related to gprs.  
You can try to get the network time first, then start the gprs.

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 21, 2019, 10:16am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/12 "2019-01-21T10:16:43Z")

</div>

I mean “GSM Network Time”. Sorry my bad.

---

<div class="post-metadata">

**Author:** ![jyijyi](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/jyijyi/32/4766_2.png) [@jyijyi](https://forum.sierrawireless.com/u/jyijyi)\
**Post date:** [January 21, 2019, 1:37pm UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/13 "2019-01-21T13:37:06Z")

</div>

Can you receive event WIP\_BEV\_IP\_CONNECTED after wind: 15 ?

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 22, 2019, 11:39am UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/14 "2019-01-22T11:39:58Z")

</div>

Hi @jyijyi

Their times are very close. I mean the “WIP\_BEV\_IP\_CONNECTED” and “+WIND: 15” message times. But I get the “+WIND: 15” message first.

Best regards.

MÇ.

---

<div class="post-metadata">

**Author:** ![jyijyi](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/jyijyi/32/4766_2.png) [@jyijyi](https://forum.sierrawireless.com/u/jyijyi)\
**Post date:** [January 22, 2019, 12:53pm UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/15 "2019-01-22T12:53:55Z")

</div>

Since you can receive both event, Do you mean the problem is from adl\_ioWriteSingle()?

---

<div class="post-metadata">

**Author:** ![mcaglar](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/mcaglar/32/4210_2.png) [@mcaglar](https://forum.sierrawireless.com/u/mcaglar)\
**Post date:** [January 22, 2019, 12:57pm UTC](https://forum.sierrawireless.com/t/gprs-connection-problem/15050/16 "2019-01-22T12:57:12Z")

</div>

Hi @jyijyi

Thanks for your reply.

I will work on this later. This issue has not high priority at this moment. 🙂

I will post the result when I done it.

Best regards.

MÇ.
