     UInt i;
     Memory_Stats memStat;
     Hwi_StackInfo hwiStackStat;
+    Load_Stat loadStat;
     Task_Handle tsk;
-        
+    float idleLoad;
+    uint32_t idleLoadInt, idleLoadFrac;
+
+    /* collect current stats */
+    Load_update();   
+
+    /* use time NOT spent in idle task for Total CPU Load */ 
+    Load_getTaskLoad(Task_getIdleTask(), &loadStat);
+    idleLoad = 100.0 - 100.0*(float)loadStat.threadTime/(float)loadStat.totalTime;
+    idleLoadInt = idleLoad;
+    idleLoadFrac = 10.0*idleLoad - 10.0*idleLoadInt;
+ 
     Serial.write("Total CPU Load: ");
-    Serial.println(Load_getCPULoad());
+    Serial.print(idleLoadInt);
+    Serial.print(".");
+    Serial.println(idleLoadFrac);
     Serial.println("");
     
     /* collect stats on all statically Created tasks */

        }
    }

    System_snprintf(buf, sizeof(buf),
          " task: %s/0x%x, pri: %d, stack usage: %d/%d, mode: %s load: %f",
          name, task, taskStat.priority, taskStat.used, taskStat.stackSize, getModeStr(taskStat.mode),
          100.0*(float)loadStat.threadTime/(float)loadStat.totalTime);
    Serial.println(buf);
}


    Load_Stat loadStat;
    String name;
    static char buf[100];
    uint32_t loadInt, loadFrac;

    Task_stat(task, &taskStat);
    Load_getTaskLoad(task, &loadStat);
