     // Populate the pin's type    
     if( g_aPins[i].is_analog )
     {
-      aJson.addItemToObject(apoPin[i],"is_analog", aJson.createTrue() );
+      aJson.addItemToObject(apoPin[i],"is_analog", aJson.createItem("true") );
     }
     else
     {
-      aJson.addItemToObject(apoPin[i],"is_analog", aJson.createFalse() );
+      aJson.addItemToObject(apoPin[i],"is_analog", aJson.createItem("false") );
     }
 
     // Populate the pin's direction
     if( g_aPins[i].is_input )
     {
-      aJson.addItemToObject(apoPin[i],"is_input", aJson.createTrue() );
+      aJson.addItemToObject(apoPin[i],"is_input", aJson.createItem("true") );
     }
     else
     {
-      aJson.addItemToObject(apoPin[i],"is_input", aJson.createFalse() );
+      aJson.addItemToObject(apoPin[i],"is_input", aJson.createItem("false") );
     }
 
     // Populate pin's value
-    aJson.addItemToObject(apoPin[i],"value", aJson.createItem( g_aPins[i].value ) );
+    char buff[20];
+    snprintf(buff, sizeof(buff),"%f", g_aPins[i].value);
+    aJson.addItemToObject(apoPin[i],"value", aJson.createItem( buff ) );
 
     // TO DO - Add pin connections array
-    aJson.addItemToObject(apoPin[i],"connections", aJson.createIntArray(iaPinConnects,0) );
+   // aJson.addItemToObject(apoPin[i],"connections", aJson.createIntArray(iaPinConnects,0) );
     /*
      int analogValues[6];
      for (int i = 0; i < 6; i++) {

void processMessage(char *_acMsg)
{

  Serial.print("Incoming message: ");
  Serial.println(_acMsg);  

  aJsonObject *poMsg = aJson.parse(_acMsg);


       */

      char sPinState[128];
      //       aJsonObject *poPinVals = aJson.getObjectItem(_pJsonPins, pinstr);

      aJsonObject *poLabel = aJson.getObjectItem(poPinVals, "label");
