QMI SDK start data session

I am using QMI SDK to start data session for the Sierra Wireless card MC7354 and Telus Sim Card. For now I can detect the device and the sim card like getting device info and IMSI number; however, I got some trouble with starting the data session. I follow the instructions in QMI SDK Documents and do the following code:

//set the default profile
fprintf(stderr, "SetProfile - Return Code: %lu\n", rc3);

//start the session
ULONG technology = 1;
ULONG profile_idx = 1;
struct ssdatasession_params session;
session.action = 1;
session.pTechnology = &technology;
session.pProfileId3GPP = &profile_idx;
session.pProfileId3GPP2 = NULL;
session.ipfamily = 4;
ULONG rc4 = SLQSStartStopDataSession(&session);
fprintf(stderr, "Start Session - Return Code: %lu\n",rc4);

SetDefaultProfile is working fine because it returns me the success code, but for the SLQSStartStopDataSession method, it always gives me the return code “1026”, which means

Requested operation would have no effect

Does anyone know where I make mistakes and how should I modify the code? What does this return code mean?

Even I parse the telus APN parameter into the SetDefaultProfile, I get the same return error…

Try turning off AutoConnect before starting the data session.