POC1.5 prototype 2 x color sensor 2 x LM75B 3 x AnalogIn 1 x accel

Dependencies:   mbed vt100

Revision:
9:f958fa2cdc74
Parent:
8:5590f55bdf41
Child:
12:4c0bd7fce2fd
--- a/af_utils/af_attriburtes.cpp	Thu Dec 07 10:13:13 2017 +0000
+++ b/af_utils/af_attriburtes.cpp	Fri Dec 08 08:31:30 2017 +0000
@@ -23,35 +23,35 @@
     {  ATTR_ACCEL_INTERVAL,    "Accel Interval",           ATTRIBUTE_TYPE_SINT16,  2 },
     {  ATTR_ACCEL_VALUE,       "Accel Value",              ATTRIBUTE_TYPE_FIXED_15_16, 4},
 /* first color sensor (VEML6040) and LED set */    
-    {  ATTR_COLOR0_PRESENT,    "Color0 Present",           ATTRIBUTE_TYPE_BOOLEAN, 1 },
-    {  ATTR_COLOR0_ENABLE,     "Color0 Enable",            ATTRIBUTE_TYPE_BOOLEAN, 1 },
-    {  ATTR_COLOR0_INTERVAL,   "Color0 Interval",          ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR0_TRIGMODE,   "Color0 Trigger Mode",      ATTRIBUTE_TYPE_SINT8,   1 },
-    {  ATTR_COLOR0_ITIME,      "Color0 Integration Time",  ATTRIBUTE_TYPE_SINT8,   1 },    
-    {  ATTR_COLOR0_CALIBRATE,  "Color0 Calibrate",         ATTRIBUTE_TYPE_BOOLEAN, 1 },
-    {  ATTR_COLOR0_PWM_R,      "Color0 PWM R",             ATTRIBUTE_TYPE_SINT32,  4 },
-    {  ATTR_COLOR0_PWM_G,      "Color0 PWM G",             ATTRIBUTE_TYPE_SINT32,  4 },
-    {  ATTR_COLOR0_PWM_B,      "Color0 PWM B",             ATTRIBUTE_TYPE_SINT32,  4 },
-    {  ATTR_COLOR0_PWM_PERIOD, "Color0 PWM Period",        ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR0_PWM_TARGET, "Color0 PWM Target",        ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR0_R_VALUE,    "Color0 R",                 ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR0_G_VALUE,    "Color0 G",                 ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR0_B_VALUE,    "Color0 B",                 ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR0_PRESENT,    "Color1 Present",           ATTRIBUTE_TYPE_BOOLEAN, 1 },
+    {  ATTR_COLOR0_ENABLE,     "Color1 Enable",            ATTRIBUTE_TYPE_BOOLEAN, 1 },
+    {  ATTR_COLOR0_INTERVAL,   "Color1 Interval",          ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR0_TRIGMODE,   "Color1 Trigger Mode",      ATTRIBUTE_TYPE_SINT8,   1 },
+    {  ATTR_COLOR0_ITIME,      "Color1 Integration Time",  ATTRIBUTE_TYPE_SINT8,   1 },    
+    {  ATTR_COLOR0_CALIBRATE,  "Color1 Calibrate",         ATTRIBUTE_TYPE_BOOLEAN, 1 },
+    {  ATTR_COLOR0_PWM_R,      "Color1 PWM R",             ATTRIBUTE_TYPE_SINT32,  4 },
+    {  ATTR_COLOR0_PWM_G,      "Color1 PWM G",             ATTRIBUTE_TYPE_SINT32,  4 },
+    {  ATTR_COLOR0_PWM_B,      "Color1 PWM B",             ATTRIBUTE_TYPE_SINT32,  4 },
+    {  ATTR_COLOR0_PWM_PERIOD, "Color1 PWM Period",        ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR0_PWM_TARGET, "Color1 PWM Target",        ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR0_R_VALUE,    "Color1 R",                 ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR0_G_VALUE,    "Color1 G",                 ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR0_B_VALUE,    "Color1 B",                 ATTRIBUTE_TYPE_SINT16,  2 },
 /* second color sensor (VEML6040) and LED set */ 
