NTPClientTest, working with SARA-G350 on C027

Dependencies:   C027 NTPClient UbloxUSBModem mbed

Fork of C027_USSDTest_SARA350 by Steffen Graf

Committer:
omega256
Date:
Sat Mar 08 17:27:09 2014 +0000
Revision:
16:be48582fcb92
Parent:
15:6fdc76603237
First;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
donatien 0:f3f18ac13e0c 1 #include "mbed.h"
mazgch 6:77c131006c67 2 #include "C027.h"
mazgch 12:88552ae75244 3 #include "UbloxModem.h"
mazgch 6:77c131006c67 4
omega256 16:be48582fcb92 5 #include "NTPClient.h"
omega256 16:be48582fcb92 6
omega256 15:6fdc76603237 7 /*
omega256 16:be48582fcb92 8 * Modified NTP example, working with SARA-G350
omega256 16:be48582fcb92 9 * Based on NTPClentTest and HTTP Test from u-blox
omega256 15:6fdc76603237 10 * Output to PC via USB Serial Port, 9600 Baud
omega256 16:be48582fcb92 11 * Output of mbed IDE tells that this example uses more RAM than available, but it's working somehow...
omega256 15:6fdc76603237 12 */
mazgch 12:88552ae75244 13
omega256 16:be48582fcb92 14 C027 c027;
omega256 15:6fdc76603237 15 Serial pc(USBTX, USBRX);
mazgch 12:88552ae75244 16
mazgch 7:c558c74ceb0f 17 void test(void const*)
donatien 0:f3f18ac13e0c 18 {
mazgch 10:e2315bcdd7be 19 c027.mdmPower(true);
omega256 16:be48582fcb92 20 UbloxSerModem modem; // for LISA-C use the UbloxUSBCDMAModem instead
omega256 16:be48582fcb92 21 NTPClient ntp;
mazgch 7:c558c74ceb0f 22
omega256 16:be48582fcb92 23 int ret = modem.connect("internet"); // eventaully set another apn here
omega256 15:6fdc76603237 24 if(ret) {
omega256 16:be48582fcb92 25 pc.printf("Could not connect\n");
omega256 16:be48582fcb92 26 return;
donatien 0:f3f18ac13e0c 27 }
mazgch 7:c558c74ceb0f 28
omega256 16:be48582fcb92 29 pc.printf("Trying to update time...\r\n");
omega256 16:be48582fcb92 30 if (ntp.setTime("0.pool.ntp.org") == 0) {
omega256 16:be48582fcb92 31 pc.printf("Set time successfully\r\n");
omega256 16:be48582fcb92 32 time_t ctTime;
omega256 16:be48582fcb92 33 ctTime = time(NULL);
omega256 16:be48582fcb92 34 pc.printf("Time is set to (UTC): %s\r\n", ctime(&ctTime));
omega256 16:be48582fcb92 35 } else {
omega256 16:be48582fcb92 36 pc.printf("Error\r\n");
omega256 16:be48582fcb92 37 }
mazgch 7:c558c74ceb0f 38
omega256 16:be48582fcb92 39 modem.disconnect();
mazgch 10:e2315bcdd7be 40 c027.mdmPower(false);
mazgch 10:e2315bcdd7be 41
donatien 1:6ea9ac27702c 42 while(1) {
donatien 1:6ea9ac27702c 43 }
donatien 0:f3f18ac13e0c 44 }
donatien 0:f3f18ac13e0c 45
donatien 0:f3f18ac13e0c 46
donatien 0:f3f18ac13e0c 47 int main()
donatien 0:f3f18ac13e0c 48 {
mazgch 7:c558c74ceb0f 49 Thread testTask(test, NULL, osPriorityNormal, 1024 * 4);
mazgch 10:e2315bcdd7be 50 DigitalOut led(LED); // on rev A you should reasign the signal to A0
mazgch 7:c558c74ceb0f 51 while(1) {
mazgch 7:c558c74ceb0f 52 led=!led;
mazgch 7:c558c74ceb0f 53 Thread::wait(1000);
mazgch 7:c558c74ceb0f 54 }
donatien 0:f3f18ac13e0c 55
mazgch 7:c558c74ceb0f 56 return 0;
donatien 0:f3f18ac13e0c 57 }