Official reference client implementation for Cumulocity SmartREST on u-blox C027.

Dependencies:   C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed

Fork of MbedSmartRestMain by Vincent Wochnik

Revision:
76:b07effe83fb8
Parent:
73:313975bfec96
Child:
77:f6717e4eccc4
--- a/main.cpp	Wed Feb 18 10:19:51 2015 +0000
+++ b/main.cpp	Wed Feb 25 10:06:11 2015 +0000
@@ -34,28 +34,19 @@
     GPSI2C gps;
     DeviceIO io(gps);
     
-    //mdm.setDebug(4);
+    mdm.setDebug(4);
     io.lcdPrint("Device Init");
-    if (!mdm.init(SIM_PIN, &devStatus))
+    if (!mdm.init(SIM_PIN, &devStatus)) {
         status = 1;
-    else if (!gps.init())
+        io.lcdPrint("Modem Init Failure", "No SIM card found", "Or SIM has PIN code");
+    } else if (!gps.init()) {
         status = 2;
-    
-    switch (status) {
-    case 1:
-        io.lcdPrint("Modem Init Failure", "Check SIM");
-        break;
-    case 2:
         io.lcdPrint("GPS Init Failure");
-        break;
-    }
-    
+    }    
     if (status != 0)
         goto error;
     
-    
     io.lcdPrint("Register Network", "IMEI", devStatus.imei);
-
     if (!mdm.registerNet()) {
         io.lcdPrint("Network Reg Error");
         goto error;
@@ -67,12 +58,11 @@
 #else
     if (mdm.join() == NOIP) {
 #endif
-        io.lcdPrint("Network join failure");
+        io.lcdPrint("Network join failure", "Check your APN settting,", "username or password");
         goto error;
     }
     
     {
-        uint8_t tries;
         DeviceInfo deviceInfo(mdm, devStatus);
         DeviceMemory deviceMemory(mdm);
         
@@ -86,8 +76,8 @@
 //                io.deviceFeedback().beepFailure();
                 io.lcdPrint("Reset Failure");
             }
-//            Thread::wait(1000);
-            return;
+            Thread::wait(1000);
+            return 0;
         }
 
         MbedAgent agent(io, mdm, deviceInfo, deviceMemory);
@@ -98,7 +88,7 @@
             goto error;
         }
         
-        tries = 3;
+        uint8_t tries = 3;
         do {
             io.lcdPrint("Agent Run");
             if (agent.run())
@@ -112,9 +102,11 @@
     }
     
     mdm.disconnect();
+    mdm.powerOff();
     return 0;
 
 error:
     mdm.disconnect();
+    mdm.powerOff();
     return 1;
 }