-    {  ATTR_COLOR1_PRESENT,    "Color1 Present",           ATTRIBUTE_TYPE_BOOLEAN, 1 },
-    {  ATTR_COLOR1_ENABLE,     "Color1 Enable",            ATTRIBUTE_TYPE_BOOLEAN, 1 },
-    {  ATTR_COLOR1_INTERVAL,   "Color1 Interval",          ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR1_TRIGMODE,   "Color1 Trigger Mode",      ATTRIBUTE_TYPE_SINT8,   1 },
-    {  ATTR_COLOR0_ITIME,      "Color1 Integration Time",  ATTRIBUTE_TYPE_SINT8,   1 },
-    {  ATTR_COLOR0_CALIBRATE,  "Color1 Calibrate",         ATTRIBUTE_TYPE_BOOLEAN, 1 },
-    {  ATTR_COLOR1_PWM_R,      "Color1 PWM R",             ATTRIBUTE_TYPE_SINT32,  4 },
-    {  ATTR_COLOR1_PWM_G,      "Color1 PWM G",             ATTRIBUTE_TYPE_SINT32,  4 },
-    {  ATTR_COLOR1_PWM_B,      "Color1 PWM B",             ATTRIBUTE_TYPE_SINT32,  4 },
-    {  ATTR_COLOR1_PWM_PERIOD, "Color1 PWM Period",        ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR1_PWM_TARGET, "Color1 PWM Target",        ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR1_R_VALUE,    "Color1 R",                 ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR1_G_VALUE,    "Color1 G",                 ATTRIBUTE_TYPE_SINT16,  2 },
-    {  ATTR_COLOR1_B_VALUE,    "Color1 B",                 ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR1_PRESENT,    "Color2 Present",           ATTRIBUTE_TYPE_BOOLEAN, 1 },
+    {  ATTR_COLOR1_ENABLE,     "Color2 Enable",            ATTRIBUTE_TYPE_BOOLEAN, 1 },
+    {  ATTR_COLOR1_INTERVAL,   "Color2 Interval",          ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR1_TRIGMODE,   "Color2 Trigger Mode",      ATTRIBUTE_TYPE_SINT8,   1 },
+    {  ATTR_COLOR0_ITIME,      "Color2 Integration Time",  ATTRIBUTE_TYPE_SINT8,   1 },
+    {  ATTR_COLOR0_CALIBRATE,  "Color2 Calibrate",         ATTRIBUTE_TYPE_BOOLEAN, 1 },
+    {  ATTR_COLOR1_PWM_R,      "Color2 PWM R",             ATTRIBUTE_TYPE_SINT32,  4 },
+    {  ATTR_COLOR1_PWM_G,      "Color2 PWM G",             ATTRIBUTE_TYPE_SINT32,  4 },
+    {  ATTR_COLOR1_PWM_B,      "Color2 PWM B",             ATTRIBUTE_TYPE_SINT32,  4 },
+    {  ATTR_COLOR1_PWM_PERIOD, "Color2 PWM Period",        ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR1_PWM_TARGET, "Color2 PWM Target",        ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR1_R_VALUE,    "Color2 R",                 ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR1_G_VALUE,    "Color2 G",                 ATTRIBUTE_TYPE_SINT16,  2 },
+    {  ATTR_COLOR1_B_VALUE,    "Color2 B",                 ATTRIBUTE_TYPE_SINT16,  2 },
 /* first temperature sensor (LM75B) */    
     {  ATTR_TEMP0_PRESENT,    "Temp0 Present",             ATTRIBUTE_TYPE_BOOLEAN, 1 },
     {  ATTR_TEMP0_ENABLE,     "Temp0 Enable",              ATTRIBUTE_TYPE_BOOLEAN, 1 },
