Modified example with AT command traces for AT%MEAS, AT%PCONI and AT%CGEQOS. Loading times calculated for each cloud transfer
Dependencies: FXOS8700CQ MODSERIAL mbed
Fork of Avnet_ATT_Cellular_IOT by
Diff: main.cpp
- Revision:
- 48:93a4ab6ac177
- Parent:
- 47:c07656706ca1
- Parent:
- 41:9b14c40eebf6
- Child:
- 49:97f823273dc0
--- a/main.cpp Sun Jul 24 19:54:06 2016 +0000 +++ b/main.cpp Sun Jul 24 20:18:33 2016 +0000 @@ -353,10 +353,10 @@ char* endquote; beginquote = strchr(search_field, '{'); //start of JSON endquote = strchr(search_field, '}'); //end of JSON - if (beginquote != 0) + if (beginquote) { uint16_t ifoundlen; - if (endquote != 0) + if (endquote) { ifoundlen = (uint16_t) (endquote - beginquote) + 1; strncpy(found_string, beginquote, ifoundlen ); @@ -504,32 +504,32 @@ read_sensors(); //read available external sensors from a PMOD and the on-board motion sensor char modem_string[512]; GenerateModemString(&modem_string[0]); - printf(BLU "Sending to modem : %s" DEF "\n", modem_string); + printf(BLU "\r\nSending to modem : %s" DEF "\r\n", modem_string); sockwrite_mdm(modem_string); sockread_mdm(&MySocketData, 1024, 20); - printf("DONE with READ!\r\n"); - - // If any non-zero response from server, make it GREEN one-time - // then the actual FLOW responses will set the color. - if ((!ledOnce) && (MySocketData.length() > 0)) + + if (sockread_mdm(&MySocketData, 1024, 20)) { - ledOnce = 1; - SetLedColor(0x2); - } - - printf(BLU "Read back : %s" DEF "\n", MySocketData.c_str()); - char myJsonResponse[512]; - char stringToCharBuf[1501]; // 1500 is the max length WNC can return - strcpy(stringToCharBuf, MySocketData.c_str()); - if (extract_JSON(stringToCharBuf, &myJsonResponse[0])) - { - printf(GRN "JSON : %s" DEF "\n", &myJsonResponse[0]); - parse_JSON(&myJsonResponse[0]); + // If any non-zero response from server, make it GREEN one-time + // then the actual FLOW responses will set the color. + if (!ledOnce) + { + ledOnce = 1; + SetLedColor(0x2); + } + printf(YEL "Read back : %s" DEF "\r\n", &MySocketData[0]); + char myJsonResponse[512]; + char stringToCharBuf[1501]; // WNC can return max of 1500 + strcpy(stringToCharBuf, MySocketData.c_str()); + if (extract_JSON(stringToCharBuf, &myJsonResponse[0])) + { + printf(GRN "JSON : %s" DEF "\n", &myJsonResponse[0]); + parse_JSON(&myJsonResponse[0]); + } } else { - printf(RED "JSON : %s" DEF "\n", &myJsonResponse[0]); //most likely an incomplete JSON string - parse_JSON(&myJsonResponse[0]); //This is risky, as the string may be corrupted + printf(RED "No response..." DEF "\r\n"); } } //bTimerExpiredFlag } //forever loop