@@ -243,22 +243,26 @@
 
     }
     ts2time(timestamp, &current_time) ; /* 12 us */
-    print_time(&current_time) ;
-    printf(" %5d ASR requested [%d] : ", attributeId, requestId) ;
-    af_print_values(requestId, attributeId, valueLen, value) ;
+    if (verbos) {
+        print_time(&current_time) ;
+        printf(" %5d ASR requested [%d] : ", attributeId, requestId) ;
+        af_print_values(requestId, attributeId, valueLen, value) ;
+    }
+
     switch(attributeId) {
     case ATTR_LINKED_TIMESTAMP: /* timestamp */  
         set_time(valueLen, value) ; /* 68 us */
         afero->setAttributeComplete(requestId, attributeId, valueLen, value) ;
-        printf("timestampe = %d\n", timestamp) ;
-//        print_date(&current_time) ;
-        print_time(&current_time) ;
+        printf("timestampe = ") ;
+        print_date_wd(&current_time) ;
+//        print_time(&current_time) ;
+        printf("\n") ;
         break ;
     case ATTR_SOFTWARE_RESET: /* software reset requested! */
         if (value[0]) {
             printf("Software Reset Requested!\n") ;
             if (display != 0) {
-                display->clearDisplay() ;
+                display->cls() ;
                 display->locate(0,0) ;
                 display->putStr("System Rebooting!") ;
             }
@@ -504,24 +508,25 @@
     const uint8_t   *value
 ) 
 {
-Timer timer ;
-int t0, t1 ;
     uint32_t timestamp = edge_time ;
     if ((pending != 0)&&(pending->request->requestId == requestId)) {
         pending->replied_time = timestamp ;
     }   
     ts2time(timestamp, &current_time) ; /* 12us */
-    print_time(&current_time) ;
-    printf(" %5d ASR reported [%d]: ", attributeId, requestId) ;
-    if (attributeId == ATTR_LINKED_TIMESTAMP) { /* timestamp! */
+    if (verbos) {
+        print_time(&current_time) ;
+        printf(" %5d ASR reported [%d]: ", attributeId, requestId) ;
+        af_print_values(requestId, attributeId, valueLen, value) ;
+    }
+
+    switch(attributeId) {
+    case ATTR_LINKED_TIMESTAMP:
         set_time(valueLen, value) ; /* 68 us */
-        printf("timestampe = %d\n", timestamp) ;
-        print_date(&current_time) ;
+        printf("timestampe = ") ;
+        print_date_wd(&current_time) ;
 //        print_time(&current_time) ;
         printf("\n") ;
-    }
-    af_print_values(requestId, attributeId, valueLen, value) ;
-    switch(attributeId) {
+        break ;         
     case ATTR_REBOOT_REASON:
         printf("Reboot Reason: ") ;
         switch(value[0]) {
@@ -529,6 +534,7 @@
         case 2: printf("Watchdog reset\n") ;     break ;
         case 4: printf("Software reset\n") ;     break ;
         case 8: printf("CPU Lock up\n") ;        break ;
+        default: printf("Unknown\n") ;           break ;
         }
         break ; 
     case ATTR_MCU_INTERFACE:
@@ -555,7 +561,7 @@
             gLinkedState = true ; 
             printf("Updating\n") ;
             if (display) {
-                display->clearDisplay() ;
+                display->cls() ;
                 display->putStr("FW Updating...") ;
             }
             break ;
@@ -563,7 +569,7 @@
             gLinkedState = false ;
             printf("Update ready - rebooting\n") ;
             if (display) {
-                display->clearDisplay() ;
+                display->cls() ;
                 display->putStr("Rebooting...") ;
             }
             while(afero->setAttribute32(AF_SYSTEM_COMMAND, MODULE_COMMAND_REBOOT) != afSUCCESS